package com.mes.job;
|
|
import cn.hutool.json.JSONObject;
|
import com.mes.edgglasstask.entity.EdgGlassTaskInfo;
|
import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
|
import com.mes.edgstoragecage.service.EdgStorageCageDetailsService;
|
import com.mes.edgstoragecage.service.EdgStorageCageService;
|
import com.mes.tools.WebSocketServer;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @Author : zhoush
|
* @Date: 2024/12/4 9:41
|
* @Description:
|
*/
|
@Component
|
@Slf4j
|
public class PushMessageToIndex {
|
|
@Resource
|
EdgStorageCageDetailsService edgStorageCageDetailsService;
|
@Resource
|
EdgStorageCageService edgStorageCageService;
|
@Resource
|
EdgGlassTaskInfoService edgGlassTaskInfoService;
|
|
@Scheduled(fixedDelay = 1000)
|
public void CacheGlassTasks() {
|
JSONObject jsonObject = new JSONObject();
|
List<Map<String, Object>> currentCutTerritorys = edgStorageCageDetailsService.selectCutTerritory();
|
jsonObject.append("currentCutTerritory", currentCutTerritorys);
|
//log.info("本次识别版图{},++++{}",engineerId,currentCutTerritorys);
|
//卧室缓存笼内信息
|
List<Map<String, Object>> EdgStorageCageinfos = edgStorageCageService.selectEdgStorageCages();
|
jsonObject.append("EdgStorageCageinfos", EdgStorageCageinfos);
|
|
ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlass");
|
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");
|
}
|
}
|
}
|
}
|
|
@Scheduled(fixedDelay = 1000)
|
public void cacheGlassIsRun() {
|
JSONObject jsonObject = new JSONObject();
|
//正在进行的任务
|
List<EdgGlassTaskInfo> taskCaches = edgGlassTaskInfoService.selectTaskCacheIsRun();
|
jsonObject.append("taskCaches", taskCaches);
|
ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("cacheGlassIsRun");
|
if (sendwServer != null) {
|
for (WebSocketServer webserver : sendwServer) {
|
if (webserver != null) {
|
webserver.sendMessage(jsonObject.toString());
|
} else {
|
log.info("Home is closed");
|
}
|
}
|
}
|
}
|
|
@Scheduled(fixedDelay = 1000)
|
public void CacheGlassTaskss() {
|
JSONObject jsonObject = new JSONObject();
|
//log.info("本次识别版图{},++++{}",engineerId,currentCutTerritorys);
|
//磨边信息
|
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");
|
}
|
}
|
}
|
}
|
}
|