| | |
| | | .isNotNull(DeviceLedger::getExternalCode) |
| | | .ne(DeviceLedger::getExternalCode, "")); |
| | | |
| | | Map<String, String> guidDeviceNameMap = iotDevices.stream() |
| | | Map<String, DeviceLedger> guidDeviceMap = iotDevices.stream() |
| | | .filter(item -> StringUtils.isNotEmpty(item.getExternalCode())) |
| | | .collect(Collectors.toMap( |
| | | item -> item.getExternalCode().trim(), |
| | | item -> StringUtils.isNotEmpty(item.getDeviceName()) ? item.getDeviceName().trim() : "", |
| | | (oldValue, newValue) -> StringUtils.isNotEmpty(oldValue) ? oldValue : newValue, |
| | | item -> item, |
| | | (oldValue, newValue) -> StringUtils.isNotEmpty(oldValue.getDeviceName()) ? oldValue : newValue, |
| | | LinkedHashMap::new |
| | | )); |
| | | List<String> guidList = new ArrayList<>(guidDeviceNameMap.keySet()); |
| | | List<String> guidList = new ArrayList<>(guidDeviceMap.keySet()); |
| | | |
| | | List<Map<String, String>> maps = realTimeEnergyConsumptionService |
| | | .getRealData(guidList); |
| | | for (Map<String, String> item : maps) { |
| | | String guid = item.get("guid"); |
| | | if (StringUtils.isNotEmpty(guid)) { |
| | | String deviceName = guidDeviceNameMap.get(guid.trim()); |
| | | if (StringUtils.isNotEmpty(deviceName)) { |
| | | item.put("deviceName", deviceName); |
| | | DeviceLedger device = guidDeviceMap.get(guid.trim()); |
| | | if (device != null) { |
| | | if (StringUtils.isNotEmpty(device.getDeviceName())) { |
| | | item.put("deviceName", device.getDeviceName().trim()); |
| | | } |
| | | if (StringUtils.isNotEmpty(device.getStorageLocation())) { |
| | | item.put("storageLocation", device.getStorageLocation().trim()); |
| | | } |
| | | } |
| | | } |
| | | } |