From d635a99e20e207b40b16b8536c02a0b74df63c61 Mon Sep 17 00:00:00 2001
From: zzgtfwq <zzgtfwq>
Date: 星期一, 23 三月 2026 14:19:10 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |   82 ++++++++++++++++++----------------------
 1 files changed, 37 insertions(+), 45 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index aa13b84..d07afd0 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -180,52 +180,44 @@
             // 2. 淇濆瓨WrkMast
             WrkMast wrkMast = new WrkMast();
             int workNo = getWorkNo(0);
-            if(param.getIoType() == 2 || param.getIoType() == 12){
-                wrkMast.setWrkNo(workNo);
-                wrkMast.setUserNo(param.getTaskNo());
-                wrkMast.setIoType(param.getIoType() != 2?10:1);
-                wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0);
-                wrkMast.setBarcode(param.getBarcode());
-                wrkMast.setMemo(param.getMemo());
-                wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint()));
-                wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint()));
-                wrkMast.setLocNo(param.getTargetLocNo());
-                wrkMast.setSourceLocNo(param.getSourceLocNo());
-            }else if(param.getIoType() == 22 || param.getIoType() == 32){
-                wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode",param.getBarcode()));
-                wrkMast.setWrkSts(param.getIoType() != 32 ? 53L: 57L);
-                wrkMast.setWrkNo(workNo);
-                wrkMast.setUserNo(param.getTaskNo());
-                wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0);
-                wrkMast.setBarcode(param.getBarcode());
-                wrkMast.setMemo(param.getMemo());
-                wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint()));
-                wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint()));
-                wrkMast.setLocNo(param.getTargetLocNo());
-                wrkMast.setSourceLocNo(param.getSourceLocNo());
-            }else if(param.getIoType() == 3){
-                wrkMast.setWrkNo(workNo);
-                wrkMast.setUserNo(param.getTaskNo());
+
+            Integer sourceStaNo = (param.getStartPoint() == null || param.getStartPoint().isEmpty())
+                    ? null : Integer.valueOf(param.getStartPoint());
+
+            Integer targetStaNo = (param.getTargetPoint() == null || param.getTargetPoint().isEmpty())
+                    ? null : Integer.valueOf(param.getTargetPoint());
+
+            if (param.getIoType() == 2 || param.getIoType() == 12) {
+
+                wrkMast.setIoType(param.getIoType() != 2 ? 10 : 1);
+
+            } else if (param.getIoType() == 22 || param.getIoType() == 32) {
+
+                wrkMast = wrkMastService.selectOne(
+                        new EntityWrapper<WrkMast>().eq("barcode", param.getBarcode())
+                );
+
+                wrkMast.setWrkSts(param.getIoType() != 32 ? 53L : 57L);
+
+            } else if (param.getIoType() == 3) {
+                wrkMast.setEmptyMk("N");
                 wrkMast.setIoType(11);
-                wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 12.0);
-                wrkMast.setBarcode(param.getBarcode());
-                wrkMast.setMemo(param.getMemo());
-                wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint()));
-                wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint()));
-                wrkMast.setLocNo(param.getTargetLocNo());
-                wrkMast.setSourceLocNo(param.getSourceLocNo());
-            }else{
-                wrkMast.setWrkNo(workNo);
-                wrkMast.setUserNo(param.getTaskNo());
+
+            } else {
+
                 wrkMast.setIoType(ioType);
-                wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0);
-                wrkMast.setBarcode(param.getBarcode());
-                wrkMast.setMemo(param.getMemo());
-                wrkMast.setSourceStaNo(Integer.valueOf(param.getStartPoint()));
-                wrkMast.setStaNo(Integer.valueOf(param.getTargetPoint()));
-                wrkMast.setLocNo(param.getTargetLocNo());
-                wrkMast.setSourceLocNo(param.getSourceLocNo());
             }
+
+            /* 鍏叡瀛楁 */
+            wrkMast.setWrkNo(workNo);
+            wrkMast.setUserNo(param.getTaskNo());
+            wrkMast.setIoPri(param.getTaskPriority() != null ? param.getTaskPriority().doubleValue() : 11.0);
+            wrkMast.setBarcode(param.getBarcode());
+            wrkMast.setMemo(param.getMemo());
+            wrkMast.setSourceStaNo(sourceStaNo);
+            wrkMast.setStaNo(targetStaNo);
+            wrkMast.setLocNo(param.getTargetLocNo());
+            wrkMast.setSourceLocNo(param.getSourceLocNo());
 
             if(Inbound){
                 wrkMast.setWrkSts(2L);
@@ -268,7 +260,7 @@
             }
 
             // 3. 淇濆瓨WrkDetl
-            if (param.getDetlList() != null && !param.getDetlList().isEmpty()) {
+            if (param.getDetlList() != null && !param.getDetlList().isEmpty() && param.getIoType()!=3) {
                 for (TaskCreateParam.Detl detl : param.getDetlList()) {
                     WrkDetl wrkDetl = new WrkDetl();
                     wrkDetl.setWrkNo(wrkMast.getWrkNo());
@@ -353,7 +345,7 @@
 
                      staProtocol.setWorkNo(wrkMast.getWrkNo());
                      if (wrkMast.getStaNo() != null) {
-                        staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+                        staProtocol.setStaNo((short)(wrkMast.getSourceStaNo()- 1));
                      }
                      
                      // 涓嬪彂PLC鎸囦护

--
Gitblit v1.9.1