From c615b9c504d6bf6f51a600d9e8c056b0321240fb Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 28 二月 2025 12:01:03 +0800 Subject: [PATCH] 修改会员折扣退款bug --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java | 16 +++++++++++++++- 1 files changed, 15 insertions(+), 1 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java index f25778c..3665af1 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java @@ -187,7 +187,15 @@ break; } } + + List<Long> appUserIds = list.stream().map(TActivityStatisticslVO::getAppUserId).collect(Collectors.toList()); + List<TAppUser> appUsers = appUserClient.getUserByIds(appUserIds).getData(); + for (TActivityStatisticslVO tActivityStatisticslVO : list) { + TAppUser appUser = appUsers.stream().filter(user -> user.getId().equals(tActivityStatisticslVO.getAppUserId())).findFirst().orElse(null); + if(Objects.nonNull(appUser)){ + tActivityStatisticslVO.setPhone(appUser.getPhone()); + } // 判断享有了哪些类型 switch (tActivityStatisticslVO.getOrderType()){ case 1: @@ -443,10 +451,16 @@ amount.setTotal(shoppingOrder.getPaymentAmount().multiply(new BigDecimal(100)).intValue()); amount.setCurrency("CNY"); model.setAmount(amount); - R<String> orderR = wxPaymentClient.refundOrderR(model); + R<Map<String, Object>> orderR = wxPaymentClient.refundOrderR(model); if(200 == orderR.getCode()){ this.updateById(shoppingOrder); shoppingOrderRefundService.save(shoppingOrderRefund); + //手续费 + Map<String, Object> amount1 = (Map<String, Object>) orderR.getData().get("amount"); + Object refund_fee1 = amount1.get("refund_fee"); + BigDecimal refund_fee = new BigDecimal(null == refund_fee1 ? "0" : refund_fee1.toString()).divide(new BigDecimal(100)); + shoppingOrderRefund.setRefundFee(refund_fee); + shoppingOrderRefundService.updateById(shoppingOrderRefund); } } if(2 == paymentType){ -- Gitblit v1.7.1