Commit fa2fc5f6 by hanghang.wang

促销满减活动提示语优化

parent b0136e47
...@@ -165,6 +165,8 @@ public class ActivityCalculationDiscountResponseDto { ...@@ -165,6 +165,8 @@ public class ActivityCalculationDiscountResponseDto {
*/ */
private Long thresholdAmount; private Long thresholdAmount;
private Long totalAmount; private Long totalAmount;
private Integer totalQuantity;
/** /**
* 已经优惠金额 * 已经优惠金额
*/ */
...@@ -172,6 +174,16 @@ public class ActivityCalculationDiscountResponseDto { ...@@ -172,6 +174,16 @@ public class ActivityCalculationDiscountResponseDto {
private Integer alreadyDiscountThresholdAmount; private Integer alreadyDiscountThresholdAmount;
private Integer activitySubType; private Integer activitySubType;
private List<SendGoods> sendGoods; private List<SendGoods> sendGoods;
/**
* 优惠类型 3 根据件数满减
*/
private Integer preferentialType;
/**
* 门槛件数
*/
private Integer thresholdQuantity;
} }
@Data @Data
......
...@@ -31,6 +31,12 @@ public class ActivityList { ...@@ -31,6 +31,12 @@ public class ActivityList {
- - 满足 satisfy 减 deduct 还差 missing - - 满足 satisfy 减 deduct 还差 missing
- - 4 : 已减 X 元 再买 Y 元 减 Z 元 - - 4 : 已减 X 元 再买 Y 元 减 Z 元
- - 已减 alreadyDecut 再买againBuy 减 deduct - - 已减 alreadyDecut 再买againBuy 减 deduct
- - 11 : 满足 X 件 减 Y 元 还差 Z元
- - 满足 satisfy 减 deduct 还差 missing
- - 12 : 已减 X 元 再买 Y 件 减 Z 元
- - 已减 alreadyDecut 再买againBuy 减 deduct
- - 不满足 - - 不满足
- - 5 : 已减 X 元 - - 5 : 已减 X 元
- - 已减 deduct - - 已减 deduct
......
...@@ -224,6 +224,23 @@ public class FullPromotionService implements IPromotionService { ...@@ -224,6 +224,23 @@ public class FullPromotionService implements IPromotionService {
if (Objects.equals(ActivityTypeEnum.TYPE_11.getCode(), activityResponseDto.getActivityType()) || Objects.equals(ActivityTypeEnum.TYPE_12.getCode(), activityResponseDto.getActivityType())) { if (Objects.equals(ActivityTypeEnum.TYPE_11.getCode(), activityResponseDto.getActivityType()) || Objects.equals(ActivityTypeEnum.TYPE_12.getCode(), activityResponseDto.getActivityType())) {
if (activityPrompt.getAlreadyDiscountAmount() == null if (activityPrompt.getAlreadyDiscountAmount() == null
|| activityPrompt.getAlreadyDiscountAmount() == 0) { || activityPrompt.getAlreadyDiscountAmount() == 0) {
if(3 == activityPrompt.getPreferentialType()){
messageBuilder.append("满 <span style=\"color:#fa5555\">")
.append(activityPrompt.getThresholdQuantity())
.append("</span> 减 <span style=\"color:#fa5555\">")
.append(WebUtil.formatAmount(activityPrompt.getDiscountAmout() * 1.00 / 100))
.append("</span> ")
.append("还差 <span style=\"color:#fa5555\">")
.append(activityPrompt.getThresholdQuantity() - activityPrompt.getTotalQuantity())
.append("</span> 件");
// 满足 X 元 减 Y 元 还差 Z元
satisfyList.setTipType(11);
satisfyList.setSatisfy(activityPrompt.getThresholdQuantity().toString());
satisfyList.setDeduct(WebUtil.formatAmount(activityPrompt.getDiscountAmout() * 1.00 / 100).toString());
satisfyList.setMissing(String.valueOf(activityPrompt.getThresholdQuantity() - activityPrompt.getTotalQuantity()));
}else{
messageBuilder.append("满 <span style=\"color:#fa5555\">") messageBuilder.append("满 <span style=\"color:#fa5555\">")
.append(WebUtil.formatAmount(activityPrompt.getThresholdAmount() * 1.00 / 100)) .append(WebUtil.formatAmount(activityPrompt.getThresholdAmount() * 1.00 / 100))
.append("</span> 减 <span style=\"color:#fa5555\">") .append("</span> 减 <span style=\"color:#fa5555\">")
...@@ -237,6 +254,8 @@ public class FullPromotionService implements IPromotionService { ...@@ -237,6 +254,8 @@ public class FullPromotionService implements IPromotionService {
satisfyList.setSatisfy(WebUtil.formatAmount(activityPrompt.getThresholdAmount() * 1.00 / 100).toString()); satisfyList.setSatisfy(WebUtil.formatAmount(activityPrompt.getThresholdAmount() * 1.00 / 100).toString());
satisfyList.setDeduct(WebUtil.formatAmount(activityPrompt.getDiscountAmout() * 1.00 / 100).toString()); satisfyList.setDeduct(WebUtil.formatAmount(activityPrompt.getDiscountAmout() * 1.00 / 100).toString());
satisfyList.setMissing(WebUtil.formatAmount((activityPrompt.getThresholdAmount() - activityPrompt.getTotalAmount()) * 1.00 / 100).toString()); satisfyList.setMissing(WebUtil.formatAmount((activityPrompt.getThresholdAmount() - activityPrompt.getTotalAmount()) * 1.00 / 100).toString());
}
} else { } else {
Long toDiscountAmout; Long toDiscountAmout;
//每满减 //每满减
...@@ -245,6 +264,20 @@ public class FullPromotionService implements IPromotionService { ...@@ -245,6 +264,20 @@ public class FullPromotionService implements IPromotionService {
} else { } else {
toDiscountAmout = activityPrompt.getDiscountAmout(); toDiscountAmout = activityPrompt.getDiscountAmout();
} }
if(3 == activityPrompt.getPreferentialType()){
//已减 X 元 再买 Y 元 减 Z 元
messageBuilder.append("已减 <span style=\"color:#fa5555\">")
.append(WebUtil.formatAmount(activityPrompt.getAlreadyDiscountAmount() * 1.00 / 100))
.append("</span> 元 再买 <span style=\"color:#fa5555\">")
.append(activityPrompt.getThresholdQuantity() - activityPrompt.getTotalQuantity())
.append("</span> 件减 <span style=\"color:#fa5555\">")
.append(WebUtil.formatAmount(toDiscountAmout * 1.00 / 100))
.append("</span> 元");
satisfyList.setTipType(12);
satisfyList.setDeduct(WebUtil.formatAmount(activityPrompt.getAlreadyDiscountAmount() * 1.00 / 100).toString());
satisfyList.setAgainBuy(String.valueOf(activityPrompt.getThresholdQuantity() - activityPrompt.getTotalQuantity()));
satisfyList.setAgianDeduct(WebUtil.formatAmount(toDiscountAmout * 1.00 / 100).toString());
}else{
//已减 X 元 再买 Y 元 减 Z 元 //已减 X 元 再买 Y 元 减 Z 元
messageBuilder.append("已减 <span style=\"color:#fa5555\">") messageBuilder.append("已减 <span style=\"color:#fa5555\">")
.append(WebUtil.formatAmount(activityPrompt.getAlreadyDiscountAmount() * 1.00 / 100)) .append(WebUtil.formatAmount(activityPrompt.getAlreadyDiscountAmount() * 1.00 / 100))
...@@ -258,6 +291,9 @@ public class FullPromotionService implements IPromotionService { ...@@ -258,6 +291,9 @@ public class FullPromotionService implements IPromotionService {
satisfyList.setAgainBuy(WebUtil.formatAmount((activityPrompt.getThresholdAmount() - activityPrompt.getTotalAmount()) * 1.00 / 100).toString()); satisfyList.setAgainBuy(WebUtil.formatAmount((activityPrompt.getThresholdAmount() - activityPrompt.getTotalAmount()) * 1.00 / 100).toString());
satisfyList.setAgianDeduct(WebUtil.formatAmount(toDiscountAmout * 1.00 / 100).toString()); satisfyList.setAgianDeduct(WebUtil.formatAmount(toDiscountAmout * 1.00 / 100).toString());
} }
}
} }
if (Objects.equals(ActivityTypeEnum.TYPE_230.getCode(), activityResponseDto.getActivityType()) && CollectionUtils.isNotEmpty(activityPrompt.getSendGoods())) { if (Objects.equals(ActivityTypeEnum.TYPE_230.getCode(), activityResponseDto.getActivityType()) && CollectionUtils.isNotEmpty(activityPrompt.getSendGoods())) {
......
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