Commit 25c11ede by xiaoer.li@freemud.com

活动明细均摊累加

parent 455d911b
...@@ -97,12 +97,13 @@ public class MaterialPromotionService implements IPromotionService { ...@@ -97,12 +97,13 @@ public class MaterialPromotionService implements IPromotionService {
} }
//设置行记录参加的活动及总优惠 //设置行记录参加的活动及总优惠
if (CollectionUtils.isNotEmpty(material.getDetails())) { if (CollectionUtils.isNotEmpty(material.getDetails())) {
long sum = material.getDetails().stream().mapToLong(ApportionDetails::getQty).sum();
for (ApportionDetails detail : material.getDetails()) { for (ApportionDetails detail : material.getDetails()) {
ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto(); ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto();
activityDiscountsDto.setActivityCode(detail.getActivityCode()); activityDiscountsDto.setActivityCode(detail.getActivityCode());
activityDiscountsDto.setActivityName(detail.getActivityName()); activityDiscountsDto.setActivityName(detail.getActivityName());
activityDiscountsDto.setActivityType(detail.getActivityType()); activityDiscountsDto.setActivityType(detail.getActivityType());
activityDiscountsDto.setDiscountAmount(material.getApportionAmount()); activityDiscountsDto.setDiscountAmount(material.getApportionAmount() * (sum == product.getQty() ? 1 : product.getQty()));
activityDiscountsDtos.add(activityDiscountsDto); activityDiscountsDtos.add(activityDiscountsDto);
} }
} }
...@@ -157,6 +158,8 @@ public class MaterialPromotionService implements IPromotionService { ...@@ -157,6 +158,8 @@ public class MaterialPromotionService implements IPromotionService {
apportionDetails.setActivityName(apportionDetail.getActivityName()); apportionDetails.setActivityName(apportionDetail.getActivityName());
apportionDetails.setActivityCode(apportionDetail.getActivityCode()); apportionDetails.setActivityCode(apportionDetail.getActivityCode());
apportionDetails.setActivityType(apportionDetail.getActivityType()); apportionDetails.setActivityType(apportionDetail.getActivityType());
apportionDetails.setAmount(apportionDetail.getActivityApportionAmount());
apportionDetails.setQty(material.getGoodsQuantity());
apportionDetailsList.add(apportionDetails); apportionDetailsList.add(apportionDetails);
} }
materialApportion.setDetails(apportionDetailsList); materialApportion.setDetails(apportionDetailsList);
...@@ -175,6 +178,8 @@ public class MaterialPromotionService implements IPromotionService { ...@@ -175,6 +178,8 @@ public class MaterialPromotionService implements IPromotionService {
apportionDetails.setActivityName(apportionDetail.getActivityName()); apportionDetails.setActivityName(apportionDetail.getActivityName());
apportionDetails.setActivityCode(apportionDetail.getActivityCode()); apportionDetails.setActivityCode(apportionDetail.getActivityCode());
apportionDetails.setActivityType(apportionDetail.getActivityType()); apportionDetails.setActivityType(apportionDetail.getActivityType());
apportionDetails.setAmount(apportionDetail.getActivityApportionAmount());
apportionDetails.setQty(material.getGoodsQuantity());
details.add(apportionDetails); details.add(apportionDetails);
} }
apportion.setDetails(details); apportion.setDetails(details);
...@@ -203,5 +208,7 @@ public class MaterialPromotionService implements IPromotionService { ...@@ -203,5 +208,7 @@ public class MaterialPromotionService implements IPromotionService {
private String activityCode; private String activityCode;
private String activityName; private String activityName;
private Integer activityType; private Integer activityType;
private Long amount;
private Integer qty;
} }
} }
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