#
vincentlu
2025-01-20 68214b4b6d8b04a84f23410e77afa02b63428a32
#
3个文件已修改
30 ■■■■ 已修改文件
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvDetailServiceImpl.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java
@@ -25,6 +25,8 @@
    private Integer battery;
    private String jobType;
    private String error;
//    public int getBackpackLoadedCount() {
zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
@@ -2,7 +2,10 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.acs.common.utils.GsonUtils;
import com.zy.acs.framework.common.Cools;
import com.zy.acs.manager.core.cache.CoreCache;
import com.zy.acs.manager.core.domain.BackpackDto;
import com.zy.acs.manager.core.domain.CodeStepDto;
import com.zy.acs.manager.core.domain.MapWsAgvVo;
import com.zy.acs.manager.core.domain.MapWsVo;
import com.zy.acs.manager.core.service.MapService;
@@ -28,9 +31,6 @@
import java.util.concurrent.Executors;
import java.util.stream.Collectors;
/**
 * Created by vincent on 10/14/2024
 */
@Slf4j
@Component
public class MapDataWsScheduler {
@@ -79,8 +79,8 @@
                , agvList.stream().map(Agv::getUuid).collect(Collectors.toSet()));
        for (Agv agv : agvList) {
            AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId());
            AgvModel agvModel = agvModelService.getByAgvId(agv.getId());
            AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId());
            if (null == agvDetail) { continue; }
            Long recentCode = agvDetail.getRecentCode();
            if (null == recentCode) { continue; }
@@ -94,6 +94,7 @@
            vo.setDirection(agvDetail.getAgvAngle());
            vo.setBackpack(GsonUtils.fromJsonToList(agvDetail.getBackpack(), BackpackDto.class));
            vo.setBattery(agvDetail.getSoc());
            vo.setJobType(this.getJobType(agv.getId(), code.getData()));
            vo.setError(agvDetail.realError());
            vo.setDynamicRoute(codeDataListMap.get(agv.getUuid()));
@@ -104,6 +105,20 @@
        return agvVos;
    }
    private String getJobType(Long agvId, String currCodeData) {
        if (null == agvId || Cools.isEmpty(currCodeData)) {
            return null;
        }
        CodeStepDto codeStepDto = CoreCache.AGV_MOCK_STEP_CACHE.get(agvId);
        if (null == codeStepDto) {
            return null;
        }
        if (!codeStepDto.getCodeData().equals(currCodeData)) {
            return null;
        }
        return codeStepDto.getJobType().toString();
    }
    @PreDestroy
    public void destroy() {
        this.singleThreadExecutor.shutdownNow();
zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/AgvDetailServiceImpl.java
@@ -82,11 +82,14 @@
    @Override
    public Code getCurrentCode(Long agvId) {
        AgvDetail agvDetail = this.selectMajorByAgvId(agvId);
        if (null == agvDetail) {
            return null;
        }
        Long recentCode = agvDetail.getRecentCode();
        if (null == recentCode) {
            return null;
        }
        return codeService.getById(recentCode);
        return codeService.getCacheById(recentCode);
    }
}