|
@@ -40,6 +40,7 @@ import java.math.BigDecimal;
|
|
|
import java.util.Comparator;
|
|
import java.util.Comparator;
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
|
+import java.util.Objects;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -209,6 +210,11 @@ public class ActivityServiceImpl extends ServiceImpl<ActivityDao, Activity> impl
|
|
|
} else if (ActivityTypeEnum.FULL.getTypeCode().equals(type)) {
|
|
} else if (ActivityTypeEnum.FULL.getTypeCode().equals(type)) {
|
|
|
ActivityOfFullReductionDTO fullReductionInfo = e.getFullReductionInfo();
|
|
ActivityOfFullReductionDTO fullReductionInfo = e.getFullReductionInfo();
|
|
|
|
|
|
|
|
|
|
+ // 判断当前商品总价满足最低满减金额
|
|
|
|
|
+ if (curGoodsTotalPrice - fullReductionInfo.getMinAmount() < 0) {
|
|
|
|
|
+ return null;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
if (FullActivityTypeEnum.DISCOUNT.getTypeCode().equals(fullReductionInfo.getType())) {
|
|
if (FullActivityTypeEnum.DISCOUNT.getTypeCode().equals(fullReductionInfo.getType())) {
|
|
|
discountAmount = curGoodsTotalPrice - (curGoodsTotalPrice * fullReductionInfo.getDiscountContent());
|
|
discountAmount = curGoodsTotalPrice - (curGoodsTotalPrice * fullReductionInfo.getDiscountContent());
|
|
|
} else {
|
|
} else {
|
|
@@ -233,8 +239,10 @@ public class ActivityServiceImpl extends ServiceImpl<ActivityDao, Activity> impl
|
|
|
vo.setActivityType(type);
|
|
vo.setActivityType(type);
|
|
|
vo.setDiscountAmount(discountAmount);
|
|
vo.setDiscountAmount(discountAmount);
|
|
|
vo.setGoodsIds(curGoodsIds);
|
|
vo.setGoodsIds(curGoodsIds);
|
|
|
|
|
+ vo.setGoodsNames(curGoodsNames);
|
|
|
return vo;
|
|
return vo;
|
|
|
})
|
|
})
|
|
|
|
|
+ .filter(Objects::nonNull)
|
|
|
.sorted(Comparator.comparing(OrderSuitActivityVO::getDiscountAmount))
|
|
.sorted(Comparator.comparing(OrderSuitActivityVO::getDiscountAmount))
|
|
|
.collect(Collectors.toList());
|
|
.collect(Collectors.toList());
|
|
|
}
|
|
}
|