From aea7379082d3a9d53a35f62e8ff435254be8d213 Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期二, 04 十一月 2025 19:46:59 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/YiWuProject
---
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java | 189 ++++++++++++++++++----------------------------
1 files changed, 74 insertions(+), 115 deletions(-)
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
index 334cfba..57ec394 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
@@ -2,6 +2,8 @@
import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.mes.alarm.entity.ProductAlarmInfo;
+import com.mes.alarm.service.ProductAlarmInfoService;
import com.mes.common.config.Const;
import com.mes.edgglasstask.entity.EdgGlassTaskInfo;
import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
@@ -18,15 +20,17 @@
import com.mes.opctask.entity.EdgStorageDeviceTaskHistory;
import com.mes.opctask.service.EdgStorageDeviceTaskHistoryService;
import com.mes.opctask.service.EdgStorageDeviceTaskService;
-import com.mes.tools.WebSocketServer;
+import com.mes.tools.WebSocketUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
import java.time.LocalDate;
+import java.time.LocalDateTime;
import java.time.ZoneId;
-import java.util.ArrayList;
+import java.time.format.DateTimeFormatter;
import java.util.Date;
import java.util.List;
@@ -53,11 +57,16 @@
EngineeringService engineeringService;
@Resource
LargenScreenService largenScreenService;
+ @Resource
+ private ProductAlarmInfoService productAlarmInfoService;
+ private static final String ALARM_MODULE = "纾ㄨ竟";
+ private static final String ALARM_TYPE1 = "涓�绾垮崸寮忕悊鐗囩";
+ private static final String ALARM_TYPE2 = "浜岀嚎鍗у紡鐞嗙墖绗�";
+ private static final String ALARM_CODE_NOGLASS = "noGlass";
- private static final String EDG_STORAGE_DEVICE_ONE_TASK = "edg_storage_device_one_task";
-
- private static final String EDG_STORAGE_DEVICE_TWO_TASK = "edg_storage_device_two_task";
+ @Resource
+ private WebSocketUtils webSocketUtils;
@Scheduled(fixedDelay = 1000)
public void CacheGlassOneTasks() {
@@ -82,21 +91,20 @@
.orderByDesc(EdgStorageDeviceTaskHistory::getCreateTime).last("limit 1"));
jsonObject.append("taskMessage", taskHistory);
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get(webSocketName);
- 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("Home is closed");
- }
- }
+ //鎺ㄩ�佹姤璀︿俊鎭�
+ if (deviceId == 1) {
+ jsonObject.append("alarmInfo", productAlarmInfoService.list(new LambdaQueryWrapper<ProductAlarmInfo>()
+ .eq(ProductAlarmInfo::getState, Const.LOAD_RAW_GLASS_NEW)
+ .eq(ProductAlarmInfo::getAlarmModule, ALARM_MODULE)
+ .eq(ProductAlarmInfo::getAlarmType, ALARM_TYPE1)));
+ } else {
+
+ jsonObject.append("alarmInfo", productAlarmInfoService.list(new LambdaQueryWrapper<ProductAlarmInfo>()
+ .eq(ProductAlarmInfo::getState, Const.LOAD_RAW_GLASS_NEW)
+ .eq(ProductAlarmInfo::getAlarmModule, ALARM_MODULE)
+ .eq(ProductAlarmInfo::getAlarmType, ALARM_TYPE2)));
}
+ webSocketUtils.sendToWeb(webSocketName, jsonObject);
}
@Scheduled(fixedDelay = 1000)
@@ -111,21 +119,7 @@
public void currentCutDrawingTaskChild(String webSocketName, int deviceId, int stationCell) {
JSONObject jsonObject = edgStorageCageDetailsService.queryCurrentCutDrawing(deviceId, stationCell);
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get(webSocketName);
- 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("Home is closed");
- }
- }
- }
+ webSocketUtils.sendToWeb(webSocketName, jsonObject);
}
@Scheduled(fixedDelay = 1000)
@@ -134,97 +128,62 @@
//纾ㄨ竟淇℃伅
List<EdgGlassTaskInfo> edgTasks = edgGlassTaskInfoService.selectEdgInfo();
jsonObject.append("edgTasks", edgTasks);
-
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("edgTasks");
- 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("edgTasks is closed");
- }
- }
- }
+ webSocketUtils.sendToWeb("edgTasks", jsonObject);
}
- @Scheduled(fixedDelay = 1000)
+ @Scheduled(fixedDelay = 5000)
public void querySameDayProductionTask() {
JSONObject jsonObject = new JSONObject();
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreenProduction");
- if (sendwServer != null) {
- List<DailyProductionVO> productionVO = largenScreenService.querySameDayProduction(new DateRequest());
- jsonObject.append("productionVO", productionVO);
- for (WebSocketServer webserver : sendwServer) {
- if (webserver != null) {
- webserver.sendMessage(jsonObject.toString());
- List<String> messages = webserver.getMessages();
- if (!messages.isEmpty()) {
- // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛�
- webserver.clearMessages();
- }
- } else {
- log.info("largenScreenProduction is closed");
- }
- }
- }
+ List<DailyProductionVO> productionVO = largenScreenService.querySameDayProduction(new DateRequest());
+ jsonObject.append("productionVO", productionVO);
+ webSocketUtils.sendToWeb("largenScreenProduction", jsonObject);
+
}
- @Scheduled(fixedDelay = 500)
+ @Scheduled(fixedDelay = 5000)
public void largenScreen() {
JSONObject jsonObject = new JSONObject();
//纾ㄨ竟淇℃伅
+ Date startOfToday = new Date(LocalDate.now().atStartOfDay(ZoneId.systemDefault()).toInstant().toEpochMilli());
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ String formatted = sdf.format(startOfToday);
+ LocalDate date = LocalDate.parse(formatted); // formatted = "2025-05-23"
+ LocalDateTime start = date.atStartOfDay(); // 2025-05-23 00:00:00
+ LocalDateTime end = date.plusDays(1).atStartOfDay();
+ int edgOneCount = edgGlassTaskInfoService.count(
+ new LambdaQueryWrapper<EdgGlassTaskInfo>()
+ .lt(EdgGlassTaskInfo::getState, 2)
+ .eq(EdgGlassTaskInfo::getLine, 1)
+ .between(EdgGlassTaskInfo::getCreateTime, start, end)
+ );
+ edgOneCount = edgOneCount >= 6 ? 6 : edgOneCount;
+ int edgTwoCount = edgGlassTaskInfoService.count(
+ new LambdaQueryWrapper<EdgGlassTaskInfo>()
+ .lt(EdgGlassTaskInfo::getState, 2)
+ .eq(EdgGlassTaskInfo::getLine, 2)
+ .between(EdgGlassTaskInfo::getCreateTime, start, end)
+ );
+ edgTwoCount = edgTwoCount >= 6 ? 6 : edgTwoCount;
+ jsonObject.append("edgOneCount", edgOneCount);
+ jsonObject.append("edgTwoCount", edgTwoCount);
+ List<Engineering> engineeringOne = engineeringService.list(
+ new LambdaQueryWrapper<Engineering>()
+ .eq(Engineering::getStationCell, 5)
+ .eq(Engineering::getState, 0)
+ );
+ List<Engineering> engineeringTow = engineeringService.list(
+ new LambdaQueryWrapper<Engineering>()
+ .eq(Engineering::getStationCell, 6)
+ .eq(Engineering::getState, 0)
+ );
+ jsonObject.append("engineeringOne", engineeringOne);
+ jsonObject.append("engineeringTwo", engineeringTow);
+ List<PieChartVO> pieChartVOS = edgStorageCageDetailsService.queryPieChart();
+ jsonObject.append("pieChartVOS", pieChartVOS);
+ List<RunTime> loadRunTimes = edgStorageDeviceTaskHistoryService.queryRunTimes(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
+ jsonObject.append("loadRunTimes", loadRunTimes);
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreen");
- if (sendwServer != null) {
- Date startOfToday = new Date(LocalDate.now().atStartOfDay(ZoneId.systemDefault()).toInstant().toEpochMilli());
+ webSocketUtils.sendToWeb("largenScreen", jsonObject);
- List<EdgGlassTaskInfo> edgOneTasks = edgGlassTaskInfoService.list(
- new LambdaQueryWrapper<EdgGlassTaskInfo>()
- .lt(EdgGlassTaskInfo::getState, 2)
- .eq(EdgGlassTaskInfo::getLine, 1)
- .ge(EdgGlassTaskInfo::getCreateTime, startOfToday)
- );
- List<EdgGlassTaskInfo> edgTwoTasks = edgGlassTaskInfoService.list(
- new LambdaQueryWrapper<EdgGlassTaskInfo>()
- .lt(EdgGlassTaskInfo::getState, 2)
- .eq(EdgGlassTaskInfo::getLine, 2)
- .ge(EdgGlassTaskInfo::getCreateTime, startOfToday)
- );
- jsonObject.append("edgOneTasks", edgOneTasks);
- jsonObject.append("edgTwoTasks", edgTwoTasks);
- List<Engineering> engineeringOne = engineeringService.list(
- new LambdaQueryWrapper<Engineering>()
- .eq(Engineering::getStationCell, 5)
- .eq(Engineering::getState, 0)
- );
- List<Engineering> engineeringTow = engineeringService.list(
- new LambdaQueryWrapper<Engineering>()
- .eq(Engineering::getStationCell, 6)
- .eq(Engineering::getState, 0)
- );
- jsonObject.append("engineeringOne", engineeringOne);
- jsonObject.append("engineeringTwo", engineeringTow);
- List<PieChartVO> pieChartVOS = edgStorageCageDetailsService.queryPieChart();
- jsonObject.append("pieChartVOS", pieChartVOS);
- List<RunTime> loadRunTimes = edgStorageDeviceTaskHistoryService.queryRunTimes();
- jsonObject.append("loadRunTimes", loadRunTimes);
- 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