Commit b48d0edef090a1dcddb88c1458854e3777154b98

Authored by 痴货
1 parent d0b60bf9

【BUG】解决退款时找不到appkey的问题

yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/convert/aftersale/AfterSaleConvert.java
@@ -37,7 +37,7 @@ public interface AfterSaleConvert { @@ -37,7 +37,7 @@ public interface AfterSaleConvert {
37 @Mapping(target = "creator", ignore = true), 37 @Mapping(target = "creator", ignore = true),
38 @Mapping(target = "updater", ignore = true), 38 @Mapping(target = "updater", ignore = true),
39 }) 39 })
40 - AfterSaleDO convert(AppAfterSaleCreateReqVO createReqVO, TradeOrderItemDO tradeOrderItem); 40 + PayRefundCreateReqDTO convert(String userIp, AfterSaleDO afterSale);
41 41
42 @Mappings({ 42 @Mappings({
43 @Mapping(source = "afterSale.orderId", target = "merchantOrderId"), 43 @Mapping(source = "afterSale.orderId", target = "merchantOrderId"),
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/aftersale/AfterSaleServiceImpl.java
@@ -371,8 +371,9 @@ public class AfterSaleServiceImpl implements AfterSaleService { @@ -371,8 +371,9 @@ public class AfterSaleServiceImpl implements AfterSaleService {
371 @Override 371 @Override
372 public void afterCommit() { 372 public void afterCommit() {
373 // 创建退款单 373 // 创建退款单
374 - PayRefundCreateReqDTO createReqDTO = AfterSaleConvert.INSTANCE.convert(userIp, afterSale, tradeOrderProperties) 374 + PayRefundCreateReqDTO createReqDTO = AfterSaleConvert.INSTANCE.convert(userIp, afterSale)
375 .setReason(StrUtil.format("退款【{}】", afterSale.getSpuName())); 375 .setReason(StrUtil.format("退款【{}】", afterSale.getSpuName()));
  376 + createReqDTO.setAppKey(tradeOrderProperties.getPayAppKey());
376 Long payRefundId = payRefundApi.createRefund(createReqDTO); 377 Long payRefundId = payRefundApi.createRefund(createReqDTO);
377 // 更新售后单的退款单号 378 // 更新售后单的退款单号
378 tradeAfterSaleMapper.updateById(new AfterSaleDO().setId(afterSale.getId()).setPayRefundId(payRefundId)); 379 tradeAfterSaleMapper.updateById(new AfterSaleDO().setId(afterSale.getId()).setPayRefundId(payRefundId));