Commit 3e65b8da by xiaoer.li@freemud.com

Merge remote-tracking branches 'remotes/origin/bugfix_套餐折扣' and…

Merge remote-tracking branches 'remotes/origin/bugfix_套餐折扣' and 'remotes/origin/fix_集点不参与积分同享' into develop
...@@ -170,7 +170,9 @@ public class ShoppingCartConvertAdapter { ...@@ -170,7 +170,9 @@ public class ShoppingCartConvertAdapter {
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods apportionGoods : apportionGoodsList) { for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods apportionGoods : apportionGoodsList) {
//折扣=所有折扣和*百分比(当前行商品数量/购物车总商品数量) //折扣=所有折扣和*百分比(当前行商品数量/购物车总商品数量)
discountPrice += apportionGoods.getApportionDetails().stream().filter(d -> ObjectUtils.notEqual(ActivityTypeEnum.TYPE_32.getCode(), d.getActivityType()) discountPrice += apportionGoods.getApportionDetails().stream().filter(d -> ObjectUtils.notEqual(ActivityTypeEnum.TYPE_32.getCode(), d.getActivityType())
&& ObjectUtils.notEqual(ActivityTypeEnum.TYPE_104.getCode(), d.getActivityType()) && ObjectUtils.notEqual(ActivityTypeEnum.TYPE_2.getCode(), d.getActivityType()) && ObjectUtils.notEqual(ActivityTypeEnum.TYPE_104.getCode(), d.getActivityType())
&& ObjectUtils.notEqual(ActivityTypeEnum.TYPE_2.getCode(), d.getActivityType())
&& ObjectUtils.notEqual(ActivityTypeEnum.TYPE_21.getCode(), d.getActivityType())
).mapToLong(t -> t.getActivityApportionAmount() * apportionGoods.getGoodsQuantity()).sum() * cartGoodsDetailDto.getQty() / goodsTotalQty; ).mapToLong(t -> t.getActivityApportionAmount() * apportionGoods.getGoodsQuantity()).sum() * cartGoodsDetailDto.getQty() / goodsTotalQty;
} }
String currentGoodsIdMap = duplicateGoodsMap.get(cartGoodsDetailDto.getSkuId()); String currentGoodsIdMap = duplicateGoodsMap.get(cartGoodsDetailDto.getSkuId());
...@@ -186,7 +188,9 @@ public class ShoppingCartConvertAdapter { ...@@ -186,7 +188,9 @@ public class ShoppingCartConvertAdapter {
Long totalDiscountAmount = 0L; Long totalDiscountAmount = 0L;
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods apportionGoods : apportionGoodsList) { for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods apportionGoods : apportionGoodsList) {
totalDiscountAmount += apportionGoods.getApportionDetails().stream().filter(d -> ObjectUtils.notEqual(ActivityTypeEnum.TYPE_32.getCode(), d.getActivityType()) totalDiscountAmount += apportionGoods.getApportionDetails().stream().filter(d -> ObjectUtils.notEqual(ActivityTypeEnum.TYPE_32.getCode(), d.getActivityType())
&& ObjectUtils.notEqual(ActivityTypeEnum.TYPE_104.getCode(), d.getActivityType()) && ObjectUtils.notEqual(ActivityTypeEnum.TYPE_2.getCode(), d.getActivityType()) && ObjectUtils.notEqual(ActivityTypeEnum.TYPE_104.getCode(), d.getActivityType())
&& ObjectUtils.notEqual(ActivityTypeEnum.TYPE_2.getCode(), d.getActivityType())
&& ObjectUtils.notEqual(ActivityTypeEnum.TYPE_21.getCode(), d.getActivityType())
).mapToLong(t -> t.getActivityApportionAmount() * apportionGoods.getGoodsQuantity()).sum(); ).mapToLong(t -> t.getActivityApportionAmount() * apportionGoods.getGoodsQuantity()).sum();
} }
//折扣为:总折扣金额-已折扣金额 //折扣为:总折扣金额-已折扣金额
......
...@@ -52,7 +52,8 @@ public enum ActivityTypeEnum { ...@@ -52,7 +52,8 @@ public enum ActivityTypeEnum {
TYPE_200(200, "X元Y件"), TYPE_200(200, "X元Y件"),
TYPE_PACKAGE(900, "包装费"), TYPE_PACKAGE(900, "包装费"),
TYPE_DELIVERY(901, "配送费"), TYPE_DELIVERY(901, "配送费"),
TYPE_320(320,"会员价商品优惠"); TYPE_320(320, "会员价商品优惠"),
TYPE_221(221, "集点");
private Integer code; private Integer code;
......
...@@ -85,15 +85,18 @@ public class CustomerScoreService implements IPromotionService { ...@@ -85,15 +85,18 @@ public class CustomerScoreService implements IPromotionService {
} }
} }
//集点 //集点
long discountCount = calculationDiscountResult.getDiscounts().stream().filter(discount -> !ActivityTypeEnum.TYPE_221.getCode().equals(discount.getType())).count();
/*
int discountCount = calculationDiscountResult.getDiscounts().size(); int discountCount = calculationDiscountResult.getDiscounts().size();
int type211 = 0; int type211 = 0;
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount discount : calculationDiscountResult.getDiscounts()) { for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount discount : calculationDiscountResult.getDiscounts()) {
if (discount.getType().equals(221)) { if (ActivityTypeEnum.TYPE_221.getCode().equals(discount.getType())) {
type211 += 1; type211 += 1;
break; break;
} }
} }
discountCount = discountCount - type211; discountCount = discountCount - type211;
*/
//积分抵扣开关禁用 有换购活动 且选中了换购商品 //积分抵扣开关禁用 有换购活动 且选中了换购商品
// - 有换购且选中了换购商品 // - 有换购且选中了换购商品
// - 有换购且没有选中换购商品 且除集点以外还有其他促销 // - 有换购且没有选中换购商品 且除集点以外还有其他促销
......
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