Commit 3a4a7525 by 缪晖

直接从促销goods获取均摊总优惠金额

parent 967ad5ee
...@@ -708,7 +708,7 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp ...@@ -708,7 +708,7 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp
updatePackPrice(shoppingCartGoodsResponseVo, shoppingCartGoodsDto); updatePackPrice(shoppingCartGoodsResponseVo, shoppingCartGoodsDto);
// 重新计算购物车行折扣总金额 // 重新计算购物车行折扣总金额
//updateTotalDiscountAmount(shoppingCartGoodsDto); updateTotalDiscountAmount(calculationDiscountResult, shoppingCartGoodsDto);
return ResponseUtil.success(shoppingCartGoodsDto); return ResponseUtil.success(shoppingCartGoodsDto);
} }
...@@ -733,14 +733,15 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp ...@@ -733,14 +733,15 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp
/** /**
* 重新计算拼单购物车行总折扣金额 * 重新计算拼单购物车行总折扣金额
*/ */
private void updateTotalDiscountAmount(ShoppingCartGoodsDto shoppingCartGoodsDto) { private void updateTotalDiscountAmount(ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult, ShoppingCartGoodsDto shoppingCartGoodsDto) {
if (null != shoppingCartGoodsDto && null != shoppingCartGoodsDto.getProducts()) { if (null != shoppingCartGoodsDto && null != shoppingCartGoodsDto.getProducts() && null != calculationDiscountResult.getGoods()) {
shoppingCartGoodsDto.getProducts().stream().forEach(product -> { shoppingCartGoodsDto.getProducts().stream().forEach(product -> {
List<ActivityDiscountsDto> activityDiscountsDtos = product.getActivityDiscountsDtos(); calculationDiscountResult.getGoods().stream().forEach(goods -> {
if (null != activityDiscountsDtos && !activityDiscountsDtos.isEmpty()) { if (goods.getCartGoodsUid().equals(product.getCartGoodsUid())) {
product.setTotalDiscountAmount(activityDiscountsDtos.stream().mapToInt(ActivityDiscountsDto::getDiscountAmount).sum()); product.setTotalDiscountAmount(Integer.valueOf(String.valueOf(goods.getDiscountAmount())));
} }
}); });
});
} }
} }
......
...@@ -81,12 +81,12 @@ public class TwoNDiscountServiceImpl implements IPromotionService { ...@@ -81,12 +81,12 @@ public class TwoNDiscountServiceImpl implements IPromotionService {
return null; return null;
} }
List<ApportionGoodsDetail> list = Lists.newArrayList(); List<ApportionGoodsDetail> list = Lists.newArrayList();
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods apportionGood : calculationDiscountResult.getGoods()) { for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods apportionGood : calculationDiscountResult.getApportionGoods()) {
if (!CollectionUtils.isEmpty(apportionGood.getDiscounts())) { if (!CollectionUtils.isEmpty(apportionGood.getApportionDetails())) {
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount apportionDetail : apportionGood.getDiscounts()) { for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods.ApportionDetails apportionDetail : apportionGood.getApportionDetails()) {
if (apportionDetail.getType().equals(ActivityTypeEnum.TYPE_53.getCode())) { if (apportionDetail.getActivityType().equals(ActivityTypeEnum.TYPE_53.getCode())) {
ApportionGoodsDetail apportionGoodsDetail = new ApportionGoodsDetail(); ApportionGoodsDetail apportionGoodsDetail = new ApportionGoodsDetail();
apportionGoodsDetail.setActivityApportionAmount(apportionDetail.getDiscount()); apportionGoodsDetail.setActivityApportionAmount(apportionDetail.getActivityApportionAmount());
apportionGoodsDetail.setActivityCode(apportionDetail.getActivityCode()); apportionGoodsDetail.setActivityCode(apportionDetail.getActivityCode());
apportionGoodsDetail.setActivityName(apportionDetail.getActivityName()); apportionGoodsDetail.setActivityName(apportionDetail.getActivityName());
apportionGoodsDetail.setGoodsId(apportionGood.getGoodsId()); apportionGoodsDetail.setGoodsId(apportionGood.getGoodsId());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment