zhoushihao
2024-12-23 7b18719395d285812986a6ec876e4c55359185f2
1、卧式理片推送数据与切割版图推送数据websocket分开
2个文件已修改
53 ■■■■ 已修改文件
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java
@@ -21,6 +21,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -37,11 +38,8 @@
@Service
public class EdgStorageCageServiceImpl extends MPJBaseServiceImpl<EdgStorageCageMapper, EdgStorageCage> implements EdgStorageCageService {
    @Autowired
    @Resource
    EdgStorageCageDetailsMapper edgStorageCageDetailsMapper;
    @Autowired
    UpPattenUsageMapper upPattenUsageMapper;
    @Autowired
    DamageService damageService;
@@ -72,7 +70,10 @@
     */
    @Override
    public List<EdgStorageCageVO> selectEdgStorageCagesByDeviceId(int deviceId) {
        List<EdgStorageCageVO> storageCageVOS = this.selectJoinList(EdgStorageCageVO.class, new MPJLambdaWrapper<EdgStorageCage>().leftJoin(EdgStorageCageDetails.class, on -> on
        List<EdgStorageCageVO> storageCageVOS = this.selectJoinList(EdgStorageCageVO.class, new MPJLambdaWrapper<EdgStorageCage>()
                .selectAll(EdgStorageCage.class)
                .selectCollection(EdgStorageCageDetails.class,EdgStorageCageVO::getDetails)
                .leftJoin(EdgStorageCageDetails.class, on -> on
                .eq(EdgStorageCageDetails::getDeviceId, EdgStorageCage::getDeviceId)
                .eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot)
                .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN))
hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/job/PushMessageToIndex.java
@@ -50,25 +50,23 @@
    @Scheduled(fixedDelay = 1000)
    public void CacheGlassOneTasks() {
        CacheGlassTasksChild(EDG_STORAGE_DEVICE_ONE_TASK, "cacheGlassOne", 1, 5);
        CacheGlassTasksChild("cacheGlassOne", 1);
    }
    @Scheduled(fixedDelay = 1000)
    public void CacheGlassTwoTasks() {
        CacheGlassTasksChild(EDG_STORAGE_DEVICE_TWO_TASK, "cacheGlassTwo", 2, 6);
        CacheGlassTasksChild("cacheGlassTwo", 2);
    }
    private void CacheGlassTasksChild(String tableName, String webSocketName, int deviceId, int stationCell) {
    private void CacheGlassTasksChild(String webSocketName, int deviceId) {
        JSONObject jsonObject = new JSONObject();
        List<CutDrawingVO> currentCutDrawings = edgStorageCageDetailsService.queryCurrentCutDrawing(deviceId, stationCell);
        jsonObject.append("currentCutTerritory", currentCutDrawings);
        //卧室缓存笼内信息
        List<EdgStorageCageVO> edgStorageCageVOS = edgStorageCageService.selectEdgStorageCagesByDeviceId(deviceId);
        jsonObject.append("EdgStorageCageinfos", edgStorageCageVOS);
        //获取正在整形中的任务
        EdgStorageDeviceTaskHistory taskHistory = edgStorageDeviceTaskHistoryService.getOne(new LambdaQueryWrapper<EdgStorageDeviceTaskHistory>()
                .eq(EdgStorageDeviceTaskHistory::getDeviceId,deviceId)
                .eq(EdgStorageDeviceTaskHistory::getDeviceId, deviceId)
                .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW)
                .orderByDesc(EdgStorageDeviceTaskHistory::getCreateTime).last("limit 1"));
        jsonObject.append("taskMessage", taskHistory);
@@ -91,6 +89,38 @@
    }
    @Scheduled(fixedDelay = 1000)
    public void currentCutDrawingOneTask() {
        currentCutDrawingTaskChild("currentCutDrawingOne", 1, 5);
    }
    @Scheduled(fixedDelay = 1000)
    public void currentCutDrawingTwoTask() {
        currentCutDrawingTaskChild("currentCutDrawingTwo", 2, 6);
    }
    public void currentCutDrawingTaskChild(String webSocketName, int deviceId, int stationCell) {
        JSONObject jsonObject = new JSONObject();
        List<CutDrawingVO> currentCutDrawings = edgStorageCageDetailsService.queryCurrentCutDrawing(deviceId, stationCell);
        jsonObject.append("currentCutTerritory", currentCutDrawings);
        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");
                }
            }
        }
    }
    @Scheduled(fixedDelay = 1000)
    public void CacheGlassTaskss() {
        JSONObject jsonObject = new JSONObject();
        //磨边信息