Aslee 3 лет назад
Родитель
Сommit
bb824ad036

+ 4 - 0
src/main/java/com/caimei365/order/model/po/OrderProductPo.java

@@ -220,4 +220,8 @@ public class OrderProductPo implements Serializable {
      * 超级会员折扣
      */
     private Double svipDiscount;
+    /**
+     * 超级会员优惠
+     */
+    private Double svipReduction;
 }

+ 6 - 4
src/main/java/com/caimei365/order/service/impl/SubmitServiceImpl.java

@@ -475,6 +475,7 @@ public class SubmitServiceImpl implements SubmitService {
                 product.setPresentNum(presentNum);
                 product.setProductType(productType);
                 product.setSvipPriceFlag(0);
+                product.setSvipReduction(0d);
                 // 超级会员优惠商品详情
                 SvipProductPo svipProductPo = submitMapper.getSvipProductDetails(productId);
                 // 是否以超级会员优惠价格购买
@@ -514,12 +515,13 @@ public class SubmitServiceImpl implements SubmitService {
                                 discountPrice = MathUtil.div(MathUtil.mul(productPrice, svipProductPo.getSvipDiscount()), 100, 2).doubleValue();
                             } else if (2 == svipProductPo.getSvipPriceType()) {
                                 // 直接优惠价
-                                discountPrice = svipProductPo.getSvipDiscountPrice().doubleValue();
+                                discountPrice = svipProductPo.getSvipDiscountPrice();
                             }
-                            BigDecimal reductionFee = MathUtil.mul(MathUtil.sub(productPrice, discountPrice), productNum, 2);
+                            BigDecimal svipReduction = MathUtil.mul(MathUtil.sub(productPrice, discountPrice), productNum, 2);
                             // 统计超级会员优惠
-                            svipShopReduction.set(MathUtil.add(svipShopReduction, reductionFee).doubleValue());
-                            svipFullReduction.set(MathUtil.add(svipFullReduction, reductionFee).doubleValue());
+                            product.setSvipReduction(svipReduction.doubleValue());
+                            svipShopReduction.set(MathUtil.add(svipShopReduction, svipReduction).doubleValue());
+                            svipFullReduction.set(MathUtil.add(svipFullReduction, svipReduction).doubleValue());
                             // 保存订单商品svip数据
                             product.setSvipPriceFlag(1);
                             product.setSvipPriceType(svipProductPo.getSvipPriceType());

+ 3 - 2
src/main/resources/backup.sql

@@ -5,6 +5,7 @@ ALTER TABLE `caimei`.`cm_shop_order`
     ADD COLUMN `svipShopReduction` DECIMAL(15,2) NULL COMMENT '店铺超级会员优惠' DEFAULT 0.00 AFTER `differencePrice`;
 ALTER TABLE `caimei`.`cm_order_product`
     ADD COLUMN `svipPriceFlag` INT NULL DEFAULT 0 COMMENT '超级会员优惠价格标识:0不是,1是' AFTER `heUserId`,
-    ADD COLUMN `svipPriceType` INT NULL DEFAULT NULL COMMENT '超级会员优惠价类型:1折扣价,2直接优惠价' AFTER `svipProductFlag`,
-    ADD COLUMN `svipDiscount` DECIMAL(20,2) NULL DEFAULT '0.00' COMMENT '超级会员折扣' AFTER `svipPriceFlag`;
+    ADD COLUMN `svipPriceType` INT NULL DEFAULT NULL COMMENT '超级会员优惠价类型:1折扣价,2直接优惠价' AFTER `svipPriceFlag`,
+    ADD COLUMN `svipDiscount` DECIMAL(20,2) NULL DEFAULT '0.00' COMMENT '超级会员折扣' AFTER `svipPriceFlag`,
+    ADD COLUMN `svipReduction` DECIMAL(20,2) NULL DEFAULT 0.00 COMMENT '超级会员优惠' AFTER `svipDiscount`;
 -- =================================== 2021年9月 超级会员S_VIP end =====================================

+ 2 - 2
src/main/resources/mapper/SubmitMapper.xml

@@ -34,13 +34,13 @@
                                     invoiceType, taxRate, addedValueTax, totalAddedValueTax, singleShouldPayTotalTax, shouldPayTotalTax,
                                     shopProductAmount, singleShopFee, shopFee, singleOtherFee, otherFee, singleCmFee, cmFee,
                                     payStatus, buyAgainFlag, notOutStore, isActProduct, productType, svipPriceFlag,svipPriceType,
-                                      svipDiscount)
+                                      svipDiscount,svipReduction)
         VALUES (#{orderId},#{orderNo},#{shopOrderId},#{shopOrderNo},#{orderPromotionsId},#{productId},#{shopId},#{name},
                 #{image},#{price},#{price},#{shopName},#{costPrice},#{normalPrice},#{ladderPriceFlag},#{discountPrice},#{discount},
                 #{totalAmount},#{totalFee},#{shouldPayFee},#{productUnit},#{num},#{presentNum},#{discountFee},#{includedTax},
                 #{invoiceType},#{taxRate},#{addedValueTax},#{totalAddedValueTax},#{singleShouldPayTotalTax},#{shouldPayTotalTax},
                 #{shopProductAmount},#{singleShopFee},#{shopFee},#{singleOtherFee},#{otherFee},#{singleCmFee},#{cmFee},
-                #{payStatus},#{buyAgainFlag},#{notOutStore},#{actProduct},#{productType},#{svipPriceFlag},#{svipPriceType},#{svipDiscount})
+                #{payStatus},#{buyAgainFlag},#{notOutStore},#{actProduct},#{productType},#{svipPriceFlag},#{svipPriceType},#{svipDiscount},#{svipReduction})
     </insert>
     <insert id="insertOrderPromotions" keyColumn="id" keyProperty="id" parameterType="com.caimei365.order.model.vo.PromotionsVo" useGeneratedKeys="true">
         INSERT INTO cm_promotions_order (orderId, promotionsId, name, description, type, mode, touchPrice, reducedPrice, status, beginTime, endTime)