|
@@ -4696,6 +4696,8 @@ public class OrderServiceImpl implements OrderService {
|
|
|
BigDecimal shareScore = BigDecimal.ZERO;
|
|
|
// 取整后的积分数量
|
|
|
BigDecimal scoreIntegerDecimal = BigDecimal.valueOf(scoreInteger);
|
|
|
+ // 计算积分能抵扣的金额
|
|
|
+ BigDecimal scoreCanDeductionPrice = scoreIntegerDecimal.divide(BigDecimal.valueOf(scoreLimit), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
// 订单详情积分抵扣总金额
|
|
|
BigDecimal goodsDetailScoreDeductionPrice = BigDecimal.ZERO;
|
|
|
int size = goodsDetailsDtos.size();
|
|
@@ -4735,7 +4737,9 @@ public class OrderServiceImpl implements OrderService {
|
|
|
if (i == index && size > 1) {// 商品总价
|
|
|
// 最后一个商品分摊积分 = 积分总数 - 已分摊积分
|
|
|
shareScoreItem = scoreIntegerDecimal.subtract(shareScore);
|
|
|
- discountedPrice = shareScoreItem.divide(BigDecimal.valueOf(scoreLimit), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
+// discountedPrice = shareScoreItem.divide(BigDecimal.valueOf(scoreLimit), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
+ // 2021-12-13最后一个商品修改计算方式,原计算方式:(总抵扣积分 - 已分摊积分) / 30,改为:积分能抵扣的金额 - 已抵扣金额
|
|
|
+ discountedPrice = scoreCanDeductionPrice.subtract(goodsDetailScoreDeductionPrice);
|
|
|
}
|
|
|
// 订单商品详情只有一个商品的情况下
|
|
|
if (size == 1) {
|