Commit bf6176da by 查志伟

修复退款校验判断问题

parent a4562544
//package com.freemud.sdk.api.assortment.order.enums; package com.freemud.sdk.api.assortment.order.enums;
//
//import java.util.ArrayList; import java.util.ArrayList;
//import java.util.List; import java.util.List;
//
///** /**
// * All rights Reserved, Designed By www.freemud.cn * All rights Reserved, Designed By www.freemud.cn
// * *
// * @version V1.0 * @version V1.0
// * @Title: NewOldOrderType * @Title: NewOldOrderType
// * @Package com.freemud.sdk.api.assortment.enums * @Package com.freemud.sdk.api.assortment.enums
// * @Description: * @Description:
// * @author: ping.wu * @author: ping.wu
// * @date: 2019/4/18 17:28 * @date: 2019/4/18 17:28
// * @Copyright: 2019 www.freemud.cn Inc. All rights reserved. * @Copyright: 2019 www.freemud.cn Inc. All rights reserved.
// * 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目 * 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
// */ */
//public enum NewOrderType { public enum NewOrderType {
//
// GENERAL_DINE_IN(1, "店内自取实时-1常规堂食"), GENERAL_DINE_IN(1, "店内自取实时-1常规堂食"),
// RESERVED_DINE_IN(2, "店内自取预约-2预约堂食"), RESERVED_DINE_IN(2, "店内自取预约-2预约堂食"),
// GENERAL_EXPRESS(3, "店外快递实时-3常规外送"), GENERAL_EXPRESS(3, "店外快递实时-3常规外送"),
// RESERVED_EXPRESS(4, "店外快递预约-4预约外送"), RESERVED_EXPRESS(4, "店外快递预约-4预约外送"),
// GENERAL_SELF_PICKUP(5, "店外自取实时-5常规自取"), GENERAL_SELF_PICKUP(5, "店外自取实时-5常规自取"),
// RESERVED_SELF_PICKUP(6, "店外自取预约-6预约自取") RESERVED_SELF_PICKUP(6, "店外自取预约-6预约自取")
// ; ;
//
// private Integer code; private final Integer code;
// private String desc; private final String desc;
//
// NewOrderType(Integer code, String desc) { NewOrderType(Integer code, String desc) {
// this.code = code; this.code = code;
// this.desc = desc; this.desc = desc;
// } }
//
// public static List<Integer> getAllCodes() { public static List<Integer> getAllCodes() {
// List<Integer> list = new ArrayList<>(); List<Integer> list = new ArrayList<>();
// for (NewOrderType type : values()) { for (NewOrderType type : values()) {
// list.add(type.getCode()); list.add(type.getCode());
// } }
// return list; return list;
// } }
//
//
// public static NewOrderType getByCode(Integer code) { public static NewOrderType getByCode(Integer code) {
// if (code == null) { if (code == null) {
// return null; return null;
// } }
// for (NewOrderType newOrderType : values()) { for (NewOrderType newOrderType : values()) {
// if (newOrderType.getCode().equals(code)) { if (newOrderType.getCode().equals(code)) {
// return newOrderType; return newOrderType;
// } }
// } }
// return null; return null;
// } }
//
// public Integer getCode() { public Integer getCode() {
// return code; return code;
// } }
//
// public String getDesc() { public String getDesc() {
// return desc; return desc;
// } }
//
//} public static boolean isDelivery(Integer orderType) {
if (orderType == null) {
return false;
}
return orderType.equals(NewOrderType.GENERAL_EXPRESS.getCode())
|| orderType.equals(NewOrderType.RESERVED_EXPRESS.getCode());
}
}
...@@ -276,7 +276,7 @@ public class RefundService { ...@@ -276,7 +276,7 @@ public class RefundService {
*/ */
private void refundOrder(OrderInfoReqs order, String reason, String remark, Boolean isRefundDeliveryFee, Byte refundMode) { private void refundOrder(OrderInfoReqs order, String reason, String remark, Boolean isRefundDeliveryFee, Byte refundMode) {
int state = PayRefundStatus.SUCCESS.getCode(); int state = PayRefundStatus.SUCCESS.getCode();
if (order.getActualPayAmount().longValue() > 0) { if (order.getSettlementAmount().longValue() > 0) {
PayRefundResponse refundResponse = paymentHandle.getCommonPayRefundResponse(order, reason); PayRefundResponse refundResponse = paymentHandle.getCommonPayRefundResponse(order, reason);
state = refundResponse.getPayRefundStatus().getCode(); state = refundResponse.getPayRefundStatus().getCode();
} }
......
...@@ -5,26 +5,23 @@ import cn.freemud.management.entities.dto.request.order.OrderManagerRequest; ...@@ -5,26 +5,23 @@ import cn.freemud.management.entities.dto.request.order.OrderManagerRequest;
import cn.freemud.management.entities.dto.response.order.OrderManagerResponse; import cn.freemud.management.entities.dto.response.order.OrderManagerResponse;
import cn.freemud.management.enums.DeliveryStatus; import cn.freemud.management.enums.DeliveryStatus;
import cn.freemud.management.enums.OperateType; import cn.freemud.management.enums.OperateType;
import cn.freemud.management.enums.RefundStatus;
import cn.freemud.management.enums.ResponseResult; import cn.freemud.management.enums.ResponseResult;
import cn.freemud.management.util.ResponseUtil; import cn.freemud.management.util.ResponseUtil;
import cn.freemud.redis.RedisCache; import cn.freemud.redis.RedisCache;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.freemud.api.assortment.datamanager.manager.cache.CacheOpenPlatformPartnerWxappConfigManager; import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1; import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1;
import com.freemud.application.sdk.api.ordercenter.entities.v1.RefundBeanV1; import com.freemud.application.sdk.api.ordercenter.entities.v1.RefundBeanV1;
import com.freemud.application.sdk.api.ordercenter.enums.*; import com.freemud.application.sdk.api.ordercenter.enums.*;
import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderSourceV1; import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderSourceV1;
import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderStatusV1; import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderStatusV1;
import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderTypeV1; import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderTypeV1;
import com.freemud.application.sdk.api.ordercenter.enums.orderv1.RefundStatusV1;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto; import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.sdk.api.assortment.message.enums.OrderType; import com.freemud.sdk.api.assortment.message.enums.OrderType;
import com.freemud.sdk.api.assortment.order.adapter.OrderSdkAdapter;
import com.freemud.sdk.api.assortment.order.constant.OrderRedisKeyConstant; import com.freemud.sdk.api.assortment.order.constant.OrderRedisKeyConstant;
import com.freemud.sdk.api.assortment.order.entities.OrderRefundConfigEntity; import com.freemud.sdk.api.assortment.order.entities.OrderRefundConfigEntity;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService; import com.freemud.sdk.api.assortment.order.enums.NewOrderType;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.ObjectUtils;
...@@ -61,30 +58,14 @@ public class OrderVerifyHandle { ...@@ -61,30 +58,14 @@ public class OrderVerifyHandle {
* 允许退款 * 允许退款
*/ */
private static final String ALLOW_REFUND = "1"; private static final String ALLOW_REFUND = "1";
/**
* svc储值卡支付,可用于判断订单是否用储值卡支付
*/
private static final String PAY_CODE_10102 = "10102";
@Autowired
private CacheOpenPlatformPartnerWxappConfigManager cacheOpenPlatformPartnerWxappConfigManager;
@Autowired @Autowired
private OrderSdkAdapter orderSdkAdapter;
@Autowired
private OrderCenterSdkService orderCenterSdkService;
@Autowired
private DeliveryHandle deliveryHandle;
@Autowired
private RedisCache redisCache; private RedisCache redisCache;
@Value("${delivery.support.ordersource}")
private String supportOrderSource;
@Value("${mccafe.partner.id}") @Value("${mccafe.partner.id}")
private String macCafePartnerId; private String macCafePartnerId;
private static final String THIRD = "third"; private static final String THIRD = "third";
private static final String delivery_type_self = "self";
/** /**
* 接单校验 * 接单校验
* *
...@@ -367,20 +348,9 @@ public class OrderVerifyHandle { ...@@ -367,20 +348,9 @@ public class OrderVerifyHandle {
} }
return ResponseUtil.success(); return ResponseUtil.success();
} }
//订单是否支持退款
boolean isCanRefund = false;
//订单 //订单
boolean isRefundDeliveryFee=false; boolean isRefundDeliveryFee=false;
//saas渠道订单,已完成的订单不能操作, 商户配置已完成订单可退款可退款
// if (ObjectUtils.equals(orderBean.getSource(), OrderSourceV1.SAAS.getCode())) {
// isCanRefund = getRefundConfig(orderBean);
// if (!isCanRefund) {
// return ResponseUtil.error(ResponseResult.ORDER_HAD_AFFIRM_CAN_NOT_REFUND);
// }
// }
// if (isCanRefund) {
orderBean.setAmount(getRefundAmount(orderBean,isRefundDeliveryFee).longValue()); orderBean.setAmount(getRefundAmount(orderBean,isRefundDeliveryFee).longValue());
// }
return ResponseUtil.success(); return ResponseUtil.success();
} }
...@@ -418,29 +388,6 @@ public class OrderVerifyHandle { ...@@ -418,29 +388,6 @@ public class OrderVerifyHandle {
} }
/** /**
* 麦咖啡同意退款
*
* @param orderBean
* @param request
* @return
*/
public BaseResponse orderAgreeRefundMCCafe(OrderBeanV1 orderBean, OrderManagerRequest request) {
//已取消的订单不能操作
if (ObjectUtils.equals(OrderStatusV1.CANCEL.getV2Code(), orderBean.getStatusV2())) {
return ResponseUtil.error(ResponseResult.ORDER_HAS_CANCELED);
}
for (RefundBeanV1 refundBean : orderBean.getRefundList()) {
if(RefundStatusV1.APPLY_REFUND.getCodeV1().equals(refundBean.getStatus())) {
return ResponseUtil.success();
}
if(RefundStatusV1.COMPLETE_REFUND.getCodeV1().equals(refundBean.getStatus())) {
return ResponseUtil.error(ResponseResult.AGREE_REFUND_ORDER_FAIL.getCode(), "订单已经退款完成,不能重复申请");
}
}
return ResponseUtil.success();
}
/**
* 拒绝退款 * 拒绝退款
* @param orderBean * @param orderBean
* @param request * @param request
...@@ -511,56 +458,7 @@ public class OrderVerifyHandle { ...@@ -511,56 +458,7 @@ public class OrderVerifyHandle {
return ResponseUtil.success(); return ResponseUtil.success();
} }
/**
* 拒绝退款
* @param orderBean
* @param request
* @return
*/
public BaseResponse mcCafeOrderRejectRefund(OrderBeanV1 orderBean, OrderManagerRequest request) {
//判断当前订单是否发起退款
if (orderBean.getHasRefund() == null || !orderBean.getHasRefund()) {
return ResponseUtil.error(ResponseResult.ORDER_REFUND_NOT_APPLY);
}
if(CollectionUtils.isEmpty(orderBean.getRefundList())) {
return ResponseUtil.error(ResponseResult.ORDER_REFUND_NOT_APPLY);
}
for (RefundBeanV1 refundBean : orderBean.getRefundList()) {
if (ObjectUtils.equals(refundBean.getStatus(), RefundStatus.COMPLETE_REFUND.getCode())) {
return ResponseUtil.error(ResponseResult.ORDER_REJECT_REFUND_REPETITION);
}
if (OrderStatusV1.CANCEL.getV2Code().equals(orderBean.getStatusV2())) {
return ResponseUtil.error(ResponseResult.ORDER_REJECT_REFUND_STATUS_END);
}
if (ObjectUtils.equals(refundBean.getStatus(), RefundStatus.APPLY_REFUND.getCode())) {
break;
}
}
return ResponseUtil.success();
}
/**
* 通用校验
*
* @param orderBean
* @param request
* @return
*/
private BaseResponse commonVerify(OrderBeanV1 orderBean, OrderManagerRequest request) {
if (ObjectUtils.notEqual(orderBean.getCompanyId(), request.getPartnerId())) {
return ResponseUtil.error(ResponseResult.ORDER_PARTNER_ID_NOT_MATCTH, getOrderManagerResponse(orderBean));
}
//开放平台不传入门店
if (ObjectUtils.notEqual(request.getOperator(), OperateClient.OPEN_PLATFORM.getOpName()) && ObjectUtils.notEqual(orderBean.getShopId(), request.getStoreId())) {
return ResponseUtil.error(ResponseResult.ORDER_STORE_ID_NOT_MATCTH, getOrderManagerResponse(orderBean));
}
return ResponseUtil.success();
}
/** /**
* 是否是外卖 * 是否是外卖
...@@ -587,19 +485,65 @@ public class OrderVerifyHandle { ...@@ -587,19 +485,65 @@ public class OrderVerifyHandle {
* *
* @return true=可同意退款 * @return true=可同意退款
*/ */
public boolean getRefundConfig(OrderBeanV1 order) { @Deprecated
return getRefundConfig(order.getCompanyId(), order.getOrderType(), order.getBizType(), public boolean getRefundConfig(OrderBeanV1 data) {
(int)order.getMarketingType(), order.getStatusV2(), order.getExtInfo()); // [华莱士20210410] 微商城订单判断
if(Objects.equals(BizTypeEnum.MALL.getBizType(),data.getBizType())){
// 除 未支付 拒单 和 取消外,其他可退款
return Stream.of(OrderStatusV1.WAIT_PAY,OrderStatusV1.CANCEL).noneMatch(s -> Objects.equals(data.getStatusV2(),s.getV2Code()));
} }
com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto extInfo = null;
JSONObject jsonObject1 = JSONObject.parseObject(data.getExtInfo());
extInfo = jsonObject1.toJavaObject(com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto.class);
/** // 查询小程序配置的退款设置
* 订单退款配置查询 String redisKey = MessageFormat.format(OrderRedisKeyConstant.ORDER_REFUND_CONFIG, data.getCompanyId(), extInfo.getAppid());
* String hashKey;
* @return true=可同意退款 if(MarketTypeEnum.CASHIER.getIndex().byteValue() == data.getMarketingType()){
*/ //收银单,使用收银单的退款配置
public boolean getRefundConfig(OrderInfoReqs order) { hashKey = OrderRedisKeyConstant.HashKeyForOrderRefundConfig.CASHIER;
return getRefundConfig(order.getPartnerId(), order.getOrderType(), order.getBizType(), } else {
order.getMarketingType(), order.getOrderState(), order.getExtInfo()); hashKey = OrderType.TAKE_OUT.getCode().equals(data.getOrderType())
? OrderRedisKeyConstant.HashKeyForOrderRefundConfig.TAKE_OUT
: OrderRedisKeyConstant.HashKeyForOrderRefundConfig.EAT_IN;
}
String configStr = redisCache.hashGet(redisKey, hashKey);
if (StringUtils.isEmpty(configStr)) {
return true;
}
OrderRefundConfigEntity config = JSON.parseObject(configStr, OrderRefundConfigEntity.class);
String orderRefund = null;
if(MarketTypeEnum.CASHIER.getIndex().byteValue() == data.getMarketingType()){
//收银单,使用收银单的退款配置 收银单只有完成的订单,直接判断是否可以退款就行
orderRefund = config.getCashierOrderRefund();
} else if (OrderType.TAKE_OUT.getCode().equals(data.getOrderType())) {
//外卖单,使用外卖单的退款配置
switch (data.getStatus()) {
// 未接单
case 1: orderRefund = config.getDeliveryTakeOrderRefund(); break;
//已接单
case 3: orderRefund = config.getDeliveryReceiptOrderRefund(); break;
//制作完成
case 31: orderRefund = config.getDeliveryCompleteMakeOrderRefund(); break;
// 订单完成
case 5: orderRefund = config.getDeliveryOrderRefund(); break;
default: break;
}
} else {
//其他,使用堂食的退款配置(必须先判断收银单,因为收银单的类型也是堂食,只是orderClient不一样
switch (data.getStatus()) {
// 未接单
case 1: orderRefund = config.getTakeOrderRefund(); break;
//已接单
case 3: orderRefund = config.getReceiptOrderRefund(); break;
//制作完成
case 31: orderRefund = config.getCompleteMakeOrderRefund(); break;
// 订单完成
case 5: orderRefund = config.getOrderRefund(); break;
default: break;
}
}
return ALLOW_REFUND.equals(orderRefund);
} }
/** /**
...@@ -607,22 +551,22 @@ public class OrderVerifyHandle { ...@@ -607,22 +551,22 @@ public class OrderVerifyHandle {
* *
* @return true=可同意退款 * @return true=可同意退款
*/ */
private boolean getRefundConfig(String partnerId, Integer orderType, Integer bizType, Integer marketType, Integer orderState, String extStr) { public boolean getRefundConfig(OrderInfoReqs order) {
// [华莱士20210410] 微商城订单判断 // 微商城订单判断
if(Objects.equals(BizTypeEnum.MALL.getBizType(), bizType)){ if(Objects.equals(BizTypeEnum.MALL.getBizType(),order.getBizType())){
// 除 未支付 拒单 和 取消外,其他可退款 // 除 未支付 拒单 和 取消外,其他可退款
return Stream.of(OrderStatusV1.WAIT_PAY,OrderStatusV1.CANCEL).noneMatch(s -> Objects.equals(orderState,s.getV2Code())); return Stream.of(NewOrderStatus.PENDING_PAYMENT, NewOrderStatus.CLOSED)
.noneMatch(s -> Objects.equals(order.getOrderState(), s.getIndex()));
} }
OrderExtInfoDto extInfo = JSON.parseObject(extStr, OrderExtInfoDto.class); OrderExtInfoDto extInfo = JSON.parseObject(order.getExtInfo(), OrderExtInfoDto.class);
// 查询小程序配置的退款设置 // 查询小程序配置的退款设置
String redisKey = MessageFormat.format(OrderRedisKeyConstant.ORDER_REFUND_CONFIG, partnerId, extInfo.getAppid()); String redisKey = MessageFormat.format(OrderRedisKeyConstant.ORDER_REFUND_CONFIG, order.getPartnerId(), extInfo.getAppid());
String hashKey; String hashKey;
if(MarketTypeEnum.CASHIER.getIndex().equals(marketType)){ if(MarketTypeEnum.CASHIER.getIndex().byteValue() == order.getMarketingType()){
//收银单,使用收银单的退款配置 //收银单,使用收银单的退款配置
hashKey = OrderRedisKeyConstant.HashKeyForOrderRefundConfig.CASHIER; hashKey = OrderRedisKeyConstant.HashKeyForOrderRefundConfig.CASHIER;
} else { } else {
hashKey = OrderType.TAKE_OUT.getCode().equals(orderType) hashKey = NewOrderType.isDelivery(order.getOrderType())
? OrderRedisKeyConstant.HashKeyForOrderRefundConfig.TAKE_OUT ? OrderRedisKeyConstant.HashKeyForOrderRefundConfig.TAKE_OUT
: OrderRedisKeyConstant.HashKeyForOrderRefundConfig.EAT_IN; : OrderRedisKeyConstant.HashKeyForOrderRefundConfig.EAT_IN;
} }
...@@ -632,16 +576,14 @@ public class OrderVerifyHandle { ...@@ -632,16 +576,14 @@ public class OrderVerifyHandle {
} }
OrderRefundConfigEntity config = JSON.parseObject(configStr, OrderRefundConfigEntity.class); OrderRefundConfigEntity config = JSON.parseObject(configStr, OrderRefundConfigEntity.class);
String orderRefund = null; String orderRefund = null;
if(MarketTypeEnum.CASHIER.getIndex().byteValue() == marketType){ if(MarketTypeEnum.CASHIER.getIndex().byteValue() == order.getMarketingType()){
//收银单,使用收银单的退款配置 收银单只有完成的订单,直接判断是否可以退款就行 //收银单,使用收银单的退款配置 收银单只有完成的订单,直接判断是否可以退款就行
orderRefund = config.getCashierOrderRefund(); orderRefund = config.getCashierOrderRefund();
} else if (OrderType.TAKE_OUT.getCode().equals(orderType)) { } else if (NewOrderType.isDelivery(order.getOrderType())) {
//外卖单,使用外卖单的退款配置 //外卖单,使用外卖单的退款配置
switch (orderState) { switch (order.getOrderState()) {
// 未接单 // 未接单
case 1: case 2: orderRefund = config.getDeliveryTakeOrderRefund(); break;
case 2:
orderRefund = config.getDeliveryTakeOrderRefund(); break;
//已接单 //已接单
case 3: orderRefund = config.getDeliveryReceiptOrderRefund(); break; case 3: orderRefund = config.getDeliveryReceiptOrderRefund(); break;
//制作完成 //制作完成
...@@ -652,11 +594,9 @@ public class OrderVerifyHandle { ...@@ -652,11 +594,9 @@ public class OrderVerifyHandle {
} }
} else { } else {
//其他,使用堂食的退款配置(必须先判断收银单,因为收银单的类型也是堂食,只是orderClient不一样 //其他,使用堂食的退款配置(必须先判断收银单,因为收银单的类型也是堂食,只是orderClient不一样
switch (orderState) { switch (order.getOrderState()) {
// 未接单 // 未接单
case 1: case 2: orderRefund = config.getTakeOrderRefund(); break;
case 2:
orderRefund = config.getTakeOrderRefund(); break;
//已接单 //已接单
case 3: orderRefund = config.getReceiptOrderRefund(); break; case 3: orderRefund = config.getReceiptOrderRefund(); break;
//制作完成 //制作完成
...@@ -675,44 +615,19 @@ public class OrderVerifyHandle { ...@@ -675,44 +615,19 @@ public class OrderVerifyHandle {
*/ */
public BigDecimal getRefundAmount(OrderBeanV1 data,boolean isRefundDeliveryFee) { public BigDecimal getRefundAmount(OrderBeanV1 data,boolean isRefundDeliveryFee) {
//是否配置已完成订单可退款 //是否配置已完成订单可退款
BigDecimal refundAmount = new BigDecimal(data.getAmount()); return new BigDecimal(data.getAmount());
// if (isRefundDeliveryFee || isPayBySVC(data)){
// return refundAmount;
// }
// List<AccountBeanV1> accountList = data.getAccountList();
// if (CollectionUtils.isNotEmpty(accountList)) {
// for (AccountBeanV1 orderCostResp : accountList) {
// if (orderCostResp.getType() == OldOrderAccountType.DELIVERY_AMOUNT.getCode()) {
// refundAmount = new BigDecimal(data.getAmount().intValue() - orderCostResp.getPrice());
// }
// }
// }
return refundAmount;
}
/**
* 订单是否使用储值卡支付(储值卡支付的订单,不支持部分退款)
*
* @param order
* @return true-是,false-不是
*/
private boolean isPayBySVC(OrderBeanV1 order) {
return PAY_CODE_10102.equalsIgnoreCase(order.getPayChannel());
} }
/** /**
* 需要三方配送的saas外卖 * 需要三方配送的saas外卖
* @param orderBean * @param orderBean
* @return * @return
*/ */
private boolean checkSaasWm(OrderBeanV1 orderBean) { private boolean checkSaasWm(OrderBeanV1 orderBean) {
// return 1 == orderBean.getOrderType()
if (1 == orderBean.getOrderType()
&& OrderSourceV1.SAAS.getCode().equals(orderBean.getSource()) && OrderSourceV1.SAAS.getCode().equals(orderBean.getSource())
&& THIRD.equalsIgnoreCase(orderBean.getAddInfo().getDeliveryType())) { && THIRD.equalsIgnoreCase(orderBean.getAddInfo().getDeliveryType());
return true;
} else {
return false;
}
} }
private boolean verifyThirdFlow(OrderBeanV1 orderBean,OrderManagerRequest request) { private boolean verifyThirdFlow(OrderBeanV1 orderBean,OrderManagerRequest request) {
// 运单异常 运单取消 正常的运单是不允许手工操作流转的 // 运单异常 运单取消 正常的运单是不允许手工操作流转的
...@@ -742,20 +657,6 @@ public class OrderVerifyHandle { ...@@ -742,20 +657,6 @@ public class OrderVerifyHandle {
if (orderBean.getHasRefund() == null || !orderBean.getHasRefund()) { if (orderBean.getHasRefund() == null || !orderBean.getHasRefund()) {
return ResponseUtil.error(ResponseResult.ORDER_REFUND_NOT_APPLY); return ResponseUtil.error(ResponseResult.ORDER_REFUND_NOT_APPLY);
} }
// //订单是否支持退款
// boolean isCanRefund = false;
// //订单
// boolean isRefundDeliveryFee=false;
// //saas渠道订单,已完成的订单不能操作, 商户配置已完成订单可退款可退款
// if (ObjectUtils.equals(orderBean.getBizType(), BizTypeEnum.MALL.getBizType())) {
// 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(); return ResponseUtil.success();
} }
......
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