#
luxiaotao1123
2024-10-14 c7140e8e3f979b212be1f7006bf1415a1ad4595b
#
2个文件已修改
2个文件已添加
81 ■■■■■ 已修改文件
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsDynamicNodeVo.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsVo.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsAgvVo.java
New file
@@ -0,0 +1,15 @@
package com.zy.acs.manager.core.domain;
import lombok.Data;
/**
 * Created by vincent on 10/14/2024
 */
@Data
public class MapWsAgvVo {
    private String agvNo;
    private String code;
}
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsDynamicNodeVo.java
New file
@@ -0,0 +1,18 @@
package com.zy.acs.manager.core.domain;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by vincent on 10/14/2024
 */
@Data
public class MapWsDynamicNodeVo {
    private Long zoneId;
    private List<String> dynamicNodeList = new ArrayList<>();
}
zy-acs-manager/src/main/java/com/zy/acs/manager/core/domain/MapWsVo.java
@@ -3,6 +3,8 @@
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by vincent on 10/14/2024
@@ -12,6 +14,8 @@
    private static final long serialVersionUID = -6988765880778795176L;
    private List<MapWsAgvVo> agvVos = new ArrayList<>();
    private List<MapWsDynamicNodeVo> dynamicNodeVos = new ArrayList<>();
}
zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/MapDataWsScheduler.java
@@ -1,9 +1,22 @@
package com.zy.acs.manager.core.scheduler;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.acs.common.utils.GsonUtils;
import com.zy.acs.manager.core.domain.MapWsAgvVo;
import com.zy.acs.manager.core.domain.MapWsVo;
import com.zy.acs.manager.manager.entity.Agv;
import com.zy.acs.manager.manager.entity.AgvDetail;
import com.zy.acs.manager.manager.entity.Code;
import com.zy.acs.manager.manager.service.AgvDetailService;
import com.zy.acs.manager.manager.service.AgvService;
import com.zy.acs.manager.manager.service.CodeService;
import com.zy.acs.manager.manager.websocket.MapWebSocket;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by vincent on 10/14/2024
@@ -11,11 +24,40 @@
@Component
public class MapDataWsScheduler {
    @Autowired
    private AgvService agvService;
    @Autowired
    private AgvDetailService agvDetailService;
    @Autowired
    private CodeService codeService;
    @Scheduled(cron = "0/1 * * * * ? ")
    public void broadcast() {
        MapWsVo mapWsVo = new MapWsVo();
        mapWsVo.setAgvVos(syncAgv());
        MapWebSocket.broadcast(GsonUtils.toJson(mapWsVo));
    }
        MapWebSocket.broadcast("123");
    private List<MapWsAgvVo> syncAgv() {
        List<MapWsAgvVo> agvVos = new ArrayList<>();
        List<Agv> agvList = agvService.list(new LambdaQueryWrapper<Agv>().eq(Agv::getStatus, 1));
        for (Agv agv : agvList) {
            AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId());
            if (null == agvDetail) { continue; }
            Long recentCode = agvDetail.getRecentCode();
            if (null == recentCode) { continue; }
            Code code = codeService.getById(recentCode);
            MapWsAgvVo vo = new MapWsAgvVo();
            vo.setAgvNo(agv.getUuid());
            vo.setCode(code.getData());
            agvVos.add(vo);
        }
        return agvVos;
    }
}