|
@@ -4709,9 +4709,7 @@ public class OrderServiceImpl implements OrderService {
|
|
|
// 取整后的积分数量
|
|
|
BigDecimal scoreIntegerDecimal = BigDecimal.valueOf(scoreInteger);
|
|
|
// 计算积分能抵扣的金额
|
|
|
- BigDecimal scoreCanDeductionPrice = orderTotalPrice.multiply(new BigDecimal(scoreRatioStr)).setScale(0, BigDecimal.ROUND_FLOOR);
|
|
|
- // 计算最大可抵扣积分
|
|
|
- BigDecimal maxDeductionScore = scoreCanDeductionPrice.multiply(BigDecimal.valueOf(scoreLimit));
|
|
|
+ BigDecimal scoreCanDeductionPrice = scoreIntegerDecimal.divide(BigDecimal.valueOf(scoreLimit), 0, BigDecimal.ROUND_FLOOR);
|
|
|
// 订单详情积分抵扣总金额
|
|
|
BigDecimal goodsDetailScoreDeductionPrice = BigDecimal.ZERO;
|
|
|
int size = goodsDetailsDtos.size();
|
|
@@ -4737,7 +4735,7 @@ public class OrderServiceImpl implements OrderService {
|
|
|
BigDecimal discountedPrice = BigDecimal.ZERO;
|
|
|
// 计算抵扣,当商品不是最后一个商品
|
|
|
if (i < index) {
|
|
|
- shareScoreItem = actualPaymentAmount.divide(skuTotalPrice, 10, BigDecimal.ROUND_HALF_UP).multiply(scoreIntegerDecimal).setScale(0, BigDecimal.ROUND_FLOOR);
|
|
|
+ shareScoreItem = actualPaymentAmount.multiply(scoreIntegerDecimal).divide(skuTotalPrice, 0, BigDecimal.ROUND_FLOOR);
|
|
|
discountedPrice = shareScoreItem.divide(BigDecimal.valueOf(scoreLimit), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
}
|
|
|
// 订单商品详情最后一个商品并且详情不止一个商品
|