From 09402133807b1e774e658a13ad365b2e6efca25b Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期一, 21 四月 2025 16:06:34 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java |   72 ++++++++++++++++++++++++------------
 1 files changed, 48 insertions(+), 24 deletions(-)

diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java
index acd2fcf..f7c9623 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java
@@ -2,11 +2,12 @@
 
 import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.mes.common.config.Const;
-import com.mes.damage.entity.Damage;
 import com.mes.damage.service.DamageService;
-import com.mes.temperingglass.service.TemperingGlassInfoService;
+import com.mes.largenscreen.entity.PieChartVO;
 import com.mes.temperingglass.entity.TemperingGlassInfo;
+import com.mes.temperingglass.service.TemperingGlassInfoService;
 import com.mes.tools.WebSocketServer;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -15,7 +16,6 @@
 
 import java.util.ArrayList;
 import java.util.List;
-import java.util.stream.Collectors;
 
 /**
  * @author SNG-010
@@ -38,7 +38,7 @@
     public void temperingGlassHome() {
         JSONObject jsonObject = new JSONObject();
         //姝e湪绛夊緟杩涚墖鐨勭幓鐠�
-        List<TemperingGlassInfo> waitingGlass = temperingAgoService.selectWaitingGlass();
+        List<TemperingGlassInfo> waitingGlass = temperingAgoService.selectWaitingGlassByOpc();
         if (waitingGlass != null) {
             jsonObject.append("waitingGlass", waitingGlass);
         }
@@ -66,27 +66,7 @@
         if (outGlass != null) {
             jsonObject.append("overGlass", overGlass);
         }
-        //褰撳墠閽㈠寲宸ョ▼鐨勬嬁璧版暟鎹�
-        LambdaQueryWrapper<TemperingGlassInfo> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.select(TemperingGlassInfo::getEngineerId)
-                .lt(TemperingGlassInfo::getState, Const.TEMPERING_END)
-                .groupBy(TemperingGlassInfo::getEngineerId);
 
-        List<String> engineerIds = temperingAgoService.list(queryWrapper)
-                .stream()
-                .map(TemperingGlassInfo::getEngineerId)
-                .distinct()
-                .collect(Collectors.toList());
-
-        List<Damage> temperingTakeGlassInfos = damageService.list(
-                new LambdaQueryWrapper<Damage>()
-                        .in(Damage::getEngineerId, engineerIds)
-                        .eq(Damage::getType, Const.GLASS_STATE_TAKE)
-                        .orderByAsc(Damage::getId)
-        );
-
-
-        jsonObject.append("temperingTakeGlassInfos", temperingTakeGlassInfos);
 
         ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("temperingGlass");
         if (sendwServer != null) {
@@ -121,5 +101,49 @@
 
     }
 
+    @Scheduled(fixedDelay = 1000)
+    public void largenScreen() {
+        JSONObject jsonObject = new JSONObject();
+        //澶у睆閽㈠寲淇℃伅
+        Integer putGlass = temperingAgoService.count(
+                new LambdaUpdateWrapper<TemperingGlassInfo>()
+                        .eq(TemperingGlassInfo::getState, Const.TEMPERING_NEW)
+        );
+        jsonObject.append("temperingTaskType", putGlass);
+        //澶у睆閽㈠寲淇℃伅
+        List<TemperingGlassInfo> temperingGlassInfoList = temperingAgoService.list(
+                new LambdaQueryWrapper<TemperingGlassInfo>()
+                        .select(TemperingGlassInfo::getEngineerId, TemperingGlassInfo::getTemperingLayoutId) // 閫夋嫨瑕佸幓閲嶇殑瀛楁
+                        .eq(TemperingGlassInfo::getState, Const.TEMPERING_START)
+                        .groupBy(TemperingGlassInfo::getEngineerId, TemperingGlassInfo::getTemperingLayoutId) // 鎸� engineerId 鍜� temperingLayoutId 鍒嗙粍
+        );
+        jsonObject.append("temperingGlassInfoList", temperingGlassInfoList.size());
+        //澶у睆閽㈠寲淇℃伅
+        List<TemperingGlassInfo> temperingGlassInfoInList = temperingAgoService.list(
+                new LambdaQueryWrapper<TemperingGlassInfo>()
+                        .select(TemperingGlassInfo::getEngineerId, TemperingGlassInfo::getTemperingLayoutId) // 閫夋嫨瑕佸幓閲嶇殑瀛楁
+                        .eq(TemperingGlassInfo::getState, Const.TEMPERING_DROP)
+                        .groupBy(TemperingGlassInfo::getEngineerId, TemperingGlassInfo::getTemperingLayoutId) // 鎸� engineerId 鍜� temperingLayoutId 鍒嗙粍
+        );
+        jsonObject.append("temperingGlassInfoInList", temperingGlassInfoInList.size());
+        //閽㈠寲楗煎浘鏁版嵁
+        List<PieChartVO> pieChartVOS = temperingAgoService.queryPieChart();
+        jsonObject.append("pieChartVOS", pieChartVOS);
+        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");
+                }
+            }
+        }
+    }
 
 }
\ No newline at end of file

--
Gitblit v1.8.0