From 237b1f3b8806bed08e4bda512e3339586585b8d3 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Fri, 17 Oct 2025 13:34:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E8=B4=B9=E8=BF=94=E7=8E=B0=20?= =?UTF-8?q?=E5=80=92=E5=8F=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/MkConsumeCashbackServiceImpl.java | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkConsumeCashbackServiceImpl.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkConsumeCashbackServiceImpl.java index 7e065228..5476196b 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkConsumeCashbackServiceImpl.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkConsumeCashbackServiceImpl.java @@ -36,14 +36,14 @@ import java.util.List; import java.util.stream.Collectors; /** - * 服务层实现。 + * 服务层实现。 * * @author zs * @since 2025-10-13 */ @Slf4j @Service -public class MkConsumeCashbackServiceImpl extends ServiceImpl implements MkConsumeCashbackService{ +public class MkConsumeCashbackServiceImpl extends ServiceImpl implements MkConsumeCashbackService { @DubboReference private ShopInfoService shopInfoService; @DubboReference @@ -79,7 +79,7 @@ public class MkConsumeCashbackServiceImpl extends ServiceImpl cashbackStepList = config.getCashbackStepList(); log.info("消费返现2, orderId: {}, cashbackStepList:{}", orderId, cashbackStepList); if (CollUtil.isNotEmpty(cashbackStepList)) { - config.setCashbackStepList(cashbackStepList.stream().sorted(Comparator.comparing(MkConsumeCashbackStep::getAmount)).collect(Collectors.toList())); + config.setCashbackStepList(cashbackStepList.stream().sorted(Comparator.comparing(MkConsumeCashbackStep::getAmount).reversed()).collect(Collectors.toList())); for (MkConsumeCashbackStep cashbackStep : cashbackStepList) { log.info("消费返现3, cashbackStep: {}, userId: {}, amount: {}, orderId: {}", cashbackStep, userId, amount, orderId); - if (cashbackStep.getAmount().compareTo(amount) <= 0 ) { + if (cashbackStep.getAmount().compareTo(amount) <= 0) { BigDecimal cashbackAmount; // 固定金额 if (TableValueConstant.MkConsumeCashback.CashbackType.FIX.getCode().equals(config.getCashbackType())) { cashbackAmount = cashbackStep.getCashbackAmount(); - }else { + } else { cashbackAmount = amount.multiply(cashbackStep.getCashbackAmount().divide(BigDecimal.valueOf(100), RoundingMode.DOWN)); } + if (cashbackAmount.compareTo(BigDecimal.ZERO) > 0) { + return; + } MkConsumeCashbackRecord mkConsumeCashbackRecord = new MkConsumeCashbackRecord().setOrderNo(orderNo).setOrderId(orderId) .setMainShopId(mainShopId).setShopId(shopId).setAmount(amount) .setCashbackAmount(cashbackAmount).setUserId(userId)