From 2c08bfb96d6523dfbf5ae543e94495c151aadbf1 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期五, 14 三月 2025 17:53:18 +0800
Subject: [PATCH] 大屏嵌入历史任务,生产统计显示

---
 hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java |   53 ++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 42 insertions(+), 11 deletions(-)

diff --git a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
index f8e0d28..0b867e9 100644
--- a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
+++ b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
@@ -11,9 +11,12 @@
 import com.mes.common.config.Const;
 import com.mes.hollow.entity.HollowBigStorageCageDetails;
 import com.mes.hollow.entity.HollowGlassOutRelationInfo;
+import com.mes.hollow.entity.dto.FlowCardGlassInfoDTO;
+import com.mes.hollow.entity.vo.HollowBigStorageDetailsQueryVO;
 import com.mes.hollow.service.HollowBigStorageCageDetailsService;
 import com.mes.hollow.service.HollowBigStorageCageService;
 import com.mes.hollow.service.HollowGlassOutRelationInfoService;
+import com.mes.hollow.service.HollowGlassRelationInfoService;
 import com.mes.hollowqueue.entity.HollowGlassQueueInfo;
 import com.mes.hollowqueue.service.HollowGlassQueueInfoService;
 import com.mes.tools.WebSocketServer;
@@ -48,6 +51,8 @@
     HollowBigStorageCageDetailsService hollowBigStorageCageDetailsService;
     @Resource
     BigStorageCageTaskService bigStorageCageTaskService;
+    @Resource
+    HollowGlassRelationInfoService hollowGlassRelationInfoService;
 
     @Autowired(required = false)
     MiloService miloService;
@@ -59,16 +64,15 @@
     public void hollowGlassTask() {
         List<HollowGlassOutRelationInfo> taskList = hollowGlassOutRelationInfoService.list(new LambdaQueryWrapper<HollowGlassOutRelationInfo>()
                 .in(HollowGlassOutRelationInfo::getState, Const.HOLLOW_FLOW_CARD_START));
-        if (CollectionUtil.isEmpty(taskList)) {
-            return;
-        }
         JSONObject jsonObject = new JSONObject();
-        List<Long> taskIdList = taskList.stream().map(HollowGlassOutRelationInfo::getId).collect(Collectors.toList());
-        List<HollowGlassQueueInfo> list = hollowGlassQueueInfoService.list(new LambdaQueryWrapper<HollowGlassQueueInfo>().in(HollowGlassQueueInfo::getRelationId, taskIdList));
-        Map<Integer, List<HollowGlassQueueInfo>> listMap = list.stream().collect(Collectors.groupingBy(HollowGlassQueueInfo::getCell));
-        jsonObject.append("930", listMap.get(930));
-        jsonObject.append("931", listMap.get(931));
-        jsonObject.append("932", listMap.get(932));
+        if (CollectionUtil.isNotEmpty(taskList)) {
+            List<Long> taskIdList = taskList.stream().map(HollowGlassOutRelationInfo::getId).collect(Collectors.toList());
+            List<HollowGlassQueueInfo> list = hollowGlassQueueInfoService.list(new LambdaQueryWrapper<HollowGlassQueueInfo>().in(HollowGlassQueueInfo::getRelationId, taskIdList));
+            Map<Integer, List<HollowGlassQueueInfo>> listMap = list.stream().collect(Collectors.groupingBy(HollowGlassQueueInfo::getCell));
+            jsonObject.append("930", listMap.get(930));
+            jsonObject.append("931", listMap.get(931));
+            jsonObject.append("932", listMap.get(932));
+        }
         try {
             //930绌洪棽淇″彿
             ReadWriteEntity freeOneRequestEntity = miloService.readFromOpcUa("CMJ1.CMJ1.isFree");
@@ -138,8 +142,8 @@
                     BigStorageTaskVO task = new BigStorageTaskVO();
                     task.setGlassId(requestWord.getValue() + "");
                     int isExistCount = hollowBigStorageCageDetailsService.count(new LambdaQueryWrapper<HollowBigStorageCageDetails>().in(HollowBigStorageCageDetails::getGlassId, task.getGlassId())
-                            .in(HollowBigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL_ZERO));
-                    if (isExistCount > 0 && "0".equals(targetSlotWord.getValue() + "")) {
+                            .in(HollowBigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL));
+                    if (isExistCount > 0) {
                         task.setIsSame(1);
                     } else {
                         task.setIsSame(0);
@@ -197,6 +201,33 @@
         //鐞嗙墖绗间娇鐢ㄦ儏鍐�
         List<Map<String, Object>> bigStorageCageUsage = hollowBigStorageCageService.selectBigStorageCageUsage();
         jsonObject.append("bigStorageCageUsage", bigStorageCageUsage);
+
+        //鐞嗙墖绗间娇鐢ㄦ儏鍐垫眹鎬�
+        HollowBigStorageDetailsQueryVO hollowBigStorageDetailsQueryVO = new HollowBigStorageDetailsQueryVO();
+        List<FlowCardGlassInfoDTO> bigStorageCageUsageSummary = hollowGlassRelationInfoService.queryHollowAllFlowCardSummary(hollowBigStorageDetailsQueryVO);
+        jsonObject.append("bigStorageCageUsageSummary", bigStorageCageUsageSummary);
     }
 
+    @Scheduled(fixedDelay = 1000)
+    public void largenScreen() {
+        JSONObject jsonObject = new JSONObject();
+        //鐞嗙墖绗间娇鐢ㄦ儏鍐�
+        List<Map<String, Object>> hollowBigStorageCageUsage = hollowBigStorageCageService.selectBigStorageCageUsage();
+        jsonObject.append("hollowBigStorageCageUsage", hollowBigStorageCageUsage);
+        ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreen");
+        if (sendwServer != null) {
+            for (WebSocketServer webserver : sendwServer) {
+                if (webserver != null) {
+                    webserver.sendMessage(jsonObject.toString());
+                    List<String> messages = webserver.getMessages();
+                    if (!messages.isEmpty()) {
+                        // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛�
+                        webserver.clearMessages();
+                    }
+                } else {
+                    log.info("largenScreen is closed");
+                }
+            }
+        }
+    }
 }

--
Gitblit v1.8.0