1
0
lhm 3 лет назад
Родитель
Сommit
1f6ffa9ffa

+ 3 - 3
kmall-admin/src/main/java/com/kmall/admin/service/impl/OrderServiceImpl.java

@@ -2619,7 +2619,7 @@ public class OrderServiceImpl implements OrderService {
                             orderGiftScoreRulesVo.setGenerateType(Constants.MemberScoreRulesEnum.TWO.getCode());
                             if (ratio.compareTo(BigDecimal.ZERO) > 0) {
                                 // 算出所积的分
-                                int giftScore = money.multiply(ratio).add(new BigDecimal(memberScore.get())).intValue();
+                                int giftScore = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR).add(new BigDecimal(memberScore.get())).intValue();
                                 memberScore.set(giftScore);
                                 orderGiftScoreRulesVo.setGiftScore(giftScore);
                                 orderGiftScoreRulesVo.setGenerateRatio(ratio);
@@ -2649,7 +2649,7 @@ public class OrderServiceImpl implements OrderService {
                                     BigDecimal money = goodsMap.get(sku);
                                     if (ratio.compareTo(BigDecimal.ZERO) > 0) {
                                         // 算出所积的分
-                                        int giftScore = money.multiply(ratio).add(new BigDecimal(memberScore.get())).intValue();
+                                        int giftScore = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR).add(new BigDecimal(memberScore.get())).intValue();
                                         memberScore.set(giftScore);
                                         orderGiftScoreRulesVo.setGiftScore(giftScore);
                                         orderGiftScoreRulesVo.setGenerateRatio(ratio);
@@ -2678,7 +2678,7 @@ public class OrderServiceImpl implements OrderService {
                                 BigDecimal money = goodsMap.get(sku);
                                 if (ratio.compareTo(BigDecimal.ZERO) != 0) {
                                     // 算出所积的分
-                                    int giftScore = money.multiply(ratio).add(new BigDecimal(memberScore.get())).intValue();
+                                    int giftScore = money.multiply(ratio).setScale(0, BigDecimal.ROUND_FLOOR).add(new BigDecimal(memberScore.get())).intValue();
                                     memberScore.set(giftScore);
                                     orderGiftScoreRulesVo.setGiftScore(giftScore);
                                     orderGiftScoreRulesVo.setGenerateRatio(ratio);