From 14d67508d21d18e4b8d8d5874efe9ef946115b04 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Fri, 16 May 2025 14:17:45 +0800 Subject: [PATCH] fix(mall): 修复订单积分计算错误 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java index c8a99ec..114fdcc 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java @@ -317,6 +317,7 @@ for (AddOrderItemDto item : items) { Long skuId = item.getSkuId(); + Integer cnt = item.getCnt(); MallGoodsSku sku = skusAll.stream().filter(s -> s.getId().equals(skuId)).findFirst().orElse(null); if (ObjectUtil.isNotEmpty(sku)) { Long goodsId = sku.getGoodsId(); @@ -324,7 +325,7 @@ if (ObjectUtil.isNotEmpty(mallGoods)) { BigDecimal multi = mallGoods.getStaticProp().divide(BigDecimal.valueOf(100), 4, RoundingMode.HALF_DOWN); //获取该商品该规格的积分 - BigDecimal scoreAmount = sku.getOriginalPrice().multiply(multi).setScale(0, RoundingMode.HALF_DOWN); + BigDecimal scoreAmount = sku.getOriginalPrice().multiply(multi).multiply(new BigDecimal(cnt)).setScale(0, RoundingMode.HALF_DOWN); scoreAmountMap.put(skuId, scoreAmount); } } -- Gitblit v1.9.1