退款问题

This commit is contained in:
2025-11-24 14:54:17 +08:00
parent c8b9a82d33
commit 2d8c14a77a

View File

@@ -1,9 +1,7 @@
package com.czg.service.order.service.impl; package com.czg.service.order.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.exceptions.ValidateException;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil; import cn.hutool.crypto.SecureUtil;
@@ -20,27 +18,29 @@ import com.czg.enums.ShopUserFlowBizEnum;
import com.czg.exception.CzgException; import com.czg.exception.CzgException;
import com.czg.exception.PaySuccessException; import com.czg.exception.PaySuccessException;
import com.czg.market.dto.MemberOrderDTO; import com.czg.market.dto.MemberOrderDTO;
import com.czg.market.entity.MemberOrder;
import com.czg.market.entity.MkShopCouponRecord; import com.czg.market.entity.MkShopCouponRecord;
import com.czg.market.entity.MkShopRecharge;
import com.czg.market.entity.MkShopRechargeDetail; import com.czg.market.entity.MkShopRechargeDetail;
import com.czg.market.service.*; import com.czg.market.service.*;
import com.czg.market.vo.MkShopRechargeVO; import com.czg.market.vo.MkShopRechargeVO;
import com.czg.order.dto.BigDecimalDTO;
import com.czg.order.dto.CheckOrderPay; import com.czg.order.dto.CheckOrderPay;
import com.czg.order.dto.OrderInfoRefundDTO; import com.czg.order.dto.OrderInfoRefundDTO;
import com.czg.market.entity.MemberOrder;
import com.czg.order.entity.OrderDetail; import com.czg.order.entity.OrderDetail;
import com.czg.order.entity.OrderInfo; import com.czg.order.entity.OrderInfo;
import com.czg.order.entity.OrderPayment; import com.czg.order.entity.OrderPayment;
import com.czg.order.enums.PayEnums; import com.czg.order.enums.PayEnums;
import com.czg.order.service.*; import com.czg.order.service.CreditBuyerOrderService;
import com.czg.order.service.OrderDetailService;
import com.czg.order.service.OrderInfoService;
import com.czg.order.service.OrderPaymentService;
import com.czg.resp.CzgRespCode; import com.czg.resp.CzgRespCode;
import com.czg.resp.CzgResult; import com.czg.resp.CzgResult;
import com.czg.sa.StpKit;
import com.czg.service.CzgPayService; import com.czg.service.CzgPayService;
import com.czg.service.RedisService; import com.czg.service.RedisService;
import com.czg.service.market.service.impl.MemberOrderServiceImpl; import com.czg.service.order.dto.OrderPayParamDTO;
import com.czg.service.order.dto.*; import com.czg.service.order.dto.VipMemberPayParamDTO;
import com.czg.service.order.dto.VipPayParamDTO;
import com.czg.service.order.dto.VipRefundDTO;
import com.czg.service.order.enums.OrderStatusEnums; import com.czg.service.order.enums.OrderStatusEnums;
import com.czg.service.order.mapper.OrderPaymentMapper; import com.czg.service.order.mapper.OrderPaymentMapper;
import com.czg.service.order.service.PayService; import com.czg.service.order.service.PayService;
@@ -58,7 +58,6 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
@@ -722,12 +721,12 @@ public class PayServiceImpl implements PayService {
} }
orderDetail.setRefundNo(refPayOrderNo); orderDetail.setRefundNo(refPayOrderNo);
orderDetail.setRefundRemark(orderDetail.getRefundRemark() + param.getRefundReason()); orderDetail.setRefundRemark(orderDetail.getRefundRemark() + param.getRefundReason());
if (isPay) { // if (isPay) {
orderDetail.setReturnAmount(refundDetail.getReturnAmount().add(refundDetail.getReturnAmount())); orderDetail.setReturnAmount(orderDetail.getReturnAmount().add(refundDetail.getReturnAmount()));
if (orderDetail.getReturnAmount().compareTo(orderDetail.getPayAmount()) > 0) { if (orderDetail.getReturnAmount().compareTo(orderDetail.getPayAmount()) > 0) {
orderDetail.setReturnAmount(orderDetail.getPayAmount()); orderDetail.setReturnAmount(orderDetail.getPayAmount());
} }
} // }
orderDetailService.updateById(orderDetail); orderDetailService.updateById(orderDetail);
if (orderDetail.getProductId() != null && orderDetail.getProductId() > 0) { if (orderDetail.getProductId() != null && orderDetail.getProductId() > 0) {
returnProMap.put(Convert.toStr(orderDetail.getProductId()), refundDetail.getNum()); returnProMap.put(Convert.toStr(orderDetail.getProductId()), refundDetail.getNum());