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
dd429c31
Commit
dd429c31
authored
May 24, 2021
by
zhiheng.zhang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
拒单
parent
93886ea2
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
90 additions
and
6 deletions
+90
-6
order-management/src/main/java/cn/freemud/management/service/adapter/OrderManagerAdapter.java
+8
-4
order-management/src/main/java/cn/freemud/management/service/handle/MallOrderHandle.java
+18
-0
order-management/src/main/java/cn/freemud/management/service/handle/OrderVerifyHandle.java
+34
-2
order-management/src/main/java/cn/freemud/management/service/impl/MallOrderMangerServiceImpl.java
+30
-0
No files found.
order-management/src/main/java/cn/freemud/management/service/adapter/OrderManagerAdapter.java
View file @
dd429c31
...
@@ -124,10 +124,14 @@ public class OrderManagerAdapter {
...
@@ -124,10 +124,14 @@ public class OrderManagerAdapter {
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
=
orderBaseService
.
getByOrderCode
(
request
.
getOrderId
());
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
=
orderBaseService
.
getByOrderCode
(
request
.
getOrderId
());
//订单接单参数校验
//订单接单参数校验
BaseResponse
verifyResponse
;
BaseResponse
verifyResponse
;
if
(!
macCafePartnerId
.
equals
(
orderBean
.
getCompanyId
()))
{
if
(
OrderClientType
.
SAASMALL
.
getIndex
().
toString
().
equalsIgnoreCase
(
orderBean
.
getOrderClient
())){
verifyResponse
=
orderVerifyHandle
.
orderRejectVerify
(
orderBean
,
request
);
verifyResponse
=
orderVerifyHandle
.
mallOrderRejectVerify
(
orderBean
,
request
);
}
else
{
}
else
{
verifyResponse
=
orderVerifyHandle
.
mcCafeOrderRejectVerify
(
orderBean
,
request
);
if
(!
macCafePartnerId
.
equals
(
orderBean
.
getCompanyId
()))
{
verifyResponse
=
orderVerifyHandle
.
orderRejectVerify
(
orderBean
,
request
);
}
else
{
verifyResponse
=
orderVerifyHandle
.
mcCafeOrderRejectVerify
(
orderBean
,
request
);
}
}
}
if
(
ObjectUtils
.
notEqual
(
verifyResponse
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
()))
{
if
(
ObjectUtils
.
notEqual
(
verifyResponse
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
()))
{
return
handleResponse
(
request
,
orderBean
,
verifyResponse
);
return
handleResponse
(
request
,
orderBean
,
verifyResponse
);
...
...
order-management/src/main/java/cn/freemud/management/service/handle/MallOrderHandle.java
View file @
dd429c31
...
@@ -118,4 +118,22 @@ public class MallOrderHandle {
...
@@ -118,4 +118,22 @@ public class MallOrderHandle {
}
}
return
ResponseUtil
.
success
();
return
ResponseUtil
.
success
();
}
}
/**
* 拒单
*
* @param request
* @param orderBean
* @return
*/
public
BaseResponse
orderReject
(
OrderManagerRequest
request
,
PayRefundResponse
refundResponse
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
//作废订单
CancelOrderRequest
cancelOrderRequest
=
orderSdkAdapter
.
getCancelOrderRequest
(
request
.
getOperator
(),
request
.
getReason
(),
refundResponse
.
getPayRefundStatus
(),
refundResponse
.
getRefundId
(),
orderBean
);
BaseOrderResponse
baseOrderResponse
=
orderCenterSdkService
.
orderReject
(
cancelOrderRequest
);
if
(
baseOrderResponse
==
null
||
ObjectUtils
.
notEqual
(
ResponseResult
.
SUCCESS
.
getCode
(),
baseOrderResponse
.
getErrcode
().
toString
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
AFFIRM_ORDER_FAIL
);
}
return
ResponseUtil
.
success
();
}
}
}
order-management/src/main/java/cn/freemud/management/service/handle/OrderVerifyHandle.java
View file @
dd429c31
...
@@ -240,6 +240,39 @@ public class OrderVerifyHandle {
...
@@ -240,6 +240,39 @@ public class OrderVerifyHandle {
* @param request
* @param request
* @return
* @return
*/
*/
public
BaseResponse
mallOrderRejectVerify
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
OrderManagerRequest
request
)
{
if
(
orderBean
==
null
)
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_NOT_EXIST
);
}
Integer
status
=
orderBean
.
getStatus
();
//判断订单是否已经被拒单
if
(
OrderStatus
.
REFUSE
.
getCode
().
equals
(
status
))
{
return
ResponseUtil
.
error
(
ResponseResult
.
REJECT_FAIL_REPETITION
,
getOrderManagerResponse
(
orderBean
));
}
//判断订单是否已经取消
if
(
OrderStatus
.
CANCEL
.
getCode
().
equals
(
status
))
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_HAS_CANCELED
,
getOrderManagerResponse
(
orderBean
));
}
//判断订单是否在配送中
if
(
OrderStatus
.
DISTRIBUTION
.
getCode
().
equals
(
status
))
{
return
ResponseUtil
.
error
(
ResponseResult
.
REJECT_FAIL_ORDER_IS_DELIVERY
,
getOrderManagerResponse
(
orderBean
));
}
//判断订单是否已送达
if
(
OrderStatus
.
COMPLETE
.
getCode
().
equals
(
status
))
{
return
ResponseUtil
.
error
(
ResponseResult
.
REJECT_FAIL_ORDER_IS_COMPLETE
,
getOrderManagerResponse
(
orderBean
));
}
if
(!
OrderStatus
.
TAKE_ORDER
.
getCode
().
equals
(
status
))
{
return
ResponseUtil
.
error
(
ResponseResult
.
REJECT_FAIL_ORDER_IS_NOT_NEW
,
getOrderManagerResponse
(
orderBean
));
}
return
ResponseUtil
.
success
();
}
/**
* 拒单
*
* @param orderBean
* @param request
* @return
*/
public
BaseResponse
mcCafeOrderRejectVerify
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
OrderManagerRequest
request
)
{
public
BaseResponse
mcCafeOrderRejectVerify
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
OrderManagerRequest
request
)
{
if
(
orderBean
==
null
)
{
if
(
orderBean
==
null
)
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_NOT_EXIST
);
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_NOT_EXIST
);
...
@@ -315,8 +348,7 @@ public class OrderVerifyHandle {
...
@@ -315,8 +348,7 @@ public class OrderVerifyHandle {
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_HAS_CANCELED
);
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_HAS_CANCELED
);
}
}
//判断订单是否有申请退款
//判断订单是否有申请退款
if
(
orderBean
.
getHasRefund
()
==
null
if
(
orderBean
.
getHasRefund
()
==
null
||
!
orderBean
.
getHasRefund
())
{
||
!
orderBean
.
getHasRefund
())
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_REFUND_NOT_APPLY
);
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_REFUND_NOT_APPLY
);
}
}
//订单是否支持退款
//订单是否支持退款
...
...
order-management/src/main/java/cn/freemud/management/service/impl/MallOrderMangerServiceImpl.java
View file @
dd429c31
...
@@ -125,4 +125,34 @@ public class MallOrderMangerServiceImpl implements OrderManagerService {
...
@@ -125,4 +125,34 @@ public class MallOrderMangerServiceImpl implements OrderManagerService {
return
ResponseUtil
.
success
();
return
ResponseUtil
.
success
();
}
}
/**
* 拒单
*
* @param request
* @param orderBean
* @return
*/
@Override
public
BaseResponse
<
OrderManagerResponse
>
orderReject
(
OrderManagerRequest
request
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
//支付退款
PayRefundResponse
refundResponse
=
new
PayRefundResponse
();
try
{
if
(
null
!=
orderBean
.
getOrderPayItem
()
&&
orderBean
.
getOrderPayItem
().
size
()>
0
){
refundResponse
=
paymentHandle
.
multiRefund
(
orderBean
);
}
else
{
refundResponse
=
paymentHandle
.
refund
(
request
,
orderBean
);
}
}
catch
(
OrderServiceException
orderEx
){
// 爱马哥兼容,不抛错
return
ResponseUtil
.
error
(
orderEx
.
getResult
());
}
//订单拒单
mallOrderHandle
.
orderReject
(
request
,
refundResponse
,
orderBean
);
// 推送pos、微信消息中心
orderBaseService
.
sendMessage
(
orderBean
,
OperateType
.
ORDER_REJECT
,
request
.
getReason
());
//todo 可以考虑基于订单回调异步实现
//冲正库存
stockHandle
.
revert
(
request
,
orderBean
);
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