diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java index ac661740..5e0386fb 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java @@ -2831,7 +2831,7 @@ public class TbShopTableServiceImpl implements TbShopTableService { orderDetail.setStatus("refund"); } - if (hasNormalReturn && returnAmount.compareTo(BigDecimal.ZERO) <= 0) { + if (hasNormalReturn && returnAmount.compareTo(new BigDecimal("0.01")) <= 0) { throw new BadRequestException("退款金额必须大于0"); } @@ -2977,19 +2977,21 @@ public class TbShopTableServiceImpl implements TbShopTableService { String couponInfoList = orderInfo.getCouponInfoList(); if (StrUtil.isNotBlank(couponInfoList)) { OrderInfoCouponInfoDTO orderInfoCouponInfoDTO = JSONObject.parseObject(couponInfoList, OrderInfoCouponInfoDTO.class); - int remainNum = 0; - for (OrderInfoUserCouponVo item : orderInfoCouponInfoDTO.getProductCoupon()) { - if (item.getFinalUseNum() > item.getReturnNum()) { - remainNum = remainNum + (item.getFinalUseNum() - item.getReturnNum()); + if (orderInfoCouponInfoDTO.getProductCoupon() != null && !orderInfoCouponInfoDTO.getProductCoupon().isEmpty()) { + int remainNum = 0; + for (OrderInfoUserCouponVo item : orderInfoCouponInfoDTO.getProductCoupon()) { + if (item.getFinalUseNum() > item.getReturnNum()) { + remainNum = remainNum + (item.getFinalUseNum() - item.getReturnNum()); + } } - } - if (remainNum == 0) { - returnCoupon(orderInfo, true); - // 返还积分 - memberPointsService.addPoints(Long.valueOf(orderInfo.getMemberId()), orderInfo.getPointsNum(), - "用户退款订单积分返还: " + orderInfo.getPointsNum() + "积分", Long.valueOf(orderInfo.getId())); + if (remainNum == 0) { + returnCoupon(orderInfo, true); + // 返还积分 + memberPointsService.addPoints(Long.valueOf(orderInfo.getMemberId()), orderInfo.getPointsNum(), + "用户退款订单积分返还: " + orderInfo.getPointsNum() + "积分", Long.valueOf(orderInfo.getId())); + } } } }