满减金额 增加餐位费和打包费
This commit is contained in:
@@ -473,7 +473,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
||||
param.setNewCustomerDiscountAmount(BigDecimal.ZERO);
|
||||
}
|
||||
//满减活动
|
||||
BigDecimal discountActAmount = calculateDiscountActAmount(orderDetails, discountAct);
|
||||
BigDecimal discountActAmount = calculateDiscountActAmount(orderDetails, discountAct, packAmount.getPrice(), orderInfo.getSeatAmount());
|
||||
if (discountActAmount.compareTo(param.getDiscountActAmount()) != 0) {
|
||||
log.info("满减活动金额不正确:传递为:{},计算为:{}", param.getDiscountActAmount(), discountActAmount);
|
||||
throw new ValidateException("生成支付订单失败,满减活动金额不正确");
|
||||
@@ -909,7 +909,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
||||
/**
|
||||
* 满减活动 校验门槛获取减免金额
|
||||
*/
|
||||
private BigDecimal calculateDiscountActAmount(List<OrderDetail> orderDetails, MkDiscountActivityDTO discountAct) {
|
||||
private BigDecimal calculateDiscountActAmount(List<OrderDetail> orderDetails, MkDiscountActivityDTO discountAct, BigDecimal packPrice, BigDecimal seatPrice) {
|
||||
if (discountAct == null) {
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
@@ -920,7 +920,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
||||
}
|
||||
originalPrice = originalPrice.add(orderDetail.getPayAmount());
|
||||
}
|
||||
log.info("满减活动门槛金额计算为:{}", originalPrice);
|
||||
originalPrice = originalPrice.add(packPrice).add(seatPrice);
|
||||
for (MkDiscountThreshold threshold : discountAct.getThresholds()) {
|
||||
if (originalPrice.compareTo(threshold.getFullAmount()) >= 0) {
|
||||
return threshold.getDiscountAmount();
|
||||
|
||||
Reference in New Issue
Block a user