Commit a05eb89c by chongfu.liang

fix

parent e3af43f5
......@@ -139,6 +139,25 @@ public class GiftSharingService {
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount> discountList = goods.getDiscounts()
.stream().filter(p -> activityCode.contains(p.getActivityCode())).collect(Collectors.toList());
for (CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount discount : discountList){
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods oldSendGoods = goodsList.stream().filter(p -> p.getGoodsId().equals(discount.getGoodsId()) && ObjectUtils.equals(p.getCartGoodType(), 1)).findFirst().orElse(null);
if (oldSendGoods != null){ // 表明赠品原来有
Integer goodsQuantity = oldSendGoods.getGoodsQuantity();
sendQty = goodsQuantity + discount.getActualGoodsNumber();
oldSendGoods.setGoodsQuantity(sendQty);
Long discountAmount = oldSendGoods.getDiscountAmount();
discountAmount = discountAmount + discount.getDiscount();
oldSendGoods.setDiscountAmount(discountAmount);
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount oldDiscount = oldSendGoods.getDiscounts().stream().filter(p -> p.getActivityCode().equals(discount.getActivityCode()) && ObjectUtils.equals(p.getType(), ActivityTypeEnum.TYPE_1040.getCode())).findFirst().orElse(null);
if (oldDiscount != null){
oldDiscount.setActualGoodsNumber(sendQty);
oldDiscount.setDiscount(discountAmount);
}
} else {
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods sendGoods = new CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods();
sendGoods.setCartGoodsUid(UUID.randomUUID().toString());
sendGoods.setGoodsId(discount.getGoodsId());
......@@ -163,6 +182,7 @@ public class GiftSharingService {
sendGoods.setDiscounts(goodsDiscounts);
goodsList.add(sendGoods);
sendQty += discount.getActualGoodsNumber();
}
if (goods.getDiscountAmount() != null && discount.getDiscount() != null){
goods.setDiscountAmount(goods.getDiscountAmount() - discount.getDiscount());
}
......
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