From e0f5380c21b72184c1455c24eaffe371585e1691 Mon Sep 17 00:00:00 2001
From: czkh <czkh@163.com>
Date: 星期一, 12 一月 2026 10:12:29 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/asrs/controller/MatController.java |   28 ++++++++++++++++++++++------
 1 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MatController.java b/src/main/java/com/zy/asrs/controller/MatController.java
index b62d89b..21a3fa2 100644
--- a/src/main/java/com/zy/asrs/controller/MatController.java
+++ b/src/main/java/com/zy/asrs/controller/MatController.java
@@ -13,9 +13,7 @@
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.EmptyPlateOutParam;
 import com.zy.asrs.entity.result.KeyValueVo;
-import com.zy.asrs.service.InOutService;
-import com.zy.asrs.service.MatBarcodeService;
-import com.zy.asrs.service.MatService;
+import com.zy.asrs.service.*;
 import com.zy.asrs.utils.MatExcelListener;
 import com.zy.common.CodeRes;
 import com.zy.common.config.AdminInterceptor;
@@ -46,6 +44,12 @@
     private InOutService inOutService;
     @Autowired
     private MatBarcodeService matBarcodeService;
+    @Autowired
+    private WaitPakinService waitPakinService;
+    @Autowired
+    private LocDetlService locDetlService;
+    @Autowired
+    private WrkDetlService wrkDetlService;
 
     @RequestMapping(value = "/mat/auto/matnr/auth")
     public R autoMatnr(){
@@ -153,6 +157,9 @@
         if (Cools.isEmpty(mat) || null==mat.getId()){
             return R.error();
         }
+        if (null != matService.selectByMatnr(mat.getMatnr())) {
+            return R.error("鍟嗗搧妯″叿鍚嶇О宸插瓨鍦�");
+        }
         if (mat.getColor().equals("姝e父")){
             mat.setColor("鎶ュ簾");
         }else if (mat.getColor().equals("鎶ュ簾")){
@@ -195,9 +202,18 @@
             return R.error();
         }
         for (Mat entity : list){
-            if (!matService.delete(new EntityWrapper<>(entity))) {
-                throw new CoolException("鍒犻櫎澶辫触锛岃鑱旂郴绠$悊鍛�");
+            Integer locCount = locDetlService.selectCountByMatNr(entity.getMatnr());
+            Integer waitCount = waitPakinService.selectCountByMatNr(entity.getMatnr());
+            Integer wrkCount = wrkDetlService.selectCountByMatNr(entity.getMatnr());
+            InOut inOut = inOutService.selectByMatnr(entity.getMatnr());
+            if (locCount > 0 || waitCount > 0 || wrkCount >0){
+                throw new CoolException(entity.getMatnr() + "妯″叿搴撳瓨/缁勬墭/宸ヤ綔妗f暟鎹凡瀛樺湪,涓嶈兘鍒犻櫎");
+            }else {
+                if (!matService.delete(new EntityWrapper<>(entity)) && !inOutService.delete(new EntityWrapper<>(inOut))) {
+                    throw new CoolException("鍒犻櫎鍟嗗搧妗f/鍟嗗搧淇℃伅澶辫触锛岃鑱旂郴绠$悊鍛�");
+                }
             }
+
         }
         return R.ok();
     }
@@ -348,7 +364,7 @@
     public R matExcelImport(MultipartFile file) throws IOException {
         MatExcelListener listener = new MatExcelListener(getUserId());
         EasyExcel.read(file.getInputStream(), MatExcel.class, listener).sheet().doRead();
-        return R.ok("鎴愬姛鍚屾"+listener.getTotal()+"鏉″晢鍝佹暟鎹�");
+        return R.ok("鎴愬姛鍚屾"+listener.getTotal()+"鏉″晢鍝佹暟鎹�,鏇存柊" + listener.getCount() + "鏉″晢鍝佹暟鎹�");
     }
 
     /*************************************** xm-select ***********************************************/

--
Gitblit v1.9.1