From 9571229a2013472dc701ecf5767f2873b36d8f90 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期四, 11 十二月 2025 17:07:19 +0800
Subject: [PATCH] 修复导入Excel功能工程号自增; 添加选择工程号自动填写玻璃id列表

---
 mes-processes/mes-plcSend/src/main/java/com/mes/interaction/flow/LargeGlassInteraction.java |   56 +++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 43 insertions(+), 13 deletions(-)

diff --git a/mes-processes/mes-plcSend/src/main/java/com/mes/interaction/flow/LargeGlassInteraction.java b/mes-processes/mes-plcSend/src/main/java/com/mes/interaction/flow/LargeGlassInteraction.java
index 7a24ee6..3a9f805 100644
--- a/mes-processes/mes-plcSend/src/main/java/com/mes/interaction/flow/LargeGlassInteraction.java
+++ b/mes-processes/mes-plcSend/src/main/java/com/mes/interaction/flow/LargeGlassInteraction.java
@@ -25,20 +25,50 @@
 
     @Override
     public InteractionResult execute(InteractionContext context) {
-        Object source = context.getSharedData().get("glassesFromVehicle");
-        List<String> glassQueue = castList(source);
-        if (CollectionUtils.isEmpty(glassQueue)) {
-            return InteractionResult.waitResult("绛夊緟涓婂ぇ杞﹁緭鍑�", null);
+        try {
+            // 鍓嶇疆鏉′欢楠岃瘉
+            if (context.getCurrentDevice() == null) {
+                return InteractionResult.fail("璁惧閰嶇疆涓嶅瓨鍦�");
+            }
+
+            // 妫�鏌ュぇ杞﹁澶囨槸鍚﹀畬鎴�
+            Object source = context.getSharedData().get("glassesFromVehicle");
+            List<String> glassQueue = castList(source);
+            if (CollectionUtils.isEmpty(glassQueue)) {
+                // 涔熷皾璇曚粠涓婁笅鏂囪幏鍙�
+                glassQueue = context.getLoadedGlassIds();
+                if (CollectionUtils.isEmpty(glassQueue)) {
+                    return InteractionResult.waitResult("绛夊緟澶ц溅璁惧杈撳嚭", null);
+                }
+            }
+
+            // 楠岃瘉鐜荤拑ID
+            for (String glassId : glassQueue) {
+                if (glassId == null || glassId.trim().isEmpty()) {
+                    return InteractionResult.fail("鐜荤拑ID涓嶈兘涓虹┖");
+                }
+            }
+
+            // 鎵ц澶х悊鐗囧鐞�
+            List<String> processed = new ArrayList<>(glassQueue);
+            context.setProcessedGlassIds(processed);
+            context.getSharedData().put("processedGlasses", processed);
+            context.getSharedData().put("largeGlassProcessTime", System.currentTimeMillis());
+
+            // 鍚庣疆鏉′欢妫�鏌�
+            if (context.getProcessedGlassIds().isEmpty()) {
+                return InteractionResult.fail("澶х悊鐗囧鐞嗗け璐ワ細澶勭悊鍚庣殑鐜荤拑ID鍒楄〃涓虹┖");
+            }
+
+            Map<String, Object> data = new HashMap<>();
+            data.put("processedCount", processed.size());
+            data.put("processedGlasses", processed);
+            data.put("deviceId", context.getCurrentDevice().getId());
+            data.put("deviceCode", context.getCurrentDevice().getDeviceCode());
+            return InteractionResult.success(data);
+        } catch (Exception e) {
+            return InteractionResult.fail("澶х悊鐗囦氦浜掓墽琛屽紓甯�: " + e.getMessage());
         }
-
-        List<String> processed = new ArrayList<>(glassQueue);
-        context.setProcessedGlassIds(processed);
-        context.getSharedData().put("processedGlasses", processed);
-
-        Map<String, Object> data = new HashMap<>();
-        data.put("processedCount", processed.size());
-        data.put("processedGlasses", processed);
-        return InteractionResult.success(data);
     }
 
     @SuppressWarnings("unchecked")

--
Gitblit v1.8.0