Browse Source

fix

release_toaliyun_real
winter 2 years ago
parent
commit
86cd151e53
1 changed files with 15 additions and 0 deletions
  1. +15
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java

+ 15
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java View File

@@ -904,6 +904,21 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService {
logger.error("订单支付金额小于等于0: " + wxOrder.toString());
throw new MallinkException(ErrorCode.REFUND_PAY_ORDER_IS_ZERO);
}
//抖音可能会重复推送,如果是待退款状态,则表示,之前已经回调成功了。无需再次执行下面的逻辑,直接查询就行
if (EnumOrderStatus.ORDER_STATUS_PENDING_REFUND.getCode().equals(wxOrder.getOrderStatus())) {
WxRefundOrder refundOrderQuery = new WxRefundOrder();
refundOrderQuery.updateTenantInfo(tenantEntity);
refundOrderQuery.setOrderId(wxOrder.getId());
refundOrderQuery.setTransactionId(refundOrderCallback.getOrderId());
List<WxRefundOrder> rflist = wxRefundOrderMapper.findList(refundOrderQuery);
if (null == rflist || rflist.size() <= 0 ) {
logger.error("该订单无退款记录:" + wxOrder.getId());
throw new MallinkException(ErrorCode.REFUND_PAY_ORDER_IS_ZERO.getCode(),"该订单无退款记录");
}
return new ResultData(Result.SUCCESS, "退款订单申请成功", rflist.get(0));
}
if(!EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode().equals(wxOrder.getOrderStatus())
&& !EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode().equals(wxOrder.getOrderStatus())){
logger.error("交易订单状态不支持退款:" + EnumOrderStatus.getEnum(wxOrder.getOrderStatus()).getMessage());


Loading…
Cancel
Save