#
Junjie
4 天以前 2468af88e9ee9901f1d4d6f1cfdb6361c7400730
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -36,6 +36,7 @@
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j
@RestController
@@ -150,7 +151,7 @@
        return R.error("任务取消失败");
    }
    @RequestMapping("/deviceStatus")
    @PostMapping("/deviceStatus")
    // @OpenApiLog(memo = "获取设备状态")
    public R getDeviceStatus() {
        HashMap<String, Object> map = new HashMap<>();
@@ -229,6 +230,38 @@
        return R.ok().add(map);
    }
    @PostMapping("/stationStatus")
    public R getStationStatus(@RequestBody GetStationStatusParam param) {
        // 获取输送站点数据
        List<StationProtocol> stationProtocols = new ArrayList<>();
        List<DeviceConfig> devpList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>()
                .eq("device_type", String.valueOf(SlaveType.Devp))
        );
        for (DeviceConfig device : devpList) {
            StationThread stationThread = (StationThread) SlaveConnection.get(SlaveType.Devp, device.getDeviceNo());
            if (stationThread == null) {
                continue;
            }
            List<StationProtocol> tmp = new ArrayList<>();
            if(param.getStationIds() == null || param.getStationIds().isEmpty()) {
                tmp.addAll(stationThread.getStatus());
            }else {
                Map<Integer, StationProtocol> statusMap = stationThread.getStatusMap();
                for (Integer stationId : param.getStationIds()) {
                    StationProtocol stationProtocol = statusMap.get(stationId);
                    if (stationProtocol == null) {
                        continue;
                    }
                    tmp.add(stationProtocol);
                }
            }
            stationProtocols.addAll(tmp);
        }
        return R.ok().add(stationProtocols);
    }
    @PostMapping("/getLocInformation")
    @OpenApiLog(memo = "获取指定库位信息")
    public R getLocInformation(@RequestBody GetLocInformationParam param) {