赵冬冬 4 rokov pred
rodič
commit
706d88a9d6

+ 6 - 10
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/PmsProductController.java

@@ -1,33 +1,29 @@
 package com.hwrj.cloud.admin.controller;
 
 
-import cn.hutool.http.HttpResponse;
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.excel.ExcelReader;
 import com.alibaba.excel.read.metadata.ReadSheet;
 import com.hwrj.cloud.admin.common.PmsProductOutput;
 import com.hwrj.cloud.admin.dao.PmsProductExcelDao;
-import com.hwrj.cloud.admin.dto.param.*;
-import com.hwrj.cloud.admin.listener.PmsProductExcelListener;
-import com.hwrj.cloud.admin.util.CurrUserUtil;
-import com.hwrj.cloud.common.api.CommonPage;
-import com.hwrj.cloud.common.api.CommonResult;
 import com.hwrj.cloud.admin.dto.PmsProductQueryParam;
 import com.hwrj.cloud.admin.dto.PmsProductResult;
+import com.hwrj.cloud.admin.dto.param.PmsProductExcel;
+import com.hwrj.cloud.admin.dto.param.SelectVo;
+import com.hwrj.cloud.admin.listener.PmsProductExcelListener;
 import com.hwrj.cloud.admin.model.PmsProduct;
 import com.hwrj.cloud.admin.service.PmsProductService;
+import com.hwrj.cloud.admin.util.CurrUserUtil;
+import com.hwrj.cloud.common.api.CommonPage;
+import com.hwrj.cloud.common.api.CommonResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Controller;
-import org.springframework.util.StringUtils;
 import org.springframework.validation.BindingResult;
-import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
-import javax.validation.constraints.NotNull;
 import java.io.IOException;
 import java.util.List;
 

+ 3 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dao/PmsProductDao.java

@@ -3,6 +3,8 @@ package com.hwrj.cloud.admin.dao;
 import com.hwrj.cloud.admin.dto.PmsProductResult;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 
 /**
  * 自定义商品管理Dao
@@ -15,4 +17,5 @@ public interface PmsProductDao {
     PmsProductResult getUpdateInfo(@Param("id") Long id);
 
 
+    long check(@Param("ids") List<Long> ids);
 }

+ 10 - 1
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/PmsProductServiceImpl.java

@@ -20,6 +20,7 @@ import com.hwrj.cloud.admin.mapper.*;
 import com.hwrj.cloud.admin.model.*;
 import com.hwrj.cloud.admin.service.PmsProductService;
 import com.hwrj.cloud.admin.util.CurrUserUtil;
+import com.hwrj.cloud.common.exception.GlobalException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
@@ -331,9 +332,17 @@ public class PmsProductServiceImpl implements PmsProductService {
         return productMapper.updateByExampleSelective(record, example);
     }
 
+    @Autowired
+    private PmsProductDao pmsProductDao;
+
     @Override
     public int updateDeleteStatus(List<Long> ids, Integer deleteStatus) {
-
+        if(deleteStatus.intValue() == 1){
+            long i =  pmsProductDao.check(ids);
+            if(i>0){
+                throw new GlobalException("你删除的商品产生预购订单!无法删除");
+            }
+        }
         PmsProduct record = new PmsProduct();
         record.setDeleteStatus(deleteStatus);
         PmsProductExample example = new PmsProductExample();

+ 13 - 0
forest-admin/admin-server/src/main/resources/dao/PmsProductDao.xml

@@ -33,5 +33,18 @@
         WHERE p.id=#{id};
     </select>
 
+    <select id="check" resultType="java.lang.Long">
+        SELECT
+            COUNT(0)
+        FROM
+            oms_pre_item a
+        WHERE
+            a.delete_status = 0
+        AND a.product_id IN
+        <foreach collection="ids" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </select>
+
 
 </mapper>

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 3029 - 3087
sql/forest-cloud-mall.sql


+ 15 - 0
sql/更新sql.sql

@@ -56,3 +56,18 @@ ALTER TABLE pms_brand ADD COLUMN `update_time` datetime DEFAULT NULL COMMENT '
 ALTER TABLE `pms_brand` ADD UNIQUE (`name`)
 
 
+# 产品索引
+ALTER TABLE `oms_pre_item` ADD INDEX idx_product_id ( `product_id` );
+
+# 产品购买人id索引
+ALTER TABLE `oms_pre_item` ADD INDEX idx_member_id ( `member_id` );
+
+# 产品供应商id索引
+ALTER TABLE `oms_pre_item` ADD INDEX idx_comp_id ( `comp_id` );
+
+# 产品发布人id索引
+ALTER TABLE `oms_pre_item` ADD INDEX idx_push_id ( `push_id` );
+
+# 生产地id索引
+ALTER TABLE `oms_pre_item` ADD INDEX idx_origin_id ( `origin_id` );
+