商家主动退款,优化
This commit is contained in:
parent
2eeb79f139
commit
c50803ce54
@ -2186,7 +2186,7 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
||||
}
|
||||
|
||||
/**
|
||||
* 商家处理退货退款(支持全单/部分商品退货)
|
||||
* 商家处理退货退款不退货(支持全单/部分商品退货)
|
||||
*
|
||||
* @param requestParams JSON参数包含:
|
||||
* - order_id: 订单ID (必填)
|
||||
@ -2233,25 +2233,34 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
|
||||
|
||||
// === 4. 处理退货商品信息 ===
|
||||
OrderReturnInputVo partialRefund = null;
|
||||
|
||||
// 不分退款?
|
||||
Boolean isPartialRefund = false;
|
||||
int partialRefundItemCnt = 0;
|
||||
if (StrUtil.isNotBlank(requestParams.getStr("order_return_vo"))) {
|
||||
try {
|
||||
partialRefund = JSONUtil.toBean(requestParams.getStr("order_return_vo"), OrderReturnInputVo.class);
|
||||
isPartialRefund = partialRefund != null && CollectionUtil.isNotEmpty(partialRefund.getReturn_items());
|
||||
partialRefundItemCnt = partialRefund.getReturn_items().size();
|
||||
} catch (Exception e) {
|
||||
return CommonResult.failed("退货商品参数格式错误");
|
||||
}
|
||||
}
|
||||
|
||||
// 获取订单商品项
|
||||
List<ShopOrderItem> orderItems = shopOrderItemService.find(
|
||||
new QueryWrapper<ShopOrderItem>().eq("order_id", orderId));
|
||||
if (CollectionUtil.isEmpty(orderItems)) {
|
||||
return CommonResult.failed("订单没有可退货的商品");
|
||||
}
|
||||
|
||||
if (isPartialRefund && orderItems.size() == partialRefundItemCnt) {
|
||||
isPartialRefund = false;
|
||||
}
|
||||
|
||||
// === 5. 创建退货单(如不存在) ===
|
||||
ShopOrderReturn refundOrder = null;
|
||||
if (!hasRefundRecord) {
|
||||
// 5.1 获取订单商品项
|
||||
List<ShopOrderItem> orderItems = shopOrderItemService.find(
|
||||
new QueryWrapper<ShopOrderItem>().eq("order_id", orderId));
|
||||
if (CollectionUtil.isEmpty(orderItems)) {
|
||||
return CommonResult.failed("订单没有可退货的商品");
|
||||
}
|
||||
|
||||
// 5.2 准备退货请求数据
|
||||
OrderReturnInputVo refundRequest = new OrderReturnInputVo();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user