2021与蓝度共同重构项目,服务端
liuhaonan
2022-05-17 83be53d31f313a341238fc9422cc0e42bd3c12cc
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -339,6 +339,8 @@
        List<Pole> online = new ArrayList<>();//在线
        List<Pole> offline = new ArrayList<>();//离线
        list.forEach(onLinePole -> {
            System.out.println("online---------------------------------------------------" + ("ONLINE").equals(onLinePole.getOnLineState()));
            System.out.println("online---------------------------------------------------" + (onLinePole.getOnLineState()));
            if (("ONLINE").equals(onLinePole.getOnLineState())) {
                online.add(onLinePole);
            } else if (("OFFLINE").equals(onLinePole.getOnLineState())) {
@@ -438,29 +440,20 @@
                MacCodes.add(post.getDeviceCode());
            }
        }
//
        List<BatchGetDeviceStateResponse.DeviceStatus> deviceStatuses = MainBoardInvokeSyncService.getInstance().batchGetDeviceState(MacCodes);
        if (deviceStatuses != null) {
            for (Pole post : list) {
                for (BatchGetDeviceStateResponse.DeviceStatus deviceStatus : deviceStatuses) {
        List<BatchGetDeviceStateResponse.DeviceStatus> deviceStatuses=null;
                    if (post.getDeviceCode() != null && post.getDeviceCode().equals(deviceStatus.getDeviceName())) {
                        post.setOnLineState(deviceStatus.getStatus());
        //拆分list
        List<List<String>> split = CollectionUtil.split(MacCodes, 50);
        for (List<String> splist : split) {
            deviceStatuses=MainBoardInvokeSyncService.getInstance().batchGetDeviceState(splist);
            if (deviceStatuses != null) {
                for (Pole post : list) {
                    for (BatchGetDeviceStateResponse.DeviceStatus deviceStatus : deviceStatuses) {
                        if (post.getDeviceCode() != null && post.getDeviceCode().equals(deviceStatus.getDeviceName())) {
                            post.setOnLineState(deviceStatus.getStatus());
                        }
                    }
                }
            }
        }
//        List<BatchGetDeviceStateResponse.DeviceStatus> deviceStatuses = MainBoardInvokeSyncService.getInstance().batchGetDeviceState(MacCodes);
        return list;
    }