From 0e4b49f4bee160790b1830e6a8606e739b32fc3b Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 11 三月 2026 09:09:45 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopcartServiceImpl.java |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopcartServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopcartServiceImpl.java
index e8b89d8..1b9c3ec 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopcartServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopcartServiceImpl.java
@@ -227,7 +227,7 @@
      * @param addCartGoodsRequest
      */
     @Override
-    @Transactional(rollbackFor = Exception.class)
+    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
     public void addCart(AddCartGoodsRequest addCartGoodsRequest){
         //鏌ヨ璐墿杞︽槸鍚﹀瓨鍦ㄥ綋鍓嶉�変腑鐨勫晢鍝佷俊鎭�
         Shopcart shopcart = shopcartMapper.selectOne(new QueryWrapper<Shopcart>()
@@ -238,6 +238,10 @@
         if(Objects.isNull(goodsSku)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鍟嗗搧SKU淇℃伅");
         }
+        Goods goods = goodsMapper.selectById(goodsSku.getGoodsId());
+        if(Objects.isNull(goods)||!Constants.equalsInteger(goods.getStatus(),Constants.ZERO)||!Constants.equalsInteger(goods.getIsdeleted(),Constants.ZERO)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鍟嗗搧宸蹭笅鏋讹紝鏃犳硶鍔犲叆璐墿杞︼紒");
+        }
         if(!Objects.isNull(shopcart)){
             shopcart.setNum(shopcart.getNum() + addCartGoodsRequest.getNum());
             shopcart.setEditDate(new Date());

--
Gitblit v1.9.3