From dd76858f35bb4fdd76d5976465e9bd96267b0f0b Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期三, 06 五月 2026 09:50:53 +0800
Subject: [PATCH] 初始化

---
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java |   23 +++++++++++++++++++++--
 1 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 6535f89..40948de 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -21,6 +21,8 @@
 import com.zy.common.properties.SlaveProperties;
 import com.zy.common.service.CommonService;
 import com.zy.common.web.WcsController;
+import com.zy.system.entity.User;
+import com.zy.system.mapper.UserMapper;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -81,6 +83,9 @@
     private WaitPakinService waitPakinService;
     @Resource
     private BasDevpMapper basDevpMapper;
+
+    @Resource
+    private UserMapper userMapper;
 
     @Override
     @Transactional
@@ -206,7 +211,11 @@
         for (StockOutParam.LocDetl paramLocDetl : param.getLocDetls()) {
             if (!Cools.isEmpty(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getCount())) {
                 LocDetl one = locDetlService.selectItem(paramLocDetl.getLocNo(), paramLocDetl.getMatnr(), paramLocDetl.getBatch());
-                if (null != one) locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount()));
+                if (null != one) {
+                    if (one.getFrozen() == 1)
+                        throw new CoolException(one.getMatnr() + "銆�" + one.getBatch() + "銆�" + "宸插喕缁�");
+                    locDetlDtos.add(new LocDetlDto(one, paramLocDetl.getCount()));
+                }
             }
         }
         if (!locDetlDtos.isEmpty()) {
@@ -304,6 +313,8 @@
                 wrkDetl.setAppeUser(userId);
                 wrkDetl.setModiTime(now);
                 wrkDetl.setModiUser(userId);
+                wrkDetl.setSourceStaNo(wrkMast.getSourceStaNo());
+                wrkDetl.setStaNo(wrkMast.getStaNo());
                 if (!wrkDetlService.insert(wrkDetl)) {
                     throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
                 }
@@ -872,6 +883,14 @@
         if (Cools.isEmpty(wrkMast)){
             throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
         }
+
+        User user = userMapper.selectById(userId);
+        if ("user".equals(user.getRolCode())) {
+             if (!(wrkMast.getWrkSts() == 1 || wrkMast.getWrkSts() == 11)) {
+                 throw new CoolException("璇ュ伐浣滅姸鎬佷笉鍙彇娑�");
+             }
+        }
+
         String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
         String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
         // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
@@ -995,7 +1014,7 @@
         if (wrkMast.getIoType() != 10 && wrkMast.getIoType() != 110) {
             // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
             if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
-//                throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo());
+                throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo());
             }
             // 鍒犻櫎宸ヤ綔妗f槑缁�
             boolean wrkDetlRes = wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo));

--
Gitblit v1.9.1