Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
c3a9cdde
Commit
c3a9cdde
authored
Sep 06, 2022
by
周晓航
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/zxh/重新对接支付退款响应-20220824'
parents
a93a1072
5261c948
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
71 additions
and
29 deletions
+71
-29
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
+10
-11
order-management/src/main/java/cn/freemud/management/service/handle/SaasOrderHandle.java
+60
-11
order-management/src/main/java/cn/freemud/management/service/impl/SaasOrderMangerServiceImpl.java
+1
-7
No files found.
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
View file @
c3a9cdde
...
...
@@ -14,7 +14,6 @@ import cn.freemud.management.thirdparty.OMSPaymentClient;
import
cn.freemud.management.util.RedisUtil
;
import
cn.freemud.redis.RedisCache
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformIappWxappStore
;
import
com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformIappWxappStoreManager
;
import
com.freemud.application.sdk.api.base.BaseResponse
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
...
...
@@ -159,17 +158,16 @@ public class PaymentHandle {
MultiOrderRefundRequest
multiOrderRefundRequest
=
paymentSdkAdapter
.
getMultiOrderPayRefundRequest
(
orderBean
,
getRefundAmount
(
orderBean
));
MultiOrderRefundResponse
multiOrderRefundResponse
=
mulitiPaymentClient
.
paymentApplicationRefund
(
multiOrderRefundRequest
,
orderBean
.
getCompanyId
());
String
message
=
""
;
if
(
multiOrderRefundResponse
==
null
||
multiOrderRefundResponse
.
getData
()
==
null
||
!
com
.
freemud
.
sdk
.
api
.
assortment
.
order
.
domain
.
ResponseCodeConstant
.
ORDER_PAY_RESPONSE_SUCCESS
.
equals
(
multiOrderRefundResponse
.
getCode
()))
{
// fisherman 退款异常 也当做 退款中处理
refundStatus
=
PayRefundStatus
.
RUNNING
;
if
(
Objects
.
isNull
(
multiOrderRefundResponse
)
||
multiOrderRefundResponse
.
getCode
()
!=
200
)
{
refundStatus
=
PayRefundStatus
.
FAIL
;
}
else
{
List
<
MultiOrderRefundResponse
.
RefundPlatformResponse
>
refundPlatformResponseList
=
multiOrderRefundResponse
.
getData
().
refundPlatformResponseList
;
if
(
null
!=
refundPlatformResponseList
&&
refundPlatformResponseList
.
size
()
>
0
)
{
MultiOrderRefundResponse
.
RefundPlatform
data
=
multiOrderRefundResponse
.
getData
();
if
(
Objects
.
isNull
(
data
)
||
CollectionUtils
.
isEmpty
(
data
.
refundPlatformResponseList
))
{
refundStatus
=
PayRefundStatus
.
FAIL
;
}
else
{
List
<
MultiOrderRefundResponse
.
RefundPlatformResponse
>
refundPlatformResponseList
=
data
.
refundPlatformResponseList
;
redisCache
.
save
(
RedisUtil
.
getPaymentTransIdSequenceKey
(
refundPlatformResponseList
.
get
(
0
).
getTransId
()),
orderBean
.
getOid
(),
1L
,
TimeUnit
.
DAYS
);
}
if
(
CollectionUtils
.
isNotEmpty
(
refundPlatformResponseList
))
{
long
refundError
=
refundPlatformResponseList
.
stream
()
.
filter
(
s
->
s
.
getResultCode
().
compareTo
(
MultiOrderRefundResponse
.
RefundPlatformResponse
.
REFUNDED_RESULTCODE
)
!=
0
&&
s
.
getResultCode
().
compareTo
(
MultiOrderRefundResponse
.
RefundPlatformResponse
.
REFUND_SUCCESS
)
!=
0
)
...
...
@@ -191,6 +189,7 @@ public class PaymentHandle {
}
}
}
PayRefundResponse
payRefundResponse
=
handlePayRefundResponse
(
refundStatus
,
multiOrderRefundRequest
.
getRefundTradeNo
());
if
(
StringUtils
.
isNotEmpty
(
message
))
{
payRefundResponse
.
setMessage
(
message
);
...
...
@@ -211,7 +210,7 @@ public class PaymentHandle {
AgentPayRefundReq
req
=
paymentSdkAdapter
.
getAgentPayefundReq
(
orderBean
,
this
.
getRefundAmount
(
orderBean
));
AgentPayRefundResp
resp
=
mulitiPaymentClient
.
agentPayRefund
(
req
);
if
(!
resp
.
isOk
())
{
refundStatus
=
PayRefundStatus
.
RUNNING
;
refundStatus
=
PayRefundStatus
.
FAIL
;
}
AgentPayRefundResp
.
DataDTO
data
=
resp
.
getData
();
if
(
Objects
.
nonNull
(
data
))
{
...
...
order-management/src/main/java/cn/freemud/management/service/handle/SaasOrderHandle.java
View file @
c3a9cdde
This diff is collapsed.
Click to expand it.
order-management/src/main/java/cn/freemud/management/service/impl/SaasOrderMangerServiceImpl.java
View file @
c3a9cdde
...
...
@@ -473,12 +473,6 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
PayRefundStatus
payRefundStatus
=
PayRefundStatus
.
SUCCESS
;
if
(!
Objects
.
equals
(
refundStatus
,
"100"
))
{
payRefundStatus
=
PayRefundStatus
.
FAIL
;
// 告知基础服务 退款失败
AfterSalesRefundFailReq
refundFailReq
=
this
.
getAfterSalesRefundFailReq
(
orderBean
,
"refundSuccessCallback"
,
AfterSalesApplyClientEnum
.
STATE_6
.
getIndex
(),
refundResponse
.
getMessage
());
orderSdkService
.
refundFail
(
refundFailReq
,
LogThreadLocal
.
getTrackingNo
());
}
refundResponse
.
setPayRefundStatus
(
payRefundStatus
);
refundResponse
.
setRefundId
(
request
.
getRefundId
());
...
...
@@ -486,7 +480,7 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
OrderManagerRequest
omRequest
=
new
OrderManagerRequest
();
omRequest
.
setReason
(
reason
);
omRequest
.
setOperator
(
"支付退款回调系统补偿"
);
saasOrderHandle
.
refundAgree
(
omRequest
,
refundResponse
,
orderBean
);
saasOrderHandle
.
refundAgree
ByCallback
(
omRequest
,
refundResponse
,
orderBean
);
// 退款失败 不应该走 冲正逻辑
if
(
payRefundStatus
.
getCode
().
compareTo
(
PayRefundStatus
.
SUCCESS
.
getCode
())
!=
0
)
{
...
...
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