Commit 353a691d by ping.wu

Merge branch 'feature/20230327_订单宝上同意退款记录操作渠道_wuping' of…

Merge branch 'feature/20230327_订单宝上同意退款记录操作渠道_wuping' of https://gitlab.freemud.com/order-group-application/order-group
parents 90ae4502 2cab6da4
...@@ -22,7 +22,6 @@ public class BaseQueryOrderRequestAdapter { ...@@ -22,7 +22,6 @@ public class BaseQueryOrderRequestAdapter {
orderRequest.setShopId(orderBean.getShopId()); orderRequest.setShopId(orderBean.getShopId());
orderRequest.setHasSelfDelivery(true); orderRequest.setHasSelfDelivery(true);
orderRequest.setPartnerId(orderBean.getCompanyId()); orderRequest.setPartnerId(orderBean.getCompanyId());
// orderRequest.setOrderType(getNewOrderTypeEnum(orderBean.getType(), orderBean.getGmtExpect()));
orderRequest.setOrderType(OrderType.getOrderType(orderBean.getNewOrderType())); orderRequest.setOrderType(OrderType.getOrderType(orderBean.getNewOrderType()));
if (orderBean.getGmtExpect() != null && orderBean.getGmtExpect() != 0) { if (orderBean.getGmtExpect() != null && orderBean.getGmtExpect() != 0) {
orderRequest.setExpectTime(cn.freemud.base.util.DateUtil.convert2String(new Date(orderBean.getGmtExpect()), cn.freemud.base.util.DateUtil.FORMAT_YYYY_MM_DD_HHMMSS)); orderRequest.setExpectTime(cn.freemud.base.util.DateUtil.convert2String(new Date(orderBean.getGmtExpect()), cn.freemud.base.util.DateUtil.FORMAT_YYYY_MM_DD_HHMMSS));
...@@ -40,9 +39,8 @@ public class BaseQueryOrderRequestAdapter { ...@@ -40,9 +39,8 @@ public class BaseQueryOrderRequestAdapter {
orderRequest.setDispatchType(otherParamDTO.getDispatchType()); orderRequest.setDispatchType(otherParamDTO.getDispatchType());
orderRequest.setDispatchTimeout(otherParamDTO.getDispatchTimeout()); orderRequest.setDispatchTimeout(otherParamDTO.getDispatchTimeout());
} }
orderRequest.setAcceptMode(request.getAcceptMode());
//订单宝自动接单提醒需求,传标识到基础服务识别 //订单宝自动接单提醒需求,传标识到基础服务识别
if (request.getAcceptMode() == null && Objects.equals(6,request.getOperationClient())) { if (Objects.equals(4,request.getOperationClient())) {
orderRequest.setAcceptMode(1); orderRequest.setAcceptMode(1);
} }
return orderRequest; return orderRequest;
......
...@@ -80,17 +80,12 @@ public class OrderManagerRequest { ...@@ -80,17 +80,12 @@ public class OrderManagerRequest {
private Integer timeout; private Integer timeout;
/** /**
* 售后渠道 1:POS插件 2:小助手 3:开放平台 4:自动任务 5:用户端 6:系统 7:万象 8:太一 * 售后渠道 1:POS插件 2:小助手 3:开放平台 4:自动任务 5:用户端 6:系统 7:万象 8:太一 9:订单宝
*/ */
private Integer operationClient = 0; private Integer operationClient;
/** /**
* 品牌审核售后单 不传默认无需品牌审核 * 品牌审核售后单 不传默认无需品牌审核
*/ */
private Boolean brandVerifyAfterSales = false; private Boolean brandVerifyAfterSales = false;
/**
* 1是服务端自动接单
*/
private Integer acceptMode;
} }
...@@ -174,6 +174,8 @@ public enum ResponseResult { ...@@ -174,6 +174,8 @@ public enum ResponseResult {
PARTNER_ORDER_CANCEL_ERROR("45089", "取消订单失败"), PARTNER_ORDER_CANCEL_ERROR("45089", "取消订单失败"),
ORDER_DELIVERY_EDIT_FAILED("45090", "修改配送状态失败"), ORDER_DELIVERY_EDIT_FAILED("45090", "修改配送状态失败"),
PARTNER_CAN_NOT_CANCEL_ORDER("45091","订单已部分退款,不能取消"),
/** /**
* 支付 * 支付
*/ */
......
...@@ -254,6 +254,10 @@ public class OrderManagerAdapter { ...@@ -254,6 +254,10 @@ public class OrderManagerAdapter {
if (null == orderBean) { if (null == orderBean) {
return ResponseUtil.error(ResponseResult.ORDER_NOT_EXIST); return ResponseUtil.error(ResponseResult.ORDER_NOT_EXIST);
} }
BaseResponse verifyResponse = orderVerifyHandle.cancelOrder(orderBean);
if (ObjectUtils.notEqual(verifyResponse.getCode(), ResponseResult.SUCCESS.getCode())) {
return handleResponse(request, orderBean, verifyResponse);
}
BaseResponse<OrderManagerResponse> orderManagerResponse = orderBeanFactory.getOrderManagerService(orderBean).orderCancel(request, orderBean); BaseResponse<OrderManagerResponse> orderManagerResponse = orderBeanFactory.getOrderManagerService(orderBean).orderCancel(request, orderBean);
return handleResponse(request, orderBean, orderManagerResponse); return handleResponse(request, orderBean, orderManagerResponse);
} }
......
...@@ -328,15 +328,21 @@ public class OrderVerifyHandle { ...@@ -328,15 +328,21 @@ public class OrderVerifyHandle {
if (!canAgreeRefundStatus.contains(orderBean.getAfterSalesOrderResp().getAfterSalesStatus())) { if (!canAgreeRefundStatus.contains(orderBean.getAfterSalesOrderResp().getAfterSalesStatus())) {
return ResponseUtil.error(ResponseResult.ORDER_REFUND_NOT_APPLY); return ResponseUtil.error(ResponseResult.ORDER_REFUND_NOT_APPLY);
} }
if("pos".equals(request.getOperator())){ //兜底方案,后续都传了可删除代码
request.setOperationClient(1); if (request.getOperationClient() == null) {
}else if("小助手".equals(request.getOperator())){ if ("pos".equals(request.getOperator())) {
request.setOperationClient(2); request.setOperationClient(1);
}else if("开发平台".equals(request.getOperator())){ } else if ("小助手".equals(request.getOperator())) {
request.setOperationClient(3); request.setOperationClient(2);
}else if("自动任务".equals(request.getOperator())){ } else if ("开发平台".equals(request.getOperator())) {
request.setOperationClient(4); request.setOperationClient(3);
} else if ("自动任务".equals(request.getOperator())) {
request.setOperationClient(4);
}else {
request.setOperationClient(0);
}
} }
//门店发起退款,需要品牌审核,则小助手不能发同意退款 //门店发起退款,需要品牌审核,则小助手不能发同意退款
if(Objects.equals(AfterSalesType.STORE_CANCEL.getIndex(),orderBean.getAfterSalesOrderResp().getAfterSalesType())){ if(Objects.equals(AfterSalesType.STORE_CANCEL.getIndex(),orderBean.getAfterSalesOrderResp().getAfterSalesType())){
//售后渠道 1:POS插件 2:小助手 3:开放平台 4:自动任务 5:用户端 6:系统 7:万象 8:太一 //售后渠道 1:POS插件 2:小助手 3:开放平台 4:自动任务 5:用户端 6:系统 7:万象 8:太一
...@@ -623,7 +629,7 @@ public class OrderVerifyHandle { ...@@ -623,7 +629,7 @@ public class OrderVerifyHandle {
*/ */
private boolean checkSaasWm(OrderBeanV1 orderBean) { private boolean checkSaasWm(OrderBeanV1 orderBean) {
return 1 == orderBean.getOrderType() return 1 == orderBean.getOrderType()
&& OrderSourceV1.SAAS.getCode().equals(orderBean.getSource()) && (Objects.equals(OrderClientType.SAAS.getIndex().toString(),orderBean.getOrderClient()) || Objects.equals(OrderClientType.ALIPAY.getIndex().toString(),orderBean.getOrderClient()))
&& THIRD.equalsIgnoreCase(orderBean.getAddInfo().getDeliveryType()); && THIRD.equalsIgnoreCase(orderBean.getAddInfo().getDeliveryType());
} }
private boolean verifyThirdFlow(OrderBeanV1 orderBean,OrderManagerRequest request) { private boolean verifyThirdFlow(OrderBeanV1 orderBean,OrderManagerRequest request) {
...@@ -657,4 +663,20 @@ public class OrderVerifyHandle { ...@@ -657,4 +663,20 @@ public class OrderVerifyHandle {
return ResponseUtil.success(); return ResponseUtil.success();
} }
/**
* 取消订单前校验是否部分退
*/
public BaseResponse cancelOrder(OrderBeanV1 orderBean){
//已取消的订单不能操作
if (ObjectUtils.equals(OrderStatusV1.CANCEL.getV2Code(), orderBean.getStatusV2())) {
return ResponseUtil.error(ResponseResult.ORDER_HAS_CANCELED);
}
//判断订单是否有申请退款且为部分退款
if (orderBean.getAfterSalesOrderResp() != null && orderBean.getAfterSalesOrderResp().getIsPartRefund()) {
return ResponseUtil.error(ResponseResult.PARTNER_CAN_NOT_CANCEL_ORDER);
}
return ResponseUtil.success();
}
} }
\ No newline at end of file
...@@ -107,7 +107,6 @@ public class SaasOrderHandle { ...@@ -107,7 +107,6 @@ public class SaasOrderHandle {
} }
OrderBaseResp response = orderSdkService.acceptOrder(requestDto, LogThreadLocal.getTrackingNo()); OrderBaseResp response = orderSdkService.acceptOrder(requestDto, LogThreadLocal.getTrackingNo());
BaseOrderResponse confirmOrderResponse = orderSdkAdapter.convent2BaseOrderResponse(response); BaseOrderResponse confirmOrderResponse = orderSdkAdapter.convent2BaseOrderResponse(response);
// BaseOrderResponse confirmOrderResponse = orderCenterSdkService.orderConfirmTake(orderConfirmRequest);
//处理1秒重复接单问题 订单服务接单返回20067重复操作,20018状态机不支持认为接单成功 //处理1秒重复接单问题 订单服务接单返回20067重复操作,20018状态机不支持认为接单成功
if ("20067".equals(confirmOrderResponse.getErrcode().toString()) || "20018".equals(confirmOrderResponse.getErrcode().toString()) || "50002".equals(confirmOrderResponse.getErrcode().toString())) { if ("20067".equals(confirmOrderResponse.getErrcode().toString()) || "20018".equals(confirmOrderResponse.getErrcode().toString()) || "50002".equals(confirmOrderResponse.getErrcode().toString())) {
return ResponseUtil.success(confirmOrderResponse.getErrcode()); return ResponseUtil.success(confirmOrderResponse.getErrcode());
......
...@@ -40,7 +40,7 @@ public class POSOrderOperationBaseReq { ...@@ -40,7 +40,7 @@ public class POSOrderOperationBaseReq {
private Integer dispatchTimeout; private Integer dispatchTimeout;
/** /**
* 1是服务端自动接单 * 1是服务端自动接单 接单时传,其他不传
*/ */
private Integer acceptMode; private Integer acceptMode;
} }
...@@ -143,4 +143,9 @@ public class AfterSalesOrderResp { ...@@ -143,4 +143,9 @@ public class AfterSalesOrderResp {
*/ */
private String storeId; private String storeId;
/**
* 是否部分退
*/
private Boolean isPartRefund;
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment