From 250bf364710321e064cbc06e310965a79a619983 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 07 四月 2026 13:17:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master-jxthTV

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

diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index fcf6235..ff16ea1 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -11,10 +11,12 @@
 
 import com.zy.asrs.entity.dto.TvDataDto;
 import com.zy.asrs.entity.dto.TvLocDataDto;
+import com.zy.asrs.entity.dto.WcsCrnDto;
 import com.zy.asrs.entity.dto.WcsStationDto;
 import com.zy.asrs.enums.RedisKeyType;
 import com.zy.asrs.service.BasStationTvService;
 import com.zy.asrs.service.TvDeviceService;
+import com.zy.asrs.utils.CrnUtils;
 import com.zy.asrs.utils.StationUtils;
 import com.zy.asrs.utils.Utils;
 import com.zy.common.utils.RedisUtil;
@@ -51,6 +53,8 @@
     private BasStationTvService basStationTvService;
     @Autowired
     private StationUtils stationUtils;
+    @Autowired
+    private CrnUtils crnUtils;
     @Autowired
     private RedisUtil redisUtil;
     @Autowired
@@ -189,7 +193,11 @@
                 continue;
             }
 
-            if(Cools.isEmpty(wcsStationDto.getTaskNo())){
+            if(Cools.isEmpty(wcsStationDto.getTaskNo())||wcsStationDto.getTaskNo().equals("0")) {
+                continue;
+            }
+
+            if (Cools.isEmpty(wcsStationDto.getWrkDetls())) {
                 continue;
             }
 
@@ -273,6 +281,25 @@
             }
         }
 
+        List<WcsCrnDto> crnList = new ArrayList<>(crnUtils.crnMap.values());
+        crnList.sort(Comparator.comparing(WcsCrnDto::getCrnNo, Comparator.nullsLast(Integer::compareTo)));
+        for (WcsCrnDto wcsCrnDto : crnList) {
+            if (wcsCrnDto == null || wcsCrnDto.getCrnNo() == null) {
+                continue;
+            }
+            if (wcsCrnDto.getOnline() == null || wcsCrnDto.getOnline() != 1) {
+                errors.add("鍫嗗灈鏈�#" + wcsCrnDto.getCrnNo() + "绂荤嚎");
+                continue;
+            }
+            if (wcsCrnDto.getAlarm() != null && wcsCrnDto.getAlarm() != 0) {
+                errors.add("鍫嗗灈鏈�#" + wcsCrnDto.getCrnNo() + "鎶ヨ锛屾姤璀︾爜锛�" + wcsCrnDto.getAlarm());
+            }
+            if (wcsCrnDto.getMode() == null || wcsCrnDto.getMode() != 3) {
+                String modeDesc = Cools.isEmpty(wcsCrnDto.getModeDesc()) ? "鏈煡" : wcsCrnDto.getModeDesc();
+                errors.add("鍫嗗灈鏈�#" + wcsCrnDto.getCrnNo() + "闈炶嚜鍔ㄦā寮忥紝褰撳墠妯″紡锛�" + modeDesc);
+            }
+        }
+
         String errorMsg = String.join("锛�", errors);
         Map<String, Object> result = new HashMap<>();
         result.put("errorMsg", errorMsg);

--
Gitblit v1.9.1