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
7e11c139
Commit
7e11c139
authored
Jan 06, 2021
by
徐康
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
退款失败则记录为异常单
parent
39029bb0
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
57 additions
and
44 deletions
+57
-44
order-application-service/src/main/java/cn/freemud/service/impl/MCCafeOrderServiceImpl.java
+0
-22
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
+4
-7
order-management/src/main/java/cn/freemud/management/service/impl/McCafeMangerServiceImpl.java
+53
-15
No files found.
order-application-service/src/main/java/cn/freemud/service/impl/MCCafeOrderServiceImpl.java
View file @
7e11c139
...
...
@@ -1292,28 +1292,6 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
return
newSendPaySuccessNoticeMessage
();
}
private
PlatformBaseRequest
getRequest
(
OrderBean
orderInfo
)
{
PlatformBaseRequest
request
=
new
PlatformBaseRequest
();
AssortmentOpenApiEncryptDto
openApiEncrypts
=
cacheOpenApiEncryptManager
.
getAssortmentOpenApiEncrypt
(
orderInfo
.
getCompanyId
(),
OpenPlatformEncryptUrlType
.
REFUND_STATUS_CHANGE_NOTIFY_URL
);
request
.
setAppId
(
openApiEncrypts
.
getAppId
());
request
.
setPartnerId
(
orderInfo
.
getCompanyId
());
request
.
setVer
(
"1"
);
OrderRefundStatusChangeRequestBody
orderBody
=
new
OrderRefundStatusChangeRequestBody
();
orderBody
.
setOrderCode
(
orderInfo
.
getOid
());
orderBody
.
setTimeStamp
(
System
.
currentTimeMillis
()+
""
);
orderBody
.
setRefundType
(
AfterSalesType
.
OTHER
.
getIndex
().
toString
());
orderBody
.
setRefundStatus
(
com
.
freemud
.
sdk
.
api
.
assortment
.
order
.
enums
.
RefundStatus
.
COMPLETE_REFUND
.
getCode
().
toString
());
orderBody
.
setRefundReason
(
"门店线下退款"
);
request
.
setRequestBody
(
JSON
.
toJSONString
(
orderBody
));
String
content
=
MapBeanConvertUtil
.
sortObjWithoutSign
(
request
);
try
{
request
.
setSign
(
RSASignUtil
.
getSign
(
content
,
openApiEncrypts
.
getServerPrivateKey
(),
"UTF-8"
));
}
catch
(
Exception
e
)
{
LogUtil
.
error
(
"getPlatformBaseRequest"
,
content
,
JSON
.
toJSONString
(
openApiEncrypts
),
e
);
}
return
request
;
}
/**
* 取消配送
*
...
...
order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
View file @
7e11c139
...
...
@@ -116,15 +116,12 @@ public class PaymentHandle {
orderRefundResponse
=
standardPaymentService
.
orderRefund
(
orderRefundRequest
,
""
);
}
catch
(
Exception
ex
){
ErrorLog
.
errorConvertJson
(
this
.
getClass
(),
"refundError"
,
ex
);
throw
new
OrderServiceException
(
ResponseResult
.
REFUND_EXCEPTION
);
return
handlePayRefundResponse
(
PayRefundStatus
.
FAIL
,
orderRefundRequest
.
getRefundId
()
);
}
if
(
orderRefundResponse
==
null
){
throw
new
OrderServiceException
(
ResponseResult
.
REFUND_EXCEPTION
);
if
(
orderRefundResponse
==
null
||
ObjectUtils
.
notEqual
(
orderRefundResponse
.
getCode
(),
SUCCESS
)
){
return
handlePayRefundResponse
(
PayRefundStatus
.
FAIL
,
orderRefundRequest
.
getRefundId
()
);
}
if
(
ObjectUtils
.
notEqual
(
orderRefundResponse
.
getCode
(),
SUCCESS
)){
throw
new
OrderServiceException
(
ResponseResult
.
REFUND_FAIL
,
orderRefundResponse
.
getMessage
());
}
refundStatus
=
ObjectUtils
.
equals
(
PayRefundStatus
.
SUCCESS
.
getCode
(),
orderRefundResponse
.
getData
().
getRefundStatus
())?
PayRefundStatus
.
SUCCESS
:
PayRefundStatus
.
RUNNING
;
refundStatus
=
ObjectUtils
.
equals
(
PayRefundStatus
.
SUCCESS
.
getCode
(),
orderRefundResponse
.
getData
().
getRefundStatus
())?
PayRefundStatus
.
SUCCESS
:
PayRefundStatus
.
FAIL
;
return
handlePayRefundResponse
(
refundStatus
,
orderRefundRequest
.
getRefundId
());
}
...
...
order-management/src/main/java/cn/freemud/management/service/impl/McCafeMangerServiceImpl.java
View file @
7e11c139
...
...
@@ -15,8 +15,13 @@ import cn.freemud.management.thirdparty.CustomerMcCafeClient;
import
cn.freemud.management.thirdparty.DeliveryMCCafeClient
;
import
cn.freemud.management.util.ResponseUtil
;
import
com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto
;
import
com.freemud.application.sdk.api.ordercenter.enums.AbnormalStateEnum
;
import
com.freemud.application.sdk.api.ordercenter.enums.OrderClientType
;
import
com.freemud.application.sdk.api.ordercenter.request.SdkUpdateAbnormalState
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderCostResp
;
import
com.freemud.application.sdk.api.ordercenter.service.OrderSdkService
;
import
com.freemud.sdk.api.assortment.message.enums.OrderType
;
import
com.freemud.sdk.api.assortment.order.enums.PayRefundStatus
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
...
...
@@ -58,7 +63,7 @@ public class McCafeMangerServiceImpl implements OrderManagerService {
@Resource
private
DeliveryMCCafeClient
deliveryMCCafeClient
;
@Resource
private
CustomerMcCafeClient
customerMcCafeClient
;
private
OrderSdkService
orderSdkService
;
@Value
(
"${mccafe.partner.id}"
)
private
String
macCafePartnerId
;
...
...
@@ -124,10 +129,21 @@ public class McCafeMangerServiceImpl implements OrderManagerService {
}
else
{
//支付退款
PayRefundResponse
refundResponse
=
paymentHandle
.
mcCafeRefund
(
orderManagerRequest
,
orderBean
);
//订单拒单
saasOrderHandle
.
mcCafeOrderReject
(
orderManagerRequest
,
refundResponse
,
orderBean
);
//冲正库存
stockHandle
.
revert
(
orderManagerRequest
,
orderBean
);
if
(
refundResponse
.
getPayRefundStatus
().
getCode
().
equals
(
PayRefundStatus
.
SUCCESS
.
getCode
()))
{
//订单拒单
saasOrderHandle
.
mcCafeOrderReject
(
orderManagerRequest
,
refundResponse
,
orderBean
);
//冲正库存
stockHandle
.
revert
(
orderManagerRequest
,
orderBean
);
}
else
{
SdkUpdateAbnormalState
sdkUpdateAbnormalState
=
new
SdkUpdateAbnormalState
();
sdkUpdateAbnormalState
.
setOrderCode
(
request
.
getOrderId
());
sdkUpdateAbnormalState
.
setPartnerId
(
request
.
getPartnerId
());
sdkUpdateAbnormalState
.
setAbnormalState
(
AbnormalStateEnum
.
ABNORMAL
.
getCode
());
sdkUpdateAbnormalState
.
setAbnormalDesc
(
"支付退款失败,订单入机失败回调异常"
);
sdkUpdateAbnormalState
.
setOrderClient
(
OrderClientType
.
SAAS
.
getIndex
());
sdkUpdateAbnormalState
.
setOperator
(
request
.
getOperator
());
orderSdkService
.
updateAbnormalState
(
sdkUpdateAbnormalState
);
}
}
return
ResponseUtil
.
success
();
}
...
...
@@ -186,11 +202,22 @@ public class McCafeMangerServiceImpl implements OrderManagerService {
@Override
public
BaseResponse
<
OrderManagerResponse
>
orderAgreeRefund
(
OrderManagerRequest
request
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
//支付退款
PayRefundResponse
refund
=
paymentHandle
.
mcCafeRefund
(
request
,
orderBean
);
//订单拒单
saasOrderHandle
.
mcCafeRefundAgree
(
request
,
refund
,
orderBean
);
//冲正库存
stockHandle
.
revert
(
request
,
orderBean
);
PayRefundResponse
refundResponse
=
paymentHandle
.
mcCafeRefund
(
request
,
orderBean
);
if
(
refundResponse
.
getPayRefundStatus
().
getCode
().
equals
(
PayRefundStatus
.
SUCCESS
.
getCode
()))
{
//订单拒单
saasOrderHandle
.
mcCafeRefundAgree
(
request
,
refundResponse
,
orderBean
);
//冲正库存
stockHandle
.
revert
(
request
,
orderBean
);
}
else
{
SdkUpdateAbnormalState
sdkUpdateAbnormalState
=
new
SdkUpdateAbnormalState
();
sdkUpdateAbnormalState
.
setOrderCode
(
request
.
getOrderId
());
sdkUpdateAbnormalState
.
setPartnerId
(
request
.
getPartnerId
());
sdkUpdateAbnormalState
.
setAbnormalState
(
AbnormalStateEnum
.
ABNORMAL
.
getCode
());
sdkUpdateAbnormalState
.
setAbnormalDesc
(
"支付退款失败,订单入机失败回调异常"
);
sdkUpdateAbnormalState
.
setOrderClient
(
OrderClientType
.
SAAS
.
getIndex
());
sdkUpdateAbnormalState
.
setOperator
(
request
.
getOperator
());
orderSdkService
.
updateAbnormalState
(
sdkUpdateAbnormalState
);
}
return
ResponseUtil
.
success
();
}
...
...
@@ -215,11 +242,22 @@ public class McCafeMangerServiceImpl implements OrderManagerService {
@Override
public
BaseResponse
<
OrderManagerResponse
>
orderCancel
(
OrderManagerRequest
request
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
//支付退款
PayRefundResponse
refund
=
paymentHandle
.
mcCafeRefund
(
request
,
orderBean
);
//订单拒单
saasOrderHandle
.
orderCancel
(
request
,
refund
,
orderBean
);
//冲正库存
stockHandle
.
revert
(
request
,
orderBean
);
PayRefundResponse
refundResponse
=
paymentHandle
.
mcCafeRefund
(
request
,
orderBean
);
if
(
refundResponse
.
getPayRefundStatus
().
getCode
().
equals
(
PayRefundStatus
.
SUCCESS
.
getCode
()))
{
//订单拒单
saasOrderHandle
.
orderCancel
(
request
,
refundResponse
,
orderBean
);
//冲正库存
stockHandle
.
revert
(
request
,
orderBean
);
}
else
{
SdkUpdateAbnormalState
sdkUpdateAbnormalState
=
new
SdkUpdateAbnormalState
();
sdkUpdateAbnormalState
.
setOrderCode
(
request
.
getOrderId
());
sdkUpdateAbnormalState
.
setPartnerId
(
request
.
getPartnerId
());
sdkUpdateAbnormalState
.
setAbnormalState
(
AbnormalStateEnum
.
ABNORMAL
.
getCode
());
sdkUpdateAbnormalState
.
setAbnormalDesc
(
"支付退款失败,订单入机失败回调异常"
);
sdkUpdateAbnormalState
.
setOrderClient
(
OrderClientType
.
SAAS
.
getIndex
());
sdkUpdateAbnormalState
.
setOperator
(
request
.
getOperator
());
orderSdkService
.
updateAbnormalState
(
sdkUpdateAbnormalState
);
}
return
ResponseUtil
.
success
();
}
...
...
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