Переглянути джерело

fix:公告发送没有内容

liujunchi 3 роки тому
батько
коміт
acba5fa8da

+ 1 - 1
cooleshow-cms/src/main/resources/config/mybatis/HelpCenterContentMapper.xml

@@ -228,7 +228,7 @@
 		left join sys_user su on su.id_ = t.user_id_
 	</insert>
 
-	<select id="selectNeedReleaseNotice" resultMap="HelpCenterContent">
+	<select id="selectNeedReleaseNotice" resultType="com.yonge.cooleshow.cms.dal.entity.HelpCenterContent">
 		select
 		<include refid="Base_Column_List_union" />
 		from help_center_content content

+ 12 - 0
cooleshow-mall/mall-mbg/src/main/java/com/yonge/cooleshow/mbg/mapper/PmsSkuStockMapper.java

@@ -2,7 +2,9 @@ package com.yonge.cooleshow.mbg.mapper;
 
 import com.yonge.cooleshow.mbg.model.PmsSkuStock;
 import com.yonge.cooleshow.mbg.model.PmsSkuStockExample;
+
 import java.util.List;
+
 import org.apache.ibatis.annotations.Param;
 
 public interface PmsSkuStockMapper {
@@ -27,4 +29,14 @@ public interface PmsSkuStockMapper {
     int updateByPrimaryKeySelective(PmsSkuStock record);
 
     int updateByPrimaryKey(PmsSkuStock record);
+
+    /**
+     * 锁定库存
+     *
+     * @param productSkuId
+     * @param quantity
+     * @return
+     */
+    int lockStock(@Param("productSkuId") Long productSkuId, @Param("quantity") Integer quantity);
+
 }

+ 4 - 0
cooleshow-mall/mall-mbg/src/main/resources/config/mybatis/PmsSkuStockMapper.xml

@@ -303,4 +303,8 @@
       sp_data = #{spData,jdbcType=VARCHAR}
     where id = #{id,jdbcType=BIGINT}
   </update>
+
+  <update id="lockStock">
+    update pms_sku_stock set lock_stock = lock_stock + #{quantity} where  id = #{productSkuId} and stock &gt;= ( lock_stock + #{quantity})
+    </update>
 </mapper>

+ 4 - 3
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/impl/OmsPortalOrderServiceImpl.java

@@ -963,9 +963,10 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
      */
     private void lockStock(List<CartPromotionItem> cartPromotionItemList) {
         for (CartPromotionItem cartPromotionItem : cartPromotionItemList) {
-            PmsSkuStock skuStock = skuStockMapper.selectByPrimaryKey(cartPromotionItem.getProductSkuId());
-            skuStock.setLockStock(skuStock.getLockStock() + cartPromotionItem.getQuantity());
-            skuStockMapper.updateByPrimaryKeySelective(skuStock);
+            int i = skuStockMapper.lockStock(cartPromotionItem.getProductSkuId(),cartPromotionItem.getQuantity());
+            if (i == 0) {
+                Asserts.fail("库存不足,无法下单");
+            }
         }
     }