Commit 46cd7da9 by zhiheng.zhang

同事退款拦截操作更改

parent 9f2fc635
......@@ -7,7 +7,7 @@ public enum OrderSource {
SDG("sdg", "闪电购"),
ELEME("eleme", "饿了么外卖"),//8
FMWD("fmwd", "非码微店"),//25
MALL("mall", "非码Mall"),
MALL("saasmall", "非码Mall"),
SAAS("saas", "saas点餐"),
ALIPAY("alipay", "支付宝"),
EBAI("ebwm", "饿百外卖"),//9
......
......@@ -10,6 +10,7 @@ import cn.freemud.management.enums.ResponseResult;
import cn.freemud.management.service.OrderBaseService;
import cn.freemud.management.service.handle.OrderVerifyHandle;
import cn.freemud.management.util.ResponseUtil;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.sdk.api.assortment.order.enums.OldOrderType;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import org.apache.commons.collections4.CollectionUtils;
......@@ -144,7 +145,12 @@ public class OrderManagerAdapter {
//查询订单
QueryOrdersResponse.DataBean.OrderBean orderBean = orderBaseService.getByOrderCode(request.getOrderId());
//订单接单参数校验
BaseResponse verifyResponse = orderVerifyHandle.orderAgreeRefund(orderBean, request);
BaseResponse verifyResponse;
if(OrderClientType.SAASMALL.getIndex().toString() == orderBean.getOrderClient()){
verifyResponse = orderVerifyHandle.mallOrderAgreeRefund(orderBean, request);
}else{
verifyResponse = orderVerifyHandle.orderAgreeRefund(orderBean, request);
}
if (ObjectUtils.notEqual(verifyResponse.getCode(), ResponseResult.SUCCESS.getCode())) {
return handleResponse(request,orderBean,verifyResponse);
}
......
......@@ -305,6 +305,40 @@ public class OrderVerifyHandle {
}
/**
* 商城同意退款
*
* @param orderBean
* @param request
* @return
*/
public BaseResponse mallOrderAgreeRefund(QueryOrdersResponse.DataBean.OrderBean orderBean, OrderManagerRequest request) {
//已取消的订单不能操作
if (ObjectUtils.equals(OrderStatus.CANCEL.getCode(), orderBean.getStatus())) {
return ResponseUtil.error(ResponseResult.ORDER_HAS_CANCELED);
}
//判断订单是否有申请退款
if (orderBean.getHasRefund() == null
|| !orderBean.getHasRefund()) {
return ResponseUtil.error(ResponseResult.ORDER_REFUND_NOT_APPLY);
}
//订单是否支持退款
boolean isCanRefund = false;
//订单
boolean isRefundDeliveryFee=false;
//saas渠道订单,已完成的订单不能操作, 商户配置已完成订单可退款可退款
if (ObjectUtils.equals(orderBean.getSource(), OrderSource.MALL.getSource())) {
isCanRefund = getRefundConfig(orderBean);
if (!isCanRefund) {
return ResponseUtil.error(ResponseResult.ORDER_HAD_AFFIRM_CAN_NOT_REFUND);
}
}
if (isCanRefund) {
orderBean.setAmount(getRefundAmount(orderBean,isRefundDeliveryFee).longValue());
}
return ResponseUtil.success();
}
/**
* 麦咖啡同意退款
*
* @param orderBean
......
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