记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
ad0f6cfb
Commit
ad0f6cfb
authored
Jul 21, 2021
by
jiangxiulong
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
63a70c82
045817da
Changes
19
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
531 additions
and
176 deletions
+531
-176
AliRefundCallBackBodyDto.java
...iquidnet/service/dragon/dto/AliRefundCallBackBodyDto.java
+3
-1
DragonPayBaseReqDto.java
...com/liquidnet/service/dragon/dto/DragonPayBaseReqDto.java
+3
-1
DragonPayBaseRespDto.java
...om/liquidnet/service/dragon/dto/DragonPayBaseRespDto.java
+3
-1
DragonPayNotifyReqDto.java
...m/liquidnet/service/dragon/dto/DragonPayNotifyReqDto.java
+4
-1
DragonPayOrderQueryRespDto.java
...uidnet/service/dragon/dto/DragonPayOrderQueryRespDto.java
+3
-1
DragonRefundAppDto.java
.../com/liquidnet/service/dragon/dto/DragonRefundAppDto.java
+1
-0
DragonRefundChannelDto.java
.../liquidnet/service/dragon/dto/DragonRefundChannelDto.java
+1
-0
NotifyUrlDto.java
...n/java/com/liquidnet/service/dragon/dto/NotifyUrlDto.java
+1
-0
PayNotifyDto.java
...n/java/com/liquidnet/service/dragon/dto/PayNotifyDto.java
+3
-1
RefundContentDto.java
...va/com/liquidnet/service/dragon/dto/RefundContentDto.java
+1
-0
RestTemplateConfig.java
...com/liquidnet/commons/lang/config/RestTemplateConfig.java
+93
-0
HttpOrderUtil.java
...n/java/com/liquidnet/commons/lang/util/HttpOrderUtil.java
+187
-0
HttpUtil.java
...c/main/java/com/liquidnet/commons/lang/util/HttpUtil.java
+159
-159
AlipayBiz.java
...iquidnet/service/dragon/channel/alipay/biz/AlipayBiz.java
+49
-3
AbstractWepayStrategy.java
...on/channel/wepay/strategy/impl/AbstractWepayStrategy.java
+12
-2
WepayStrategyAppletImpl.java
.../channel/wepay/strategy/impl/WepayStrategyAppletImpl.java
+0
-1
WepayStrategyJsImpl.java
...agon/channel/wepay/strategy/impl/WepayStrategyJsImpl.java
+0
-1
KylinOrderTicketsController.java
...service/order/controller/KylinOrderTicketsController.java
+3
-0
KylinOrderTicketsServiceImpl.java
...vice/order/service/impl/KylinOrderTicketsServiceImpl.java
+5
-4
No files found.
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/AliRefundCallBackBodyDto.java
View file @
ad0f6cfb
...
@@ -3,8 +3,10 @@ package com.liquidnet.service.dragon.dto;
...
@@ -3,8 +3,10 @@ package com.liquidnet.service.dragon.dto;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
@Data
public
class
AliRefundCallBackBodyDto
{
public
class
AliRefundCallBackBodyDto
implements
Serializable
{
@JsonProperty
(
"out_trade_no"
)
@JsonProperty
(
"out_trade_no"
)
private
String
outTradeNo
;
private
String
outTradeNo
;
@JsonProperty
(
"trade_no"
)
@JsonProperty
(
"trade_no"
)
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/DragonPayBaseReqDto.java
View file @
ad0f6cfb
...
@@ -3,6 +3,7 @@ package com.liquidnet.service.dragon.dto;
...
@@ -3,6 +3,7 @@ package com.liquidnet.service.dragon.dto;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
/**
/**
...
@@ -15,7 +16,8 @@ import java.math.BigDecimal;
...
@@ -15,7 +16,8 @@ import java.math.BigDecimal;
* @date 2021/7/9 10:56
* @date 2021/7/9 10:56
*/
*/
@Data
@Data
public
class
DragonPayBaseReqDto
{
public
class
DragonPayBaseReqDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
7273522103593077618L
;
private
String
payType
;
private
String
payType
;
private
String
deviceFrom
;
private
String
deviceFrom
;
private
String
openId
;
private
String
openId
;
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/DragonPayBaseRespDto.java
View file @
ad0f6cfb
...
@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonInclude;
...
@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
/**
/**
...
@@ -17,7 +18,8 @@ import java.math.BigDecimal;
...
@@ -17,7 +18,8 @@ import java.math.BigDecimal;
*/
*/
@Data
@Data
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
DragonPayBaseRespDto
{
public
class
DragonPayBaseRespDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
7785149250417660932L
;
private
String
code
;
private
String
code
;
private
String
orderCode
;
private
String
orderCode
;
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/DragonPayNotifyReqDto.java
View file @
ad0f6cfb
...
@@ -2,6 +2,8 @@ package com.liquidnet.service.dragon.dto;
...
@@ -2,6 +2,8 @@ package com.liquidnet.service.dragon.dto;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @version V1.0
...
@@ -12,7 +14,8 @@ import lombok.Data;
...
@@ -12,7 +14,8 @@ import lombok.Data;
* @date 2021/7/13 12:26
* @date 2021/7/13 12:26
*/
*/
@Data
@Data
public
class
DragonPayNotifyReqDto
{
public
class
DragonPayNotifyReqDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
4137919991028834729L
;
//notify_id
//notify_id
private
String
notify_type
;
private
String
notify_type
;
//notify_id
//notify_id
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/DragonPayOrderQueryRespDto.java
View file @
ad0f6cfb
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.dragon.dto;
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.dragon.dto;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
/**
/**
...
@@ -14,7 +15,8 @@ import java.math.BigDecimal;
...
@@ -14,7 +15,8 @@ import java.math.BigDecimal;
* @date 2021/7/13 15:39
* @date 2021/7/13 15:39
*/
*/
@Data
@Data
public
class
DragonPayOrderQueryRespDto
{
public
class
DragonPayOrderQueryRespDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
532012127264726720L
;
private
Integer
status
;
private
Integer
status
;
private
String
type
;
private
String
type
;
private
String
code
;
private
String
code
;
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/DragonRefundAppDto.java
View file @
ad0f6cfb
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
@Data
@Data
public
class
DragonRefundAppDto
implements
Serializable
{
public
class
DragonRefundAppDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
6492371889455728205L
;
private
String
orderCode
;
private
String
orderCode
;
private
String
code
;
private
String
code
;
private
String
orderRefundCode
;
private
String
orderRefundCode
;
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/DragonRefundChannelDto.java
View file @
ad0f6cfb
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
@Data
@Data
public
class
DragonRefundChannelDto
implements
Serializable
{
public
class
DragonRefundChannelDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
6972323906594788282L
;
private
String
result
;
private
String
result
;
private
String
message
;
private
String
message
;
private
RefundContentDto
content
;
private
RefundContentDto
content
;
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/NotifyUrlDto.java
View file @
ad0f6cfb
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
@Data
@Data
public
class
NotifyUrlDto
implements
Serializable
{
public
class
NotifyUrlDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3257132127191620598L
;
private
Integer
status
;
private
Integer
status
;
// private String orderCode;
// private String orderCode;
// private String code;
// private String code;
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/PayNotifyDto.java
View file @
ad0f6cfb
...
@@ -2,10 +2,12 @@ package com.liquidnet.service.dragon.dto;
...
@@ -2,10 +2,12 @@ package com.liquidnet.service.dragon.dto;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
@Data
@Data
public
class
PayNotifyDto
{
public
class
PayNotifyDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8245675938937804354L
;
private
Integer
status
;
private
Integer
status
;
private
String
type
;
private
String
type
;
private
String
code
;
private
String
code
;
...
...
liquidnet-bus-api/liquidnet-service-dragon-api/src/main/java/com/liquidnet/service/dragon/dto/RefundContentDto.java
View file @
ad0f6cfb
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
...
@@ -6,6 +6,7 @@ import java.io.Serializable;
@Data
@Data
public
class
RefundContentDto
implements
Serializable
{
public
class
RefundContentDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
5272393180371552646L
;
private
String
request
;
private
String
request
;
private
String
response
;
private
String
response
;
}
}
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/config/RestTemplateConfig.java
0 → 100644
View file @
ad0f6cfb
package
com
.
liquidnet
.
commons
.
lang
.
config
;
import
org.apache.http.Header
;
import
org.apache.http.client.HttpClient
;
import
org.apache.http.client.config.RequestConfig
;
import
org.apache.http.impl.client.DefaultConnectionKeepAliveStrategy
;
import
org.apache.http.impl.client.DefaultHttpRequestRetryHandler
;
import
org.apache.http.impl.client.HttpClientBuilder
;
import
org.apache.http.impl.conn.PoolingHttpClientConnectionManager
;
import
org.apache.http.message.BasicHeader
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.http.client.ClientHttpRequestFactory
;
import
org.springframework.http.client.HttpComponentsClientHttpRequestFactory
;
import
org.springframework.http.converter.HttpMessageConverter
;
import
org.springframework.http.converter.StringHttpMessageConverter
;
import
org.springframework.web.client.RestTemplate
;
import
java.nio.charset.StandardCharsets
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.concurrent.TimeUnit
;
@Configuration
public
class
RestTemplateConfig
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
RestTemplateConfig
.
class
);
@Bean
public
RestTemplate
restTemplate
()
{
// 添加内容转换器,使用默认的内容转换器
RestTemplate
restTemplate
=
new
RestTemplate
(
httpRequestFactory
());
// 设置编码格式为UTF-8
List
<
HttpMessageConverter
<?>>
converterList
=
restTemplate
.
getMessageConverters
();
HttpMessageConverter
<?>
converterTarget
=
null
;
for
(
HttpMessageConverter
<?>
item
:
converterList
)
{
if
(
item
.
getClass
()
==
StringHttpMessageConverter
.
class
)
{
converterTarget
=
item
;
break
;
}
}
if
(
converterTarget
!=
null
)
{
converterList
.
remove
(
converterTarget
);
}
HttpMessageConverter
<?>
converter
=
new
StringHttpMessageConverter
(
StandardCharsets
.
UTF_8
);
converterList
.
add
(
1
,
converter
);
return
restTemplate
;
}
@Bean
public
ClientHttpRequestFactory
httpRequestFactory
()
{
return
new
HttpComponentsClientHttpRequestFactory
(
httpClient
());
}
@Bean
public
HttpClient
httpClient
()
{
// 长连接保持30秒
PoolingHttpClientConnectionManager
connectionManager
=
new
PoolingHttpClientConnectionManager
(
30
,
TimeUnit
.
SECONDS
);
//设置整个连接池最大连接数 根据自己的场景决定
connectionManager
.
setMaxTotal
(
500
);
//同路由的并发数,路由是对maxTotal的细分
connectionManager
.
setDefaultMaxPerRoute
(
500
);
//requestConfig
RequestConfig
requestConfig
=
RequestConfig
.
custom
()
//服务器返回数据(response)的时间,超过该时间抛出read timeout
.
setSocketTimeout
(
10000
)
//连接上服务器(握手成功)的时间,超出该时间抛出connect timeout
.
setConnectTimeout
(
5000
)
//从连接池中获取连接的超时时间,超过该时间未拿到可用连接,会抛出org.apache.http.conn.ConnectionPoolTimeoutException: Timeout waiting for connection from pool
.
setConnectionRequestTimeout
(
500
)
.
build
();
//headers
List
<
Header
>
headers
=
new
ArrayList
<>();
headers
.
add
(
new
BasicHeader
(
"User-Agent"
,
"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.16 Safari/537.36"
));
headers
.
add
(
new
BasicHeader
(
"Accept-Encoding"
,
"gzip,deflate"
));
headers
.
add
(
new
BasicHeader
(
"Accept-Language"
,
"zh-CN"
));
headers
.
add
(
new
BasicHeader
(
"Connection"
,
"Keep-Alive"
));
headers
.
add
(
new
BasicHeader
(
"Content-type"
,
"application/json;charset=UTF-8"
));
return
HttpClientBuilder
.
create
()
.
setDefaultRequestConfig
(
requestConfig
)
.
setConnectionManager
(
connectionManager
)
.
setDefaultHeaders
(
headers
)
// 保持长连接配置,需要在头添加Keep-Alive
.
setKeepAliveStrategy
(
new
DefaultConnectionKeepAliveStrategy
())
//重试次数,默认是3次,没有开启
.
setRetryHandler
(
new
DefaultHttpRequestRetryHandler
(
2
,
true
))
.
build
();
}
}
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/HttpOrderUtil.java
0 → 100644
View file @
ad0f6cfb
package
com
.
liquidnet
.
commons
.
lang
.
util
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.*
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.LinkedMultiValueMap
;
import
org.springframework.util.MultiValueMap
;
import
org.springframework.web.client.RestTemplate
;
import
java.io.UnsupportedEncodingException
;
import
java.net.URLDecoder
;
import
java.util.List
;
import
java.util.Map
;
@Component
public
class
HttpOrderUtil
{
@Autowired
private
RestTemplate
restTemplate
;
/**
* get请求
*
* @param url
* @param params 请求参数
* @return
*/
public
String
get
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
return
get
(
url
,
params
,
null
);
}
/**
* get请求
*
* @param url
* @param params 请求参数
* @param headers 请求头
* @return
*/
public
String
get
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
return
request
(
url
,
params
,
headers
,
HttpMethod
.
GET
);
}
/**
* post请求
*
* @param url
* @param params 请求参数
* @return
*/
public
String
post
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
return
post
(
url
,
params
,
null
);
}
/**
* post请求
*
* @param url
* @param params 请求参数
* @param headers 请求头
* @return
*/
public
String
post
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
return
request
(
url
,
params
,
headers
,
HttpMethod
.
POST
);
}
/**
* put请求
*
* @param url
* @param params 请求参数
* @return
*/
public
String
put
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
return
put
(
url
,
params
,
null
);
}
/**
* put请求
*
* @param url
* @param params 请求参数
* @param headers 请求头
* @return
*/
public
String
put
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
return
request
(
url
,
params
,
headers
,
HttpMethod
.
PUT
);
}
/**
* delete请求
*
* @param url
* @param params 请求参数
* @return
*/
public
String
delete
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
return
delete
(
url
,
params
,
null
);
}
/**
* delete请求
*
* @param url
* @param params 请求参数
* @param headers 请求头
* @return
*/
public
String
delete
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
return
request
(
url
,
params
,
headers
,
HttpMethod
.
DELETE
);
}
/**
* 表单请求
*
* @param url
* @param params 请求参数
* @param headers 请求头
* @param method 请求方式
* @return
*/
public
String
request
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
,
HttpMethod
method
)
{
if
(
params
==
null
)
{
params
=
new
LinkedMultiValueMap
<>();
}
return
request
(
url
,
params
,
headers
,
method
,
MediaType
.
APPLICATION_FORM_URLENCODED
);
}
/**
* http请求
*
* @param url
* @param params 请求参数
* @param headers 请求头
* @param method 请求方式
* @param mediaType 参数类型
* @return
*/
public
String
request
(
String
url
,
Object
params
,
MultiValueMap
<
String
,
String
>
headers
,
HttpMethod
method
,
MediaType
mediaType
)
{
if
(
url
==
null
||
url
.
trim
().
isEmpty
())
{
return
null
;
}
// header
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
if
(
headers
!=
null
)
{
httpHeaders
.
addAll
(
headers
);
}
HttpEntity
<
Object
>
httpEntity
;
if
(
headers
!=
null
)
{
// header
httpHeaders
=
new
HttpHeaders
();
httpHeaders
.
addAll
(
headers
);
httpHeaders
.
setContentType
(
mediaType
);
httpEntity
=
new
HttpEntity
(
params
,
httpHeaders
);
}
else
{
httpEntity
=
new
HttpEntity
(
params
,
null
);
}
// 提交方式:表单、json
ResponseEntity
<
String
>
response
=
restTemplate
.
exchange
(
url
,
method
,
httpEntity
,
String
.
class
);
return
response
.
getBody
();
}
private
final
String
PHP_API_KEY
=
"R7tXY9smPQPG9Ku5yI0u6sfnlckmk04V"
;
public
String
postToPhpApi
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
params
.
add
(
"sign"
,
processForPhpApi
(
params
).
concat
(
"&key="
).
concat
(
PHP_API_KEY
).
toUpperCase
());
return
post
(
url
,
params
,
null
);
}
private
String
processForPhpApi
(
MultiValueMap
<
String
,
String
>
map
)
{
StringBuilder
sb
=
new
StringBuilder
();
for
(
Map
.
Entry
<
String
,
List
<
String
>>
entry
:
map
.
entrySet
())
{
sb
.
append
(
entry
.
getKey
()).
append
(
"="
).
append
(
entry
.
getValue
().
get
(
0
)).
append
(
"&"
);
}
String
targetStr
=
sb
.
substring
(
0
,
sb
.
length
()
-
1
);
try
{
targetStr
=
URLDecoder
.
decode
(
targetStr
,
"UTF-8"
);
}
catch
(
UnsupportedEncodingException
e
)
{
e
.
printStackTrace
();
}
targetStr
=
targetStr
.
replace
(
"%3D"
,
"="
).
replace
(
"%26"
,
"&"
);
return
targetStr
;
}
}
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/HttpUtil.java
View file @
ad0f6cfb
...
@@ -11,163 +11,163 @@ import java.util.List;
...
@@ -11,163 +11,163 @@ import java.util.List;
import
java.util.Map
;
import
java.util.Map
;
public
class
HttpUtil
{
public
class
HttpUtil
{
/**
* get请求
/**
*
* get请求
* @param url
*
* @param params 请求参数
* @param url
* @return
* @param params 请求参数
*/
* @return
public
static
String
get
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
*/
return
get
(
url
,
params
,
null
);
public
static
String
get
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
}
return
get
(
url
,
params
,
null
);
}
/**
* get请求
/**
*
* get请求
* @param url
*
* @param params 请求参数
* @param url
* @param headers 请求头
* @param params 请求参数
* @return
* @param headers 请求头
*/
* @return
public
static
String
get
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
*/
return
request
(
url
,
params
,
headers
,
HttpMethod
.
GET
);
public
static
String
get
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
}
return
request
(
url
,
params
,
headers
,
HttpMethod
.
GET
);
}
/**
* post请求
/**
*
* post请求
* @param url
*
* @param params 请求参数
* @param url
* @return
* @param params 请求参数
*/
* @return
public
static
String
post
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
*/
return
post
(
url
,
params
,
null
);
public
static
String
post
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
}
return
post
(
url
,
params
,
null
);
}
/**
* post请求
/**
*
* post请求
* @param url
*
* @param params 请求参数
* @param url
* @param headers 请求头
* @param params 请求参数
* @return
* @param headers 请求头
*/
* @return
public
static
String
post
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
*/
return
request
(
url
,
params
,
headers
,
HttpMethod
.
POST
);
public
static
String
post
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
}
return
request
(
url
,
params
,
headers
,
HttpMethod
.
POST
);
}
/**
* put请求
/**
*
* put请求
* @param url
*
* @param params 请求参数
* @param url
* @return
* @param params 请求参数
*/
* @return
public
static
String
put
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
*/
return
put
(
url
,
params
,
null
);
public
static
String
put
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
}
return
put
(
url
,
params
,
null
);
}
/**
* put请求
/**
*
* put请求
* @param url
*
* @param params 请求参数
* @param url
* @param headers 请求头
* @param params 请求参数
* @return
* @param headers 请求头
*/
* @return
public
static
String
put
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
*/
return
request
(
url
,
params
,
headers
,
HttpMethod
.
PUT
);
public
static
String
put
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
}
return
request
(
url
,
params
,
headers
,
HttpMethod
.
PUT
);
}
/**
* delete请求
/**
*
* delete请求
* @param url
*
* @param params 请求参数
* @param url
* @return
* @param params 请求参数
*/
* @return
public
static
String
delete
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
*/
return
delete
(
url
,
params
,
null
);
public
static
String
delete
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
}
return
delete
(
url
,
params
,
null
);
}
/**
* delete请求
/**
*
* delete请求
* @param url
*
* @param params 请求参数
* @param url
* @param headers 请求头
* @param params 请求参数
* @return
* @param headers 请求头
*/
* @return
public
static
String
delete
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
*/
return
request
(
url
,
params
,
headers
,
HttpMethod
.
DELETE
);
public
static
String
delete
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
)
{
}
return
request
(
url
,
params
,
headers
,
HttpMethod
.
DELETE
);
}
/**
* 表单请求
/**
*
* 表单请求
* @param url
*
* @param params 请求参数
* @param url
* @param headers 请求头
* @param params 请求参数
* @param method 请求方式
* @param headers 请求头
* @return
* @param method 请求方式
*/
* @return
public
static
String
request
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
,
HttpMethod
method
)
{
*/
if
(
params
==
null
)
{
public
static
String
request
(
String
url
,
MultiValueMap
<
String
,
String
>
params
,
MultiValueMap
<
String
,
String
>
headers
,
HttpMethod
method
)
{
params
=
new
LinkedMultiValueMap
<>();
if
(
params
==
null
)
{
}
params
=
new
LinkedMultiValueMap
<>();
return
request
(
url
,
params
,
headers
,
method
,
MediaType
.
APPLICATION_FORM_URLENCODED
);
}
}
return
request
(
url
,
params
,
headers
,
method
,
MediaType
.
APPLICATION_FORM_URLENCODED
);
}
/**
* http请求
/**
*
* http请求
* @param url
*
* @param params 请求参数
* @param url
* @param headers 请求头
* @param params 请求参数
* @param method 请求方式
* @param headers 请求头
* @param mediaType 参数类型
* @param method 请求方式
* @return
* @param mediaType 参数类型
*/
* @return
public
static
String
request
(
String
url
,
Object
params
,
MultiValueMap
<
String
,
String
>
headers
,
HttpMethod
method
,
MediaType
mediaType
)
{
*/
if
(
url
==
null
||
url
.
trim
().
isEmpty
()
)
{
public
static
String
request
(
String
url
,
Object
params
,
MultiValueMap
<
String
,
String
>
headers
,
HttpMethod
method
,
MediaType
mediaType
)
{
return
null
;
if
(
url
==
null
||
url
.
trim
().
isEmpty
())
{
}
return
null
;
RestTemplate
client
=
new
RestTemplate
();
}
// header
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
// header
if
(
headers
!=
null
)
{
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
httpHeaders
.
addAll
(
headers
);
if
(
headers
!=
null
)
{
}
httpHeaders
.
addAll
(
headers
);
// 提交方式:表单、json
}
httpHeaders
.
setContentType
(
mediaType
);
HttpEntity
<
Object
>
httpEntity
=
new
HttpEntity
(
params
,
httpHeaders
);
HttpEntity
<
Object
>
httpEntity
=
new
HttpEntity
(
params
,
httpHeaders
);
ResponseEntity
<
String
>
response
=
client
.
exchange
(
url
,
method
,
httpEntity
,
String
.
class
);
RestTemplate
restTemplate
=
new
RestTemplate
(
);
return
response
.
getBody
();
// 提交方式:表单、json
}
ResponseEntity
<
String
>
response
=
restTemplate
.
exchange
(
url
,
method
,
httpEntity
,
String
.
class
);
return
response
.
getBody
();
}
private
static
final
String
PHP_API_KEY
=
"R7tXY9smPQPG9Ku5yI0u6sfnlckmk04V"
;
private
static
final
String
PHP_API_KEY
=
"R7tXY9smPQPG9Ku5yI0u6sfnlckmk04V"
;
public
static
String
postToPhpApi
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
public
static
String
postToPhpApi
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
params
.
add
(
"sign"
,
processForPhpApi
(
params
).
concat
(
"&key="
).
concat
(
PHP_API_KEY
).
toUpperCase
());
params
.
add
(
"sign"
,
processForPhpApi
(
params
).
concat
(
"&key="
).
concat
(
PHP_API_KEY
).
toUpperCase
());
return
post
(
url
,
params
,
null
);
return
post
(
url
,
params
,
null
);
}
}
private
static
String
processForPhpApi
(
MultiValueMap
<
String
,
String
>
map
)
{
private
static
String
processForPhpApi
(
MultiValueMap
<
String
,
String
>
map
)
{
StringBuilder
sb
=
new
StringBuilder
();
StringBuilder
sb
=
new
StringBuilder
();
for
(
Map
.
Entry
<
String
,
List
<
String
>>
entry
:
map
.
entrySet
())
{
for
(
Map
.
Entry
<
String
,
List
<
String
>>
entry
:
map
.
entrySet
())
{
sb
.
append
(
entry
.
getKey
()).
append
(
"="
).
append
(
entry
.
getValue
().
get
(
0
)).
append
(
"&"
);
sb
.
append
(
entry
.
getKey
()).
append
(
"="
).
append
(
entry
.
getValue
().
get
(
0
)).
append
(
"&"
);
}
}
String
targetStr
=
sb
.
substring
(
0
,
sb
.
length
()
-
1
);
String
targetStr
=
sb
.
substring
(
0
,
sb
.
length
()
-
1
);
try
{
try
{
targetStr
=
URLDecoder
.
decode
(
targetStr
,
"UTF-8"
);
targetStr
=
URLDecoder
.
decode
(
targetStr
,
"UTF-8"
);
}
catch
(
UnsupportedEncodingException
e
)
{
}
catch
(
UnsupportedEncodingException
e
)
{
e
.
printStackTrace
();
e
.
printStackTrace
();
}
}
targetStr
=
targetStr
.
replace
(
"%3D"
,
"="
).
replace
(
"%26"
,
"&"
);
targetStr
=
targetStr
.
replace
(
"%3D"
,
"="
).
replace
(
"%26"
,
"&"
);
return
targetStr
;
return
targetStr
;
}
}
}
}
liquidnet-bus-service/liquidnet-service-dragon/liquidnet-service-dragon-impl/src/main/java/com/liquidnet/service/dragon/channel/alipay/biz/AlipayBiz.java
View file @
ad0f6cfb
...
@@ -9,6 +9,8 @@ import com.alipay.api.request.AlipayTradeWapPayRequest;
...
@@ -9,6 +9,8 @@ import com.alipay.api.request.AlipayTradeWapPayRequest;
import
com.alipay.api.response.AlipayTradeAppPayResponse
;
import
com.alipay.api.response.AlipayTradeAppPayResponse
;
import
com.alipay.api.response.AlipayTradeQueryResponse
;
import
com.alipay.api.response.AlipayTradeQueryResponse
;
import
com.alipay.api.response.AlipayTradeWapPayResponse
;
import
com.alipay.api.response.AlipayTradeWapPayResponse
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.service.dragon.channel.alipay.req.AlipayTradePayReq
;
import
com.liquidnet.service.dragon.channel.alipay.req.AlipayTradePayReq
;
import
com.liquidnet.service.dragon.channel.alipay.sign.MD5
;
import
com.liquidnet.service.dragon.channel.alipay.sign.MD5
;
...
@@ -50,6 +52,47 @@ public class AlipayBiz{
...
@@ -50,6 +52,47 @@ public class AlipayBiz{
paramMap
.
put
(
"timeout_express"
,
timeExpress
);
paramMap
.
put
(
"timeout_express"
,
timeExpress
);
AlipayTradeWapPayRequest
request
=
new
AlipayTradeWapPayRequest
();
request
.
setNotifyUrl
(
alipayTradePayReq
.
getNotifyUrl
());
// request.setTimestamp(DateUtil.now());
log
.
info
(
"bizContent :{}"
,
JSONObject
.
toJSONString
(
paramMap
));
request
.
setBizContent
(
JSONObject
.
toJSONString
(
paramMap
));
try
{
long
startTime
=
System
.
currentTimeMillis
();
AlipayTradeWapPayResponse
response
=
new
AlipayTradeWapPayResponse
();
response
.
setBody
(
"alipay_sdk=alipay-sdk-java-dynamicVersionNo&app_id=2019082866535131&biz_content=%7B%22body%22%3A%22pay+%E5%8E%8B%E6%B5%8B-%E6%B5%8B%E8%AF%95%E7%A5%A8-07%E6%9C%8801%E6%97%A5%7E08%E6%9C%8831%E6%97%A5%22%2C%22out_trade_no%22%3A%22PAY2021072022223316428316%22%2C%22product_code%22%3A%22QUICK_WAP_PAY%22%2C%22subject%22%3A%2207%E6%9C%8801%E6%97%A5%7E08%E6%9C%8831%E6%97%A5%E6%B5%8B%E8%AF%95%E7%A5%A8-pay+%E5%8E%8B%E6%B5%8B%22%2C%22timeout_express%22%3A%225m%22%2C%22total_amount%22%3A%220.01%22%7D&charset=utf-8&format=json&method=alipay.trade.wap.pay¬ify_url=https%3A%2F%2Fdragon.zhengzai.tv%2Fdragon%2Fnotify%2Falipay%2Fwap&sign=MDiFk1Ut6keiE7mKiNzMg2eY01%2BbjcQFfjqBamPyAEAnTsLTh2u6xIiz5mWFVE%2B71qK95oetdQ%2B%2FMXOhc8fniHuef3JDRFkqjeJ0HPIIofndHHYKZYPsTkAnq6Axr3zrhvE%2BpzlWNxJS2Ci4cFFAkPPnTnHfT6tjIVbFE3HSnaWYWnWLfXkH%2Bn7QnxWsQAylq7gkAn67sCIXGNkI%2BZbhVLQnXkXJ5b88q3l%2B4Xaf9G5APsGPje7NKQ%2BuxgL%2BcAE7%2BVatfXQfB4%2BJ%2FW1xsOaS2fS545PpaD%2FI5R75vqBliMi0ed8UjAD7LUoZ8X8ZuxZY9zoyZDyhC9ssyek5%2FRpjpw%3D%3D&sign_type=RSA2×tamp=2021-07-20+22%3A22%3A33&version=1.0"
);
response
.
setSubCode
(
"ACQ.TRADE_HAS_SUCCESS"
);
log
.
info
(
"alipay-alipayClient.sdkExecut->耗时:{}"
,(
System
.
currentTimeMillis
()
-
startTime
)+
"毫秒"
);
// {"body":"alipay_sdk=alipay-sdk-java-dynamicVersionNo&app_id=2019082866535131&biz_content=%7B%22body%22%3A%22pay+%E5%8E%8B%E6%B5%8B-%E6%B5%8B%E8%AF%95%E7%A5%A8-07%E6%9C%8801%E6%97%A5%7E08%E6%9C%8831%E6%97%A5%22%2C%22out_trade_no%22%3A%22PAY2021072022223316428316%22%2C%22product_code%22%3A%22QUICK_WAP_PAY%22%2C%22subject%22%3A%2207%E6%9C%8801%E6%97%A5%7E08%E6%9C%8831%E6%97%A5%E6%B5%8B%E8%AF%95%E7%A5%A8-pay+%E5%8E%8B%E6%B5%8B%22%2C%22timeout_express%22%3A%225m%22%2C%22total_amount%22%3A%220.01%22%7D&charset=utf-8&format=json&method=alipay.trade.wap.pay¬ify_url=https%3A%2F%2Fdragon.zhengzai.tv%2Fdragon%2Fnotify%2Falipay%2Fwap&sign=MDiFk1Ut6keiE7mKiNzMg2eY01%2BbjcQFfjqBamPyAEAnTsLTh2u6xIiz5mWFVE%2B71qK95oetdQ%2B%2FMXOhc8fniHuef3JDRFkqjeJ0HPIIofndHHYKZYPsTkAnq6Axr3zrhvE%2BpzlWNxJS2Ci4cFFAkPPnTnHfT6tjIVbFE3HSnaWYWnWLfXkH%2Bn7QnxWsQAylq7gkAn67sCIXGNkI%2BZbhVLQnXkXJ5b88q3l%2B4Xaf9G5APsGPje7NKQ%2BuxgL%2BcAE7%2BVatfXQfB4%2BJ%2FW1xsOaS2fS545PpaD%2FI5R75vqBliMi0ed8UjAD7LUoZ8X8ZuxZY9zoyZDyhC9ssyek5%2FRpjpw%3D%3D&sign_type=RSA2×tamp=2021-07-20+22%3A22%3A33&version=1.0","success":true}
// JSONObject responseJSON = JSONObject.parseObject(JSONObject.toJSONString(response));
Map
<
String
,
Object
>
responseJSON
=
JsonUtils
.
OM
().
convertValue
(
response
,
Map
.
class
);
log
.
info
(
"AlipayUtil-->tradeWapPay-->支付宝返回结果:{}"
,
JsonUtils
.
toJson
(
response
));
return
responseJSON
;
}
catch
(
Exception
e
)
{
log
.
error
(
"支付宝支付异常:{}"
,
e
);
JSONObject
resultJSON
=
new
JSONObject
();
resultJSON
.
put
(
"outTradeNo"
,
alipayTradePayReq
.
getOutTradeNo
());
resultJSON
.
put
(
"totalAmount"
,
alipayTradePayReq
.
getTotalAmount
().
toString
());
resultJSON
.
put
(
"errorCode"
,
"9999"
);
return
resultJSON
;
}
}
public
static
Map
<
String
,
Object
>
tradeWapPay_backup
(
AlipayTradePayReq
alipayTradePayReq
)
{
log
.
info
(
"AlipayBiz.tradeWapPay-->> req : {}"
,
alipayTradePayReq
.
toString
());
String
timeExpress
=
"5m"
;
// 支付超时,线下扫码交易定义为5分钟
AlipayClient
alipayClient
=
PayAlipayUtils
.
getInstance
().
getHttpClient
();
SortedMap
<
String
,
Object
>
paramMap
=
new
TreeMap
<>();
paramMap
.
put
(
"product_code"
,
alipayTradePayReq
.
getProductCode
());
paramMap
.
put
(
"total_amount"
,
alipayTradePayReq
.
getTotalAmount
().
toString
());
paramMap
.
put
(
"subject"
,
alipayTradePayReq
.
getSubject
());
paramMap
.
put
(
"body"
,
alipayTradePayReq
.
getBody
());
paramMap
.
put
(
"out_trade_no"
,
alipayTradePayReq
.
getOutTradeNo
());
paramMap
.
put
(
"timeout_express"
,
timeExpress
);
AlipayTradeWapPayRequest
request
=
new
AlipayTradeWapPayRequest
();
AlipayTradeWapPayRequest
request
=
new
AlipayTradeWapPayRequest
();
request
.
setNotifyUrl
(
alipayTradePayReq
.
getNotifyUrl
());
request
.
setNotifyUrl
(
alipayTradePayReq
.
getNotifyUrl
());
// request.setTimestamp(DateUtil.now());
// request.setTimestamp(DateUtil.now());
...
@@ -60,8 +103,9 @@ public class AlipayBiz{
...
@@ -60,8 +103,9 @@ public class AlipayBiz{
AlipayTradeWapPayResponse
response
=
alipayClient
.
sdkExecute
(
request
);
AlipayTradeWapPayResponse
response
=
alipayClient
.
sdkExecute
(
request
);
log
.
info
(
"alipay-alipayClient.sdkExecut->耗时:{}"
,(
System
.
currentTimeMillis
()
-
startTime
)+
"毫秒"
);
log
.
info
(
"alipay-alipayClient.sdkExecut->耗时:{}"
,(
System
.
currentTimeMillis
()
-
startTime
)+
"毫秒"
);
JSONObject
responseJSON
=
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
response
));
// JSONObject responseJSON = JSONObject.parseObject(JSONObject.toJSONString(response));
log
.
info
(
"AlipayUtil-->tradeWapPay-->支付宝返回结果:{}"
,
response
.
toString
());
Map
<
String
,
Object
>
responseJSON
=
JsonUtils
.
OM
().
convertValue
(
response
,
Map
.
class
);
log
.
info
(
"AlipayUtil-->tradeWapPay-->支付宝返回结果:{}"
,
JsonUtils
.
toJson
(
response
));
return
responseJSON
;
return
responseJSON
;
}
catch
(
AlipayApiException
e
)
{
}
catch
(
AlipayApiException
e
)
{
log
.
error
(
"支付宝支付异常:{}"
,
e
);
log
.
error
(
"支付宝支付异常:{}"
,
e
);
...
@@ -100,7 +144,9 @@ public class AlipayBiz{
...
@@ -100,7 +144,9 @@ public class AlipayBiz{
request
.
setBizContent
(
JSONObject
.
toJSONString
(
paramMap
));
request
.
setBizContent
(
JSONObject
.
toJSONString
(
paramMap
));
try
{
try
{
AlipayTradeAppPayResponse
response
=
alipayClient
.
sdkExecute
(
request
);
AlipayTradeAppPayResponse
response
=
alipayClient
.
sdkExecute
(
request
);
JSONObject
responseJSON
=
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
response
));
// JSONObject responseJSON = JSONObject.parseObject(JSONObject.toJSONString(response));
Map
<
String
,
Object
>
responseJSON
=
JsonUtils
.
fromJson
(
JsonUtils
.
toJson
(
response
),
new
TypeReference
<
Map
<
String
,
Object
>>()
{
});
log
.
info
(
"AlipayUtil-->tradeAppPay-->支付宝返回结果:{}"
,
responseJSON
);
log
.
info
(
"AlipayUtil-->tradeAppPay-->支付宝返回结果:{}"
,
responseJSON
);
return
responseJSON
;
return
responseJSON
;
}
catch
(
AlipayApiException
e
)
{
}
catch
(
AlipayApiException
e
)
{
...
...
liquidnet-bus-service/liquidnet-service-dragon/liquidnet-service-dragon-impl/src/main/java/com/liquidnet/service/dragon/channel/wepay/strategy/impl/AbstractWepayStrategy.java
View file @
ad0f6cfb
...
@@ -71,6 +71,8 @@ public abstract class AbstractWepayStrategy implements IWepayStrategy {
...
@@ -71,6 +71,8 @@ public abstract class AbstractWepayStrategy implements IWepayStrategy {
//构造支付请求xml
//构造支付请求xml
String
data
=
PayWepayUtils
.
getInstance
().
getRequestXml
(
parameters
);
String
data
=
PayWepayUtils
.
getInstance
().
getRequestXml
(
parameters
);
log
.
info
(
"dragonPay:wepay:"
+
dragonPayBaseReqDto
.
getDeviceFrom
()+
" request jsondata: {} "
,
data
);
HttpPost
httpost
=
new
HttpPost
(
this
.
getRequestUrl
());
HttpPost
httpost
=
new
HttpPost
(
this
.
getRequestUrl
());
httpost
.
setEntity
(
new
StringEntity
(
data
,
"UTF-8"
));
httpost
.
setEntity
(
new
StringEntity
(
data
,
"UTF-8"
));
CloseableHttpResponse
response
=
PayWepayUtils
.
getInstance
().
getHttpClient
().
execute
(
httpost
);
CloseableHttpResponse
response
=
PayWepayUtils
.
getInstance
().
getHttpClient
().
execute
(
httpost
);
...
@@ -78,8 +80,15 @@ public abstract class AbstractWepayStrategy implements IWepayStrategy {
...
@@ -78,8 +80,15 @@ public abstract class AbstractWepayStrategy implements IWepayStrategy {
//接受到返回信息
//接受到返回信息
String
xmlStr
=
EntityUtils
.
toString
(
response
.
getEntity
(),
"UTF-8"
);
String
xmlStr
=
EntityUtils
.
toString
(
response
.
getEntity
(),
"UTF-8"
);
EntityUtils
.
consume
(
entity
);
EntityUtils
.
consume
(
entity
);
log
.
info
(
"dragonPay:wepay:"
+
dragonPayBaseReqDto
.
getDeviceFrom
()+
" response xmlStr: {} "
,
xmlStr
);
log
.
info
(
"dragonPay:wepay:"
+
dragonPayBaseReqDto
.
getDeviceFrom
()+
" response jsonStr: {} "
,
xmlStr
);
WepayPayRespDto
respWepayDto
=
XmlUtil
.
toBean
(
xmlStr
,
WepayPayRespDto
.
class
);
WepayPayRespDto
respWepayDto
=
null
;
try
{
respWepayDto
=
XmlUtil
.
toBean
(
xmlStr
,
WepayPayRespDto
.
class
);
}
catch
(
Exception
e
)
{
log
.
error
(
"dragonPay:wepay:"
+
dragonPayBaseReqDto
.
getDeviceFrom
()+
" response format error: {} "
,
e
);
throw
new
LiquidnetServiceException
(
DragonErrorCodeEnum
.
TRADE_PARAM_ERROR
.
getCode
(),
DragonErrorCodeEnum
.
TRADE_PARAM_ERROR
.
getMessage
());
}
if
(
WepayConstant
.
WeixinTradeStateEnum
.
SUCCESS
.
getCode
().
equalsIgnoreCase
(
respWepayDto
.
getReturnCode
())){
if
(
WepayConstant
.
WeixinTradeStateEnum
.
SUCCESS
.
getCode
().
equalsIgnoreCase
(
respWepayDto
.
getReturnCode
())){
if
(
WepayConstant
.
WeixinTradeStateEnum
.
SUCCESS
.
getCode
().
equalsIgnoreCase
(
respWepayDto
.
getResultCode
())){
if
(
WepayConstant
.
WeixinTradeStateEnum
.
SUCCESS
.
getCode
().
equalsIgnoreCase
(
respWepayDto
.
getResultCode
())){
//构造公共返回参数
//构造公共返回参数
...
@@ -141,6 +150,7 @@ public abstract class AbstractWepayStrategy implements IWepayStrategy {
...
@@ -141,6 +150,7 @@ public abstract class AbstractWepayStrategy implements IWepayStrategy {
String
timeExpire
=
DateUtil
.
format
(
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
parse
(
dragonPayBaseReqDto
.
getCreateDate
()).
plusMinutes
(
Long
.
parseLong
(
dragonPayBaseReqDto
.
getExpireTime
())),
DateUtil
.
Formatter
.
yyyyMMddHHmmssTrim
);
String
timeExpire
=
DateUtil
.
format
(
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
parse
(
dragonPayBaseReqDto
.
getCreateDate
()).
plusMinutes
(
Long
.
parseLong
(
dragonPayBaseReqDto
.
getExpireTime
())),
DateUtil
.
Formatter
.
yyyyMMddHHmmssTrim
);
parameters
.
put
(
"time_expire"
,
timeExpire
);
parameters
.
put
(
"time_expire"
,
timeExpire
);
parameters
.
put
(
"notify_url"
,
this
.
getNotifyUrl
());
parameters
.
put
(
"notify_url"
,
this
.
getNotifyUrl
());
parameters
.
put
(
"openid"
,
dragonPayBaseReqDto
.
getOpenId
());
//只有trade_type="JSAPI"时必须传
return
parameters
;
return
parameters
;
};
};
...
...
liquidnet-bus-service/liquidnet-service-dragon/liquidnet-service-dragon-impl/src/main/java/com/liquidnet/service/dragon/channel/wepay/strategy/impl/WepayStrategyAppletImpl.java
View file @
ad0f6cfb
...
@@ -31,7 +31,6 @@ public class WepayStrategyAppletImpl extends AbstractWepayStrategy{
...
@@ -31,7 +31,6 @@ public class WepayStrategyAppletImpl extends AbstractWepayStrategy{
@Override
@Override
SortedMap
<
String
,
Object
>
appendRequestParam
(
SortedMap
<
String
,
Object
>
requestMap
)
{
SortedMap
<
String
,
Object
>
appendRequestParam
(
SortedMap
<
String
,
Object
>
requestMap
)
{
requestMap
.
put
(
"trade_type"
,
"JSAPI"
);
requestMap
.
put
(
"trade_type"
,
"JSAPI"
);
requestMap
.
put
(
"openid"
,
requestMap
.
get
(
"openId"
));
requestMap
.
put
(
"appid"
,
PayWepayUtils
.
getInstance
().
getAPPLET_APP_ID
());
requestMap
.
put
(
"appid"
,
PayWepayUtils
.
getInstance
().
getAPPLET_APP_ID
());
return
requestMap
;
return
requestMap
;
}
}
...
...
liquidnet-bus-service/liquidnet-service-dragon/liquidnet-service-dragon-impl/src/main/java/com/liquidnet/service/dragon/channel/wepay/strategy/impl/WepayStrategyJsImpl.java
View file @
ad0f6cfb
...
@@ -31,7 +31,6 @@ public class WepayStrategyJsImpl extends AbstractWepayStrategy{
...
@@ -31,7 +31,6 @@ public class WepayStrategyJsImpl extends AbstractWepayStrategy{
@Override
@Override
SortedMap
<
String
,
Object
>
appendRequestParam
(
SortedMap
<
String
,
Object
>
requestMap
)
{
SortedMap
<
String
,
Object
>
appendRequestParam
(
SortedMap
<
String
,
Object
>
requestMap
)
{
requestMap
.
put
(
"trade_type"
,
"JSAPI"
);
requestMap
.
put
(
"trade_type"
,
"JSAPI"
);
requestMap
.
put
(
"openid"
,
requestMap
.
get
(
"openId"
));
requestMap
.
put
(
"appid"
,
PayWepayUtils
.
getInstance
().
getJS_APP_ID
());
requestMap
.
put
(
"appid"
,
PayWepayUtils
.
getInstance
().
getJS_APP_ID
());
return
requestMap
;
return
requestMap
;
}
}
...
...
liquidnet-bus-service/liquidnet-service-order/liquidnet-service-order-impl/src/main/java/com/liquidnet/service/order/controller/KylinOrderTicketsController.java
View file @
ad0f6cfb
package
com
.
liquidnet
.
service
.
order
.
controller
;
package
com
.
liquidnet
.
service
.
order
.
controller
;
import
com.liquidnet.commons.lang.util.HttpOrderUtil
;
import
com.liquidnet.commons.lang.util.HttpUtil
;
import
com.liquidnet.service.base.ErrorMapping
;
import
com.liquidnet.service.base.ErrorMapping
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.codec.annotation.DecryptAndVerify
;
import
com.liquidnet.service.base.codec.annotation.DecryptAndVerify
;
...
@@ -17,6 +19,7 @@ import io.swagger.annotations.ApiResponse;
...
@@ -17,6 +19,7 @@ import io.swagger.annotations.ApiResponse;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
sun.net.www.http.HttpClient
;
import
javax.validation.Valid
;
import
javax.validation.Valid
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.NotNull
;
...
...
liquidnet-bus-service/liquidnet-service-order/liquidnet-service-order-impl/src/main/java/com/liquidnet/service/order/service/impl/KylinOrderTicketsServiceImpl.java
View file @
ad0f6cfb
...
@@ -78,6 +78,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
...
@@ -78,6 +78,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
@Autowired
@Autowired
private
RedisUtil
redisUtil
;
private
RedisUtil
redisUtil
;
@Autowired
@Autowired
private
HttpOrderUtil
httpOrderUtil
;
@Autowired
private
OrderUtils
orderUtils
;
private
OrderUtils
orderUtils
;
@Autowired
@Autowired
private
RedisLockUtil
redisLockUtil
;
private
RedisLockUtil
redisLockUtil
;
...
@@ -311,6 +313,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
...
@@ -311,6 +313,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
return
resultData
;
return
resultData
;
}
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
log
.
error
(
"Kylin Order Pay Error = "
+
e
.
getMessage
());
if
(
isDownGeneral
)
{
if
(
isDownGeneral
)
{
currentTime
=
System
.
currentTimeMillis
();
currentTime
=
System
.
currentTimeMillis
();
dataUtils
.
changeSurplusGeneral
(
payOrderParam
.
getTicketId
(),
payOrderParam
.
getNumber
());
dataUtils
.
changeSurplusGeneral
(
payOrderParam
.
getTicketId
(),
payOrderParam
.
getNumber
());
...
@@ -326,8 +330,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
...
@@ -326,8 +330,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
}
}
}
}
}
}
e
.
printStackTrace
();
log
.
error
(
"Kylin Order Pay Error = "
+
e
.
getMessage
());
redisLockUtil
.
unlock
(
lock
);
redisLockUtil
.
unlock
(
lock
);
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20018"
));
//乱七八糟异常
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"20018"
));
//乱七八糟异常
}
}
...
@@ -552,12 +554,11 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
...
@@ -552,12 +554,11 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
}
}
currentTime
=
System
.
currentTimeMillis
();
currentTime
=
System
.
currentTimeMillis
();
String
returnData
=
Http
Util
.
post
(
payUrl
,
httpData
);
String
returnData
=
httpOrder
Util
.
post
(
payUrl
,
httpData
);
// log.debug("httpData = " + JSON.toJSONString(httpData));
// log.debug("httpData = " + JSON.toJSONString(httpData));
currentTime
=
System
.
currentTimeMillis
()
-
currentTime
;
currentTime
=
System
.
currentTimeMillis
()
-
currentTime
;
log
.
debug
(
"调用 PHP 支付 -> time:"
+
(
currentTime
)
+
"毫秒"
);
log
.
debug
(
"调用 PHP 支付 -> time:"
+
(
currentTime
)
+
"毫秒"
);
PayResultVo
payResultVo
=
JsonUtils
.
fromJson
(
returnData
,
PayResultVo
.
class
);
PayResultVo
payResultVo
=
JsonUtils
.
fromJson
(
returnData
,
PayResultVo
.
class
);
log
.
debug
(
"调用 PHP 支付 结果 -> "
+
JSON
.
toJSONString
(
payResultVo
));
payResultVo
.
getData
().
setOrderId
(
orderTicketId
);
payResultVo
.
getData
().
setOrderId
(
orderTicketId
);
payResultVo
.
getData
().
setPrice
(
orderTickets
.
getPriceActual
());
payResultVo
.
getData
().
setPrice
(
orderTickets
.
getPriceActual
());
orderTickets
.
setPayCode
(
payResultVo
.
getData
().
getCode
());
orderTickets
.
setPayCode
(
payResultVo
.
getData
().
getCode
());
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment