Sfoglia il codice sorgente

refactor(marketing): 优化营销信息展示

- 在折券和满减券的优惠信息中添加商户券ID和名称
-优化满减券减价信息的显示格式
- 在促销活动的优惠信息中添加活动ID和名称
- 统一折价和满减活动的信息展示格式
hechunping 1 giorno fa
parent
commit
b60703ff84

+ 3 - 2
src/main/java/com/xynet/marketing/service/factory/coupon/merc/impl/base/MercCouponFactoryBase.java

@@ -347,7 +347,7 @@ public class MercCouponFactoryBase extends ServiceImpl<MercCouponMapper, MercCou
                 BigDecimal scalar = new BigDecimal(priceJson.getStr("scalar"));
                 goods.set("priceOnsale", scalar.multiply(goods.getBigDecimal("priceOnsale")).setScale(0, RoundingMode.CEILING).intValue());
                 goods.set("amount", scalar.multiply(goods.getBigDecimal("amount")).setScale(0, RoundingMode.CEILING).intValue());
-                goods.set("msg", goods.getString("msg") + priceJson.getStr("scalar").replace("0.", "") + "折券;");
+                goods.set("msg", goods.getString("msg") + "【" + mercCoupon.getId() + "】【" + mercCoupon.getName() + "】" + priceJson.getStr("scalar").replace("0.", "") + "折券;");
             }
             //满减券
             if (Objects.equals(mercCoupon.getType(), CouponTypeEnum.T_1.getCode())) {
@@ -393,7 +393,8 @@ public class MercCouponFactoryBase extends ServiceImpl<MercCouponMapper, MercCou
                     Integer priceOnsale = promotionPriceOnsale.subtract(new BigDecimal(goodsYh).divide(num, 2, BigDecimal.ROUND_HALF_UP)).intValue();
                     goods.set("priceOnsale", priceOnsale);
                     goods.set("amount", goods.getInt("amount") - goodsYh);
-                    goods.set("msg", goods.getString("msg") + "满减券减:" + (goodsYh * 0.01) + "元;");
+                    String goodsYhStr = new BigDecimal(goodsYh).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP) + "元;";
+                    goods.set("msg", goods.getString("msg") + "满减券【" + mercCoupon.getId() + "】【" + mercCoupon.getName() + "】减:" + goodsYhStr);
                 }
             }
         }

+ 5 - 3
src/main/java/com/xynet/marketing/service/factory/promotion/impl/base/PromotionFactoryBase.java

@@ -160,7 +160,7 @@ public class PromotionFactoryBase extends ServiceImpl<PromotionMapper, Promotion
                         //优惠价格
                         goods.set("priceOnsale", promotionGoods.get("priceOnsale"));
                         goods.set("promotion", promotion);
-                        goods.set("msg", goods.getString("msg") + "促销活动:特价;");
+                        goods.set("msg", goods.getString("msg") + "促销活动【" + promotion.getId() + "】【" + promotion.getName() + "】:特价;");
                         //优惠活动
                         List<Object> promotionList1 = goods.getList("promotionList");
                         promotionList1.add(promotion);
@@ -207,7 +207,7 @@ public class PromotionFactoryBase extends ServiceImpl<PromotionMapper, Promotion
                             goods.set("priceOnsale", price);
                             goods.set("amount", scalar.multiply(goods.getBigDecimal("amount")).setScale(0, RoundingMode.CEILING).intValue());
                             goods.set("promotionType2", true);
-                            goods.set("msg", "促销活动:" + priceJson.getStr("scalar").replace("0.", "") + "折;");
+                            goods.set("msg", "促销活动【" + promotion.getId() + "】【" + promotion.getName() + "】:" + priceJson.getStr("scalar").replace("0.", "") + "折;");
                         }
                         if (Objects.equals(promotion.getType(), PromotionTypeEnum.T_1.getCode())) {
                             //计算满减金额
@@ -268,7 +268,8 @@ public class PromotionFactoryBase extends ServiceImpl<PromotionMapper, Promotion
                         Integer priceOnsale = promotionPriceOnsale.subtract(new BigDecimal(goodsYh).divide(num, 2, BigDecimal.ROUND_HALF_UP)).intValue();
                         goods.set("priceOnsale", priceOnsale);
                         goods.set("amount", goods.getInt("amount") - goodsYh);
-                        goods.set("msg", goods.getString("msg") + "满减活动减:" + (goodsYh * 0.01) + "元;");
+                        String goodsYhStr = new BigDecimal(goodsYh).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP) + "元;";
+                        goods.set("msg", goods.getString("msg") + "满减活动【" + promotion.getId() + "】【" + promotion.getName() + "】减:" + goodsYhStr);
                     }
                 }
             }
@@ -278,4 +279,5 @@ public class PromotionFactoryBase extends ServiceImpl<PromotionMapper, Promotion
         param.put("goodsList", goodsList);
         return param;
     }
+
 }