screen-manage/src/main/java/com/moral/api/service/SpecialDeviceService.java
@@ -35,4 +35,7 @@ //根据设备id查询设备组织,维护人等信息 SpecialDeviceInfoDTO selectDeviceInfoDTOById(Integer deviceId); //特殊设备数据校准 Map<String,Object> adjustSpecialDeviceData(Map<String,Object> deviceData); } screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java
@@ -8,6 +8,7 @@ import com.moral.api.service.DeviceService; import com.moral.api.service.HistorySecondCruiserService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.api.service.SpecialDeviceService; import com.moral.constant.Constants; import com.moral.constant.RedisConstants; import com.moral.util.DateUtils; @@ -35,7 +36,7 @@ private HistorySecondCruiserMapper historySecondCruiserMapper; @Autowired private DeviceService deviceService; private SpecialDeviceService specialDeviceService; @Autowired private RedisTemplate redisTemplate; @@ -67,7 +68,7 @@ }).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); //数据校准 data = deviceService.adjustSpecialDeviceData(data); data = specialDeviceService.adjustSpecialDeviceData(data); HistorySecondCruiser historySecondCruiser = new HistorySecondCruiser(); historySecondCruiser.setMac(mac); screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondUavServiceImpl.java
@@ -8,6 +8,7 @@ import com.moral.api.service.DeviceService; import com.moral.api.service.HistorySecondUavService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.api.service.SpecialDeviceService; import com.moral.constant.Constants; import com.moral.constant.RedisConstants; import com.moral.util.DateUtils; @@ -35,7 +36,7 @@ private HistorySecondUavMapper historySecondUavMapper; @Autowired private DeviceService deviceService; private SpecialDeviceService specialDeviceService; @Autowired private RedisTemplate redisTemplate; @@ -67,7 +68,7 @@ }).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); //数据校准 data = deviceService.adjustSpecialDeviceData(data); data = specialDeviceService.adjustSpecialDeviceData(data); HistorySecondUav historySecondUav = new HistorySecondUav(); historySecondUav.setMac(mac); screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceHistoryServiceImpl.java
@@ -47,6 +47,9 @@ @Autowired(required = false) private OrganizationMapper organizationMapper; @Autowired(required = false) private GovMonitorPointMapper govMonitorPointMapper; @Autowired LogUtils logUtils; @@ -82,6 +85,20 @@ String updateTime = SDF.format(specialDeviceHistory.getUpdateTime()); specialDeviceHistoryMap.put("createTime",createTime); specialDeviceHistoryMap.put("updateTime",updateTime); Map<String,Object> govMonitorPointMap = new HashMap<>(); if (!ObjectUtils.isEmpty(specialDeviceHistory.getGuid()) && specialDeviceHistory.getGuid()!=null && !"".equals(specialDeviceHistory.getGuid())){ String guid = specialDeviceHistory.getGuid().toString(); QueryWrapper<GovMonitorPoint> wapper_govMonitorPoint = new QueryWrapper<>(); wapper_govMonitorPoint.eq("is_delete",Constants.NOT_DELETE); wapper_govMonitorPoint.eq("guid",guid); GovMonitorPoint govMonitorPoint = govMonitorPointMapper.selectOne(wapper_govMonitorPoint); if (!ObjectUtils.isEmpty(govMonitorPoint)){ govMonitorPointMap.put("id",govMonitorPoint.getId()); govMonitorPointMap.put("guid",govMonitorPoint.getGuid()); govMonitorPointMap.put("name",govMonitorPoint.getName()); } } specialDeviceHistoryMap.put("govMonitorPoint",govMonitorPointMap); List<Map<String,Object>> operateList = new ArrayList<>(); if (!ObjectUtils.isEmpty(specialDeviceHistory.getOperateIds()) && specialDeviceHistory.getOperateIds()!=null){ String operateIds = specialDeviceHistory.getOperateIds(); screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java
@@ -11,6 +11,7 @@ import com.moral.api.pojo.vo.device.DeviceVO; import com.moral.api.service.SpecialDeviceService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.api.util.AdjustDataUtils; import com.moral.api.util.CacheUtils; import com.moral.api.util.LogUtils; import com.moral.constant.Constants; @@ -75,6 +76,9 @@ @Autowired private LogUtils logUtils; @Autowired private AdjustDataUtils adjustDataUtils; /* * 从redis获取设备信息 @@ -543,6 +547,34 @@ return specialDeviceInfoDTO; } @Override public Map<String, Object> adjustSpecialDeviceData(Map<String, Object> deviceData) { String mac = deviceData.remove("mac").toString(); //从redis获取校准公式 Map<String, Object> adjustFormula = redisTemplate.opsForHash().entries(RedisConstants.ADJUST + "_" + mac); if (!org.springframework.util.ObjectUtils.isEmpty(adjustFormula)) { SpecialDeviceInfoDTO specialDeviceInfo = getDeviceInfoFromRedis(mac); if (org.springframework.util.ObjectUtils.isEmpty(specialDeviceInfo)) { QueryWrapper<SpecialDevice> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("mac", mac).eq("is_delete", Constants.NOT_DELETE); SpecialDevice specialDevice = specialDeviceMapper.selectOne(queryWrapper); if (specialDevice != null) { specialDeviceInfo = selectDeviceInfoDTOById(specialDevice.getId()); setDeviceInfoToRedis(mac, specialDeviceInfo); } } //获取设备绑定的国控站信息 Map<String, Object> govMpInfo = (Map<String, Object>) specialDeviceInfo.getGovMonitorPoint(); Map<String, Object> aqiMap = null; if (govMpInfo.get("guid") != null) { aqiMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, govMpInfo.get("guid").toString()); } return adjustDataUtils.adjust(deviceData, adjustFormula, org.springframework.util.ObjectUtils.isEmpty(aqiMap) ? null : aqiMap); } deviceData.remove("DataTime"); return deviceData; } private void insertOrganizationUnitAlarm(Integer orgId, Integer versionId) { QueryWrapper<OrganizationUnitAlarm> queryOrganizationVersionWrapper = new QueryWrapper<>(); queryOrganizationVersionWrapper.eq("organization_id", orgId);