wangfei
2025-09-19 af7f09e7965887b034c9add213bf68c816f22338
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OPCPlcSlicecage.java
@@ -3,13 +3,11 @@
import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.xingshuangs.iot.protocol.s7.serializer.S7Serializer;
import com.kangaroohy.milo.model.ReadWriteEntity;
import com.kangaroohy.milo.service.MiloService;
import com.mes.bigstorage.entity.BigStorageCageDetails;
import com.mes.bigstorage.entity.dto.BigStorageSummaryDTO;
import com.mes.bigstorage.service.BigStorageCageDetailsService;
import com.mes.bigstorage.service.BigStorageCageService;
import com.mes.bigstoragecagetask.entity.BigStorageCageHistoryTask;
import com.mes.bigstoragecagetask.entity.BigStorageCageTask;
import com.mes.bigstoragecagetask.entity.BigStorageTaskVO;
import com.mes.bigstoragecagetask.service.BigStorageCageHistoryTaskService;
@@ -22,7 +20,7 @@
import com.mes.s7.entity.S7DataDLPTwo;
import com.mes.temperingglass.entity.TemperingGlassInfo;
import com.mes.temperingglass.service.TemperingGlassInfoService;
import com.mes.tools.WebSocketServer;
import com.mes.tools.WebSocketUtils;
import com.mes.utils.RedisUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
@@ -70,6 +68,9 @@
    @Autowired
    @Qualifier("s7SerializerDLPTwo")
    private S7Serializer s7SerializerDLPTwo;
    @Resource
    private WebSocketUtils webSocketUtils;
    private JSONObject jsonObject = new JSONObject();
@@ -230,13 +231,7 @@
        jsonObject.append("autoPrint", autoPrint);
        //当前指定工程
        String temperingengineerId = "";
        if (redisUtil.getCacheObject("temperingengineerId") == null) {
            redisUtil.setCacheObject("temperingengineerId", temperingengineerId);
        } else {
            temperingengineerId = redisUtil.getCacheObject("temperingengineerId");
        }
        jsonObject.append("temperingengineerId", temperingengineerId);
        jsonObject.append("temperingEngineerId", redisUtil.getCacheObject("temperingEngineerId"));
    }
@@ -256,58 +251,25 @@
     * fixedDelay : 上一个调用结束后再次调用的延时
     */
    @Scheduled(fixedDelay = 3000)
    public void plcStorageCageTask() throws InterruptedException {
    public void plcStorageCageTask() throws Exception {
        jsonObject = new JSONObject();
        try {
            //查询使用数据源1查询数据
            queryDataSource1();
            //查询使用数据源2查询数据
        //查询使用数据源1查询数据
        queryDataSource1();
        //查询使用数据源2查询数据
//            queryDataSource2();
            ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("slicecage");
            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");
                    }
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        webSocketUtils.sendToWeb("slicecage", jsonObject);
    }
    @Scheduled(fixedDelay = 1000)
    public void largenScreen() {
        JSONObject jsonObject = new JSONObject();
        //理片笼使用情况
        ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("largenScreen");
        if (sendwServer != null) {
            List<Map<String, Object>> bigStorageCageUsage = bigStorageCageService.selectBigStorageCageUsage();
            jsonObject.append("bigStorageCageUsage", bigStorageCageUsage);
            List<PieChartVO> pieChartVOS = bigStorageCageService.queryPieChart();
            jsonObject.append("pieChartVOS", pieChartVOS);
            List<RunTime> tempRunTimes = bigStorageCageHistoryTaskService.queryRunTimes(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
            jsonObject.append("tempRunTimes", tempRunTimes);
            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");
                }
            }
        }
        List<Map<String, Object>> bigStorageCageUsage = bigStorageCageService.selectBigStorageCageUsage();
        jsonObject.append("bigStorageCageUsage", bigStorageCageUsage);
        List<PieChartVO> pieChartVOS = bigStorageCageService.queryPieChart();
        jsonObject.append("pieChartVOS", pieChartVOS);
        List<RunTime> tempRunTimes = bigStorageCageHistoryTaskService.queryRunTimes(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
        jsonObject.append("tempRunTimes", tempRunTimes);
        webSocketUtils.sendToWeb("largenScreen", jsonObject);
    }
}