Sfoglia il codice sorgente

新增销量还原逻辑

hyq 6 anni fa
parent
commit
5447139e46

+ 8 - 0
kmall-schedule/src/main/java/com/kmall/schedule/service/QzOrderService.java

@@ -236,9 +236,13 @@ public class QzOrderService {
         String third_party_merch_code = MapUtils.getString("third_party_merch_code", map);
         if(goods_biz_type.equalsIgnoreCase(Dict.orderBizType.item_00.getItem())){
             if(goods_biz_type.equalsIgnoreCase(Dict.orderBizType.item_00.getItem()) && isStockShare.equalsIgnoreCase(Dict.isStockShare.item_1.getItem())) {//共享
+                Integer sell_volume = MapUtils.getInteger("goods_sell_volume", map);//销量
                 Map param = Maps.newHashMap();
                 param.put("id", goods_id);
                 param.put("goods_number", goods_number + number);
+                if(sell_volume >= number){
+                    param.put("sell_volume", sell_volume - number);
+                }
                 qzOrderMapper.updateGoodsStockNum(param);//商户商品库存还原
                 MngChangeJobEntity mngChangeJobEntity = new MngChangeJobEntity();
                 mngChangeJobEntity.setGoodsId(Integer.parseInt(String.valueOf(goods_id)));
@@ -260,6 +264,10 @@ public class QzOrderService {
                 Map param = Maps.newHashMap();
                 param.put("id", storeRelaId);
                 param.put("stock_num", stock_num + number);
+                Integer sell_volume = MapUtils.getInteger("store_sell_volume", map);//销量
+                if(sell_volume >= number){
+                    param.put("sell_volume", sell_volume - number);
+                }
                 qzOrderMapper.updateStockNum(param);//门店库存还原
                 StoreMngChangeJobEntity storeMngChangeJobEntity = new StoreMngChangeJobEntity();
                 storeMngChangeJobEntity.setChangeType(Dict.changeType.item_0.getItem());

+ 5 - 3
kmall-schedule/src/main/resources/mybatis/mapper/QzOrderMapper.xml

@@ -22,7 +22,7 @@
 
     <select id="queryPastOrderList" resultType="map">
         SELECT b.product_id,b.number,c.stock_num,c.id as storeRelaId,mb.is_stock_share,mb.third_party_merch_code,g.goods_number,g.id goods_id,g.goods_biz_type,
-        a.store_id,g.merch_sn
+        a.store_id,g.merch_sn,g.sell_volume 'goods_sell_volume',c.sell_volume 'store_sell_volume'
         FROM mall_order a
         LEFT JOIN mall_order_goods b ON a.id = b.order_id
         LEFT JOIN mall_product_store_rela c ON b.goods_id = c.goods_id
@@ -46,6 +46,7 @@
         update mall_product_store_rela a
         <set>
             <if test="stock_num != null">a.`stock_num` = #{stock_num},</if>
+            <if test="sell_volume != null">a.`sell_volume` = #{sell_volume},</if>
         </set>
         where a.id = #{id}
     </update>
@@ -53,6 +54,7 @@
         update mall_goods a
         <set>
             <if test="goods_number != null">a.`goods_number` = #{goods_number},</if>
+            <if test="sell_volume != null">a.`sell_volume` = #{sell_volume},</if>
         </set>
         where a.id = #{id}
     </update>
@@ -135,7 +137,7 @@
     <select id="queryPayingOrderList" resultType="map">
 		select a.pay_transaction_id,a.order_sn,a.order_status,a.pay_status,a.id 'order_id',a.merch_order_sn,date_format(a.add_time,'%Y-%m-%d %H:%i:%s') as add_time,
         b.product_id,b.number,c.stock_num,c.id as storeRelaId,a.pay_flag,mb.is_stock_share,mb.third_party_merch_code,g.goods_number,g.id goods_id,g.goods_biz_type,
-        a.store_id,g.merch_sn,mb.third_party_merch_code
+        a.store_id,g.merch_sn,mb.third_party_merch_code,g.sell_volume 'goods_sell_volume',c.sell_volume 'store_sell_volume'
         from mall_order a
         LEFT JOIN mall_order_goods b ON a.id = b.order_id
         LEFT JOIN mall_product_store_rela c ON b.goods_id = c.goods_id
@@ -150,7 +152,7 @@
     <select id="queryPinganPayingOrderList" resultType="map">
 		select a.pay_transaction_id,a.order_sn,a.order_status,a.pay_status,a.id 'order_id',a.merch_order_sn,date_format(a.add_time,'%Y-%m-%d %H:%i:%s') as add_time,
         b.product_id,b.number,c.stock_num,c.id as storeRelaId,a.pay_flag,mb.is_stock_share,mb.third_party_merch_code,g.goods_number,g.id goods_id,g.goods_biz_type,
-        a.store_id,g.merch_sn,mb.third_party_merch_code
+        a.store_id,g.merch_sn,mb.third_party_merch_code,g.sell_volume 'goods_sell_volume',c.sell_volume 'store_sell_volume'
         from mall_order a
         LEFT JOIN mall_order_goods b ON a.id = b.order_id
         LEFT JOIN mall_product_store_rela c ON b.goods_id = c.goods_id