Commit bb0db8df by 徐康

购物车问题修改

parent 3c369517
......@@ -152,6 +152,9 @@ public class CouponDiscountCalculation {
||(ActivityTypeEnum.TYPE_31.getCode().equals(discount.getType())) || (ActivityTypeEnum.TYPE_32.getCode().equals(discount.getType())) ))) {
return;
}
Map<String, Integer> extendTypeMap = calculationDiscountResult.getDiscounts().stream()
.collect(Collectors.toMap(ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount::getActivityCode
, ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount::getExtendType, (k1, k2) -> k1));
//订单级别券优惠
List<ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount> couponDiscounts = calculationDiscountResult.getDiscounts();
if (CollectionUtils.isEmpty(couponDiscounts)) {
......@@ -180,21 +183,28 @@ public class CouponDiscountCalculation {
//商品券商品
if (StringUtils.isNotEmpty(cartGoods.getCouponCode()) ) {
List<ActivityDiscountsDto> productActivityDiscountsDtos = new ArrayList<>();
if (CollectionUtils.isNotEmpty(discounts)) {
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount couponDiscount : discounts) {
if (couponDiscount.getActivityCode().equals(cartGoods.getCouponCode())) {
ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto();
activityDiscountsDto.setActivityCode(couponDiscount.getActivityCode());
activityDiscountsDto.setActivityName(couponDiscount.getActivityName());
activityDiscountsDto.setActivityType(couponDiscount.getType());
activityDiscountsDto.setDiscountAmount(0 - couponDiscount.getDiscount());
Integer extendType = couponDiscount.getExtendType();
activityDiscountsDto.setExtendType(extendType);
activityDiscountsDto.setTenderId(goodsMap.get(cartGoods.getCartGoodsUid()).getArtNo());
productActivityDiscountsDtos.add(activityDiscountsDto);
cartGoods.setTotalDiscountAmount(-activityDiscountsDto.getDiscountAmount());
cartGoods.setSalePrice(0L);
cartGoods.setActivityDiscountsDtos(productActivityDiscountsDtos);
if(CollectionUtils.isNotEmpty(calculationDiscountResult.getGoods())) {
for(ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods goods : calculationDiscountResult.getGoods()) {
if(cartGoods.getCartGoodsUid().equals(goods.getCartGoodsUid())) {
List<ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount> goodsDiscounts = goods.getDiscounts();
if(CollectionUtils.isNotEmpty(goodsDiscounts)) {
for(ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount goodsDiscount : goodsDiscounts) {
if(goodsDiscount.getActivityCode().equals(cartGoods.getCouponCode())) {
ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto();
activityDiscountsDto.setActivityCode(goodsDiscount.getActivityCode());
activityDiscountsDto.setActivityName(goodsDiscount.getActivityName());
activityDiscountsDto.setActivityType(goodsDiscount.getType());
activityDiscountsDto.setDiscountAmount(0 - goodsDiscount.getDiscount().intValue());
Integer extendType = extendTypeMap.get(goodsDiscount.getActivityCode());
activityDiscountsDto.setExtendType(extendType);
activityDiscountsDto.setTenderId(goodsMap.get(cartGoods.getCartGoodsUid()).getArtNo());
productActivityDiscountsDtos.add(activityDiscountsDto);
cartGoods.setTotalDiscountAmount(-activityDiscountsDto.getDiscountAmount());
cartGoods.setSalePrice(0L);
cartGoods.setActivityDiscountsDtos(productActivityDiscountsDtos);
}
}
}
}
}
}
......
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