From 12523f13da4b7c46ef9033f1f36bb57b530d91d3 Mon Sep 17 00:00:00 2001 From: Jack <46790855@qq.com> Date: Tue, 21 Oct 2025 10:35:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=A6=81=E6=AD=A2=E9=80=80?= =?UTF-8?q?=E8=B4=A7=E7=9A=84=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/order/dto/MchOrderInfoDTO.java | 4 +- .../modules/order/dto/MchOrderItemDTO.java | 3 ++ .../order/service/ShopOrderReturnService.java | 24 ++++++++++++ .../impl/ShopOrderBaseServiceImpl.java | 10 +++++ .../impl/ShopOrderReturnServiceImpl.java | 38 ++++++++++++------- 5 files changed, 64 insertions(+), 15 deletions(-) diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderInfoDTO.java b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderInfoDTO.java index 05f732dc..cdfdf29b 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderInfoDTO.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderInfoDTO.java @@ -91,6 +91,6 @@ public class MchOrderInfoDTO implements Serializable { private BigDecimal order_income_amount; @ApiModelProperty(value = "两点距离,单位米") private Integer distance; - - // 快递鸟物流信息 + @ApiModelProperty(value = "是否禁止退款:1-是;2-否;") + private Integer is_deny_return; } diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderItemDTO.java b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderItemDTO.java index dac88fd2..a13b4649 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderItemDTO.java +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/order/dto/MchOrderItemDTO.java @@ -61,4 +61,7 @@ public class MchOrderItemDTO implements Serializable { @ApiModelProperty(value = "退款金额:同意额度") private BigDecimal order_item_return_agree_amount; + + @ApiModelProperty(value = "是否禁止退款:1-是;2-否;") + private Integer is_deny_return; } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderReturnService.java b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderReturnService.java index 4ae76f0f..a64e8d7c 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderReturnService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/ShopOrderReturnService.java @@ -159,6 +159,28 @@ public interface ShopOrderReturnService extends IBaseService { */ boolean ifDenyReturn(Long order_item_id); + /** + * 判断订单中某个商品是否禁止退货 + *

+ * 该方法用于检查指定订单中的特定商品是否允许退货,主要检查以下几种情况: + * 1. 商品是否设置了"禁止退货"的消费者保障标识 + * 2. 订单是否已超过退货期限(已收货或已完成状态,且超过可提现时间) + * 3. 拉卡拉分账订单是否已完成提现 + * + * @param orderId 订单ID + * @param productId 商品ID + * @return boolean true表示禁止退货,false表示允许退货 + */ + boolean ifOrderItemDenyReturn(String orderId, Long productId); + + /** + * 判断订单是否禁止退货 + * + * @param orderId 订单ID + * @return 如果订单禁止退货返回true,否则返回false + */ + boolean isOrderDenyReturn(String orderId); + /** * 该方法用于处理整单退货申请,具体功能如下: * 根据订单ID获取订单信息,若为空则抛异常。 @@ -201,4 +223,6 @@ public interface ShopOrderReturnService extends IBaseService { * @return */ CommonResult doRefundForMch(JSONObject params); + + } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java index 08116afb..a2eea4a7 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/order/service/impl/ShopOrderBaseServiceImpl.java @@ -8947,6 +8947,16 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl { + item.setIs_deny_return(isOrderDenyReturn); + }); + }); return pageList; 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 8f322ac8..4035bf4a 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 @@ -2119,7 +2119,6 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl contractTypeIds = Convert.toList(Integer.class, contractTypeIdsStr); if (contractTypeIds != null && contractTypeIds.contains(StateCode.CONTRACT_TYPE_DENY_RETURN)) { - log.debug("[是否禁止退货] 商品设置了禁止退货标识,order_id: {}, product_id: {}", orderId, shopOrderItem.getProduct_id()); + log.debug("[是否禁止退货] 商品设置了禁止退货标识,order_id: {}, product_id: {}", orderId, productId); return true; } } catch (Exception e) { - log.error("[是否禁止退货] 解析商品保障类型失败,order_id: {}, product_id: {}", orderId, shopOrderItem.getProduct_id(), e); + log.error("[是否禁止退货] 解析商品保障类型失败,order_id: {}, product_id: {}", orderId, productId, e); } } @@ -2211,10 +2216,11 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl 0) { - log.debug("[订单是否禁止退货]订单[{}]已过退货期,不允许退货", orderId); + log.debug("[订单是否禁止退货] 订单:{} 已过退货期,不允许退货", orderId); return true; } } @@ -2245,7 +2257,7 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl