From da0cb6ec9344641c5d1820e099131b58149b3fbc Mon Sep 17 00:00:00 2001 From: swb <jpy123456> Date: Fri, 15 Nov 2024 08:44:30 +0800 Subject: [PATCH] fix:国控站显示提交 --- screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java | 31 +++++++++++++++++++++++++++++-- 1 files changed, 29 insertions(+), 2 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java index 8763d27..a129ae8 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java @@ -20,6 +20,7 @@ import com.moral.api.service.HistoryHourlyService; import com.moral.api.service.SensorService; import com.moral.api.service.UnitConversionService; +import com.moral.api.utils.StringUtils; import com.moral.api.vo.OnlineRateVo; import com.moral.constant.Constants; import com.moral.constant.RedisConstants; @@ -55,6 +56,8 @@ @Autowired SensorService sensorService; + @Autowired + private DeviceService deviceService; @Autowired UnitConversionService unitConversionService; @@ -106,9 +109,18 @@ ); //������mac - List<String> macs = (List<String>) params.remove("macs"); + List<String> macList = (List<String>) params.remove("macs"); List<Map<String, Object>> elementLists = new ArrayList<>(); - + List<String> idList = macList.stream().filter(it->it.contains(",avg")).collect(Collectors.toList()); + List<String> idListExcluding = macList.stream().filter(it->!it.contains(",avg")).collect(Collectors.toList()); + List<String> macs = new ArrayList<>(); + for(String s : idList){ + String mm = s.substring(0, s.indexOf(",avg")); + List<String> macResultList = deviceService.getMacMonitorPointId(Integer.parseInt(mm)); + macs.addAll(macResultList); + } + macs.addAll(idListExcluding); + macs = macs.stream().distinct().collect(Collectors.toList()); for (String mac : macs) { //���redis��������������������������� Device device = (Device) redisTemplate.opsForHash().get(RedisConstants.DEVICE_INFO, mac); @@ -533,6 +545,15 @@ QueryWrapper<Device> queryWrapper = new QueryWrapper<>(); queryWrapper.select("mac") .eq("organization_id", organizationId) + .eq("is_delete", Constants.NOT_DELETE); + return deviceMapper.selectObjs(queryWrapper); + } + + @Override + public List getMacMonitorPointId(Integer monitorPointId) { + QueryWrapper<Device> queryWrapper = new QueryWrapper<>(); + queryWrapper.select("mac") + .eq("monitor_point_id", monitorPointId) .eq("is_delete", Constants.NOT_DELETE); return deviceMapper.selectObjs(queryWrapper); } @@ -1234,4 +1255,10 @@ } return OrfList; } + private boolean subStr(String mac){ + if(StringUtils.isNotEmpty(mac)&&mac.contains(",avg")){ + return true; + } + return false; + } } -- Gitblit v1.8.0