Commit b7d92189 by 张跃

购物车价格

parent b3a5f6f0
......@@ -96,7 +96,7 @@ public class TimeSalePromotionService implements IPromotionService {
return;
}
// 商品实际享受优惠的数量: key:skuId; value:实际数量
Map<String, Integer> numberMap = new HashMap<>();
// Map<String, Integer> numberMap = new HashMap<>();
Map<String, ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods> goodsMap = goodsList.parallelStream()
.collect(Collectors.toMap(ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods::getCartGoodsUid, Function.identity(), (k1, k2) -> k1));
......@@ -111,21 +111,21 @@ public class TimeSalePromotionService implements IPromotionService {
continue;
}
if (numberMap.get(cartGoods.getSkuId()) == null) {
numberMap.put(cartGoods.getSkuId(), goods.getActualGoodsNumber());
}
Integer actualGoodsNumber = numberMap.get(cartGoods.getSkuId());
// if (numberMap.get(cartGoods.getSkuId()) == null) {
// numberMap.put(cartGoods.getSkuId(), goods.getActualGoodsNumber());
// }
Integer actualGoodsNumber = goodsDiscount.getActualGoodsNumber();
if (actualGoodsNumber > 0) {
Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goodsDiscount.getDiscount() * actualGoodsNumber / goodsDiscount.getActualGoodsNumber() : goodsDiscount.getDiscount() * cartGoods.getQty() / goodsDiscount.getActualGoodsNumber();
// Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goodsDiscount.getDiscount() * actualGoodsNumber / goodsDiscount.getActualGoodsNumber() : goodsDiscount.getDiscount() * cartGoods.getQty() / goodsDiscount.getActualGoodsNumber();
//Long totalDiscountAmount = cartGoods.getQty() > actualGoodsNumber ? goods.getDiscountAmount() * actualGoodsNumber / goods.getActualGoodsNumber() : goods.getDiscountAmount() * cartGoods.getQty() / goods.getActualGoodsNumber();
ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto();
activityDiscountsDto.setActivityCode(goodsDiscount.getActivityCode());
activityDiscountsDto.setActivityName(goodsDiscount.getActivityName());
activityDiscountsDto.setActivityType(ActivityTypeEnum.TYPE_2.getCode());
activityDiscountsDto.setDiscountAmount(totalDiscountAmount.intValue());
activityDiscountsDto.setDiscountAmount(goodsDiscount.getDiscount().intValue());
cartGoods.getActivityDiscountsDtos().add(activityDiscountsDto);
cartGoods.setTotalDiscountAmount(cartGoods.getTotalDiscountAmount() + totalDiscountAmount.intValue());
numberMap.put(cartGoods.getSkuId(), actualGoodsNumber - cartGoods.getQty());
cartGoods.setTotalDiscountAmount(cartGoods.getTotalDiscountAmount() + goodsDiscount.getDiscount().intValue());
// numberMap.put(cartGoods.getSkuId(), actualGoodsNumber - cartGoods.getQty());
} else {
cartGoods.setTotalDiscountAmount(0);
}
......
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