#
luxiaotao1123
2024-04-11 12bea86c9cb51f98fd5f2de904bb6a8d30e9e0e8
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java
@@ -11,8 +11,15 @@
import com.zy.asrs.wcs.core.map.controller.result.LocVo;
import com.zy.asrs.wcs.core.map.controller.result.ShuttleVo;
import com.zy.asrs.wcs.core.utils.Utils;
import com.zy.asrs.wcs.rcs.cache.SlaveConnection;
import com.zy.asrs.wcs.rcs.entity.Device;
import com.zy.asrs.wcs.rcs.entity.DeviceType;
import com.zy.asrs.wcs.rcs.model.enums.SlaveType;
import com.zy.asrs.wcs.rcs.model.protocol.LiftProtocol;
import com.zy.asrs.wcs.rcs.model.protocol.ShuttleProtocol;
import com.zy.asrs.wcs.rcs.service.DeviceService;
import com.zy.asrs.wcs.rcs.service.DeviceTypeService;
import com.zy.asrs.wcs.rcs.thread.ShuttleThread;
import com.zy.asrs.wcs.system.entity.Dict;
import com.zy.asrs.wcs.system.service.DictService;
import com.zy.asrs.wcs.system.service.UserService;
@@ -31,6 +38,10 @@
    private UserService userService;
    @Autowired
    private DictService dictService;
    @Autowired
    private DeviceTypeService deviceTypeService;
    @Autowired
    private DeviceService deviceService;
    public String getMapFloorList(Long userId) {
        String floorKey = "floor-list";
@@ -95,24 +106,29 @@
        return locVos;
    }
    public ShuttleVo getShuttleInfo(String shuttleNo) {
    public ShuttleVo getShuttleInfo(String shuttleNo, Long hostId) {
        ShuttleVo vo = new ShuttleVo();
        vo.setShuttleNo(shuttleNo);
        ShuttleProtocol protocol = new ShuttleProtocol();
        // todo checkout protocol
//        vo.setTaskNo(String.valueOf(protocol.getTaskNo()));
//        vo.setStatus(protocol.getProtocolStatusType().desc);
//        vo.setOriginLocNo(protocol.getSourceLocNo());
//        vo.setDestLocNo(protocol.getLocNo());
//        vo.setCurrentCode(protocol.getCurrentCode());
//        vo.setBatteryPower(protocol.getBatteryPower());
//        vo.setErrorCode(protocol.getErrorCode());
//        vo.setBatteryTemp(protocol.getBatteryTemp());
//        vo.setHasLift(protocol.getHasLift());
//        vo.setHasPallet(protocol.getHasPallet());
//        vo.setHasCharge(protocol.getHasCharge());
//        vo.setBatteryVoltage(String.valueOf(protocol.getBatteryVoltage()));
//        vo.setPakMk(protocol.getPakMk());
        DeviceType deviceType = deviceTypeService.getOne(new LambdaQueryWrapper<DeviceType>().eq(DeviceType::getFlag, SlaveType.Shuttle.toString()));
        Device device = deviceService.getOne(new LambdaQueryWrapper<Device>().eq(Device::getDeviceType, deviceType.getId()).eq(Device::getDeviceNo, shuttleNo));
        if (null == device) {
            return vo;
        }
        ShuttleThread thread = (ShuttleThread)SlaveConnection.get(SlaveType.Shuttle, device.getId().intValue());
        ShuttleProtocol protocol = thread.getStatus();
        vo.setTaskNo(String.valueOf(protocol.getTaskNo()));
        vo.setStatus(protocol.getProtocolStatusType().desc);
        vo.setOriginLocNo(protocol.getSourceLocNo());
        vo.setDestLocNo(protocol.getLocNo());
        vo.setCurrentCode(protocol.getCurrentCode());
        vo.setBatteryPower(protocol.getBatteryPower());
        vo.setErrorCode(protocol.getErrorCode());
        vo.setBatteryTemp(protocol.getBatteryTemp());
        vo.setHasLift(protocol.getHasLift());
        vo.setHasPallet(protocol.getHasPallet());
        vo.setHasCharge(protocol.getHasCharge());
        vo.setBatteryVoltage(String.valueOf(protocol.getBatteryVoltage()));
        vo.setPakMk(protocol.getPakMk());
        return vo;
    }