diff --git a/mall-common/src/main/java/com/suisung/mall/common/api/StateCode.java b/mall-common/src/main/java/com/suisung/mall/common/api/StateCode.java index 375826cc..4e7d9202 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/api/StateCode.java +++ b/mall-common/src/main/java/com/suisung/mall/common/api/StateCode.java @@ -276,12 +276,12 @@ public class StateCode { public static final int ORDER_PROCESS_FINISH = 3098; //完成1OrderOrder public static final HashMap RETURN_PROCESS_MAP = new HashMap(); - public static final int RETURN_PROCESS_SUBMIT = 3100; //【客户】提交退单1ReturnReturn - public static final int RETURN_PROCESS_CHECK = 3105; //退单审核1ReturnReturn - public static final int RETURN_PROCESS_RECEIVED = 3110; //收货确认0ReturnReturn - public static final int RETURN_PROCESS_REFUND = 3115; //退款确认0ReturnReturn - public static final int RETURN_PROCESS_RECEIPT_CONFIRMATION = 3120; //【客户】收款确认0ReturnReturn - public static final int RETURN_PROCESS_FINISH = 3125; //完成1ReturnReturn3130-商家拒绝退货 + public static final int RETURN_PROCESS_SUBMIT = 3100; //【客户】提交退单1 + public static final int RETURN_PROCESS_CHECK = 3105; //退单审核1 + public static final int RETURN_PROCESS_RECEIVED = 3110; //收货确认0 + public static final int RETURN_PROCESS_REFUND = 3115; //退款确认0 + public static final int RETURN_PROCESS_RECEIPT_CONFIRMATION = 3120; //【客户】收款确认0 + public static final int RETURN_PROCESS_FINISH = 3125; //完成1 public static final int RETURN_PROCESS_REFUSED = 3130; //-商家拒绝退货 public static final int RETURN_PROCESS_CANCEL = 3135; //-买家取消 diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderReturnServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderReturnServiceImpl.java index d913a305..50db75eb 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderReturnServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderReturnServiceImpl.java @@ -2221,7 +2221,7 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl= StateCode.ORDER_STATE_SHIPPED) { return CommonResult.failed("订单状态,无法退款"); } @@ -2232,10 +2232,10 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl() - .eq("order_id", orderId) - .ne("return_state_id", StateCode.RETURN_PROCESS_CANCEL))); + ShopOrderReturn refundOrder = findOne(new QueryWrapper() + .eq("order_id", orderId) + .eq("return_state_id", StateCode.RETURN_PROCESS_CHECK).orderByDesc("return_id")); + Boolean hasRefundRecord = refundOrder != null; // === 4. 处理退货商品信息 === OrderReturnInputVo partialRefund = null; @@ -2269,7 +2269,7 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl().eq("order_id", orderId)); - if (refundOrder == null) { - return CommonResult.failed("退货单创建失败"); - } +// refundOrder = findOne(new QueryWrapper().eq("order_id", orderId).ne("return_state_id", StateCode.RETURN_PROCESS_CANCEL).orderByDesc("order_id")); +// if (refundOrder == null) { +// return CommonResult.failed("退款单创建失败"); +// } + } + + // === 6.1. 获取退货订单 === + refundOrder = findOne(new QueryWrapper().eq("order_id", orderId).eq("return_state_id", StateCode.RETURN_PROCESS_CHECK).orderByDesc("return_id")); + if (refundOrder == null) { + return CommonResult.failed("退款单创建失败"); } - // === 6. 处理退货 === - refundOrder = refundOrder != null ? refundOrder : - findOne(new QueryWrapper().eq("order_id", orderId)); refundOrder.setReturn_flag(0); refundOrder.setReturn_store_message(reason); refundOrder.setReturn_buyer_message(reason); logger.info("商家退款订单:{}", JSONUtil.toJsonStr(refundOrder)); + // === 6.2 处理退货 === if (!processReviewList(refundOrder, 0)) { return CommonResult.failed("退款处理失败"); }