#
luxiaotao1123
2024-11-12 030ebaaa497945891aae611b7de41f4b4161b03a
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/AgvDataService.java
@@ -1,12 +1,12 @@
package com.zy.acs.manager.core.service;
import com.alibaba.fastjson.JSON;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.common.constant.RedisConstant;
import com.zy.acs.common.domain.AgvProtocol;
import com.zy.acs.common.domain.protocol.*;
import com.zy.acs.common.utils.GsonUtils;
import com.zy.acs.common.utils.RedisSupport;
import com.zy.acs.manager.common.domain.WebsocketDto;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.manager.core.domain.BackpackDto;
import com.zy.acs.manager.manager.entity.Agv;
import com.zy.acs.manager.manager.entity.AgvDetail;
import com.zy.acs.manager.manager.entity.Code;
@@ -16,7 +16,9 @@
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * Created by vincent on 2023/6/16
@@ -79,16 +81,14 @@
            // unlock path
            threadPoolRegulator.getInstance().execute(() -> {
//                avoidWaveCalculator.syncWaveBySingleVeh(protocol.getAgvNo(), agv_12_up.getQrCode());
                mapService.unlockPath(protocol.getAgvNo(), agv_12_up.getQrCode());
//                mapService.unlockPath(protocol.getAgvNo(), Utils.singletonList(agv_12_up.getQrCode()));
            });
            // finish jam
            threadPoolRegulator.getInstance().execute(() -> jamService.checkIfFinish(agv.getId(), agv_12_up.getQrCode()));
            websocketService.agvInfoBroadcastOnPos(new WebsocketDto<AGV_12_UP>("agv", agv.getUuid(), agv_12_up));
//            websocketService.agvInfoBroadcastOnPos(new WebsocketDto<AGV_12_UP>("agv", agv.getUuid(), agv_12_up));
            this.sync(agv_12_up, detail);
            redis.setObject(RedisConstant.DIGITAL_AGV_FLAG, agv.getUuid(), agv_12_up);
//            redis.setObject(RedisConstant.DIGITAL_AGV_FLAG, agv.getUuid(), agv_12_up);
            if (PRINT_LOG) {
                log.info("Agv [{}] 有码实时数据包 ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_12_up));
            }
@@ -96,9 +96,9 @@
        // 无码实时数据包
        if (msgBody instanceof AGV_13_UP) {
            AGV_13_UP agv_13_up = (AGV_13_UP) msgBody;
            websocketService.agvInfoBroadcastWithOutPos(new WebsocketDto<AGV_13_UP>("agv", agv.getUuid(), agv_13_up));
//            websocketService.agvInfoBroadcastWithOutPos(new WebsocketDto<AGV_13_UP>("agv", agv.getUuid(), agv_13_up));
            this.sync(agv_13_up, detail);
//            redis.setObject(RedisConstant.DIGITAL_AGV_FLAG, agv.getUuid(), agv_13_up); // todo
//            redis.setObject(RedisConstant.DIGITAL_AGV_FLAG, agv.getUuid(), agv_13_up);
            if (PRINT_LOG) {
                log.info("Agv [{}] 无码实时数据包 ===>> {}", protocol.getAgvNo(), JSON.toJSONString(agv_13_up));
            }
@@ -166,6 +166,16 @@
        detail.setSensorSts((long) mesBody.getSensorStatusFlags());
        List<BackpackDto> backpackDtoList = new ArrayList<>();
        backpackDtoList.add(new BackpackDto(1, mesBody.isTempLoc1()));
        backpackDtoList.add(new BackpackDto(2, mesBody.isTempLoc2()));
        backpackDtoList.add(new BackpackDto(3, mesBody.isTempLoc3()));
        backpackDtoList.add(new BackpackDto(4, mesBody.isTempLoc4()));
        backpackDtoList.add(new BackpackDto(5, mesBody.isTempLoc5()));
        backpackDtoList.add(new BackpackDto(6, mesBody.isTempLoc6()));
        backpackDtoList.add(new BackpackDto(7, mesBody.isTempLoc7()));
        detail.setBackpack(GsonUtils.toJson(backpackDtoList));
    }
    // 无码实时数据包
@@ -194,6 +204,16 @@
        detail.setSensorSts((long) mesBody.getSensorStatusFlags());
        List<BackpackDto> backpackDtoList = new ArrayList<>();
        backpackDtoList.add(new BackpackDto(1, mesBody.isTempLoc1()));
        backpackDtoList.add(new BackpackDto(2, mesBody.isTempLoc2()));
        backpackDtoList.add(new BackpackDto(3, mesBody.isTempLoc3()));
        backpackDtoList.add(new BackpackDto(4, mesBody.isTempLoc4()));
        backpackDtoList.add(new BackpackDto(5, mesBody.isTempLoc5()));
        backpackDtoList.add(new BackpackDto(6, mesBody.isTempLoc6()));
        backpackDtoList.add(new BackpackDto(7, mesBody.isTempLoc7()));
        detail.setBackpack(GsonUtils.toJson(backpackDtoList));
    }
    // 心跳包