From bf4249273b9664073993c71db2cb444f5c66d2af Mon Sep 17 00:00:00 2001 From: lizijie <lzjiiie@163.com> Date: Fri, 17 Sep 2021 14:14:17 +0800 Subject: [PATCH] 特殊设备历史表查询接口修改,无人机走航车秒数据补偿接口修改 --- screen-manage/src/main/java/com/moral/api/service/SpecialDeviceService.java | 3 + screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java | 5 +- screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceHistoryServiceImpl.java | 17 ++++++++ screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondUavServiceImpl.java | 5 +- screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java | 32 ++++++++++++++++ 5 files changed, 58 insertions(+), 4 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/service/SpecialDeviceService.java b/screen-manage/src/main/java/com/moral/api/service/SpecialDeviceService.java index ef103fc..8733c0a 100644 --- a/screen-manage/src/main/java/com/moral/api/service/SpecialDeviceService.java +++ b/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); + } diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java index 5292088..e9d6ac2 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java +++ b/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); diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondUavServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondUavServiceImpl.java index f3d7cb4..b65ee17 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/HistorySecondUavServiceImpl.java +++ b/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); diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceHistoryServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceHistoryServiceImpl.java index ea69baa..cfc7870 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceHistoryServiceImpl.java +++ b/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(); diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java index d216871..41aad0c 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java +++ b/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); -- Gitblit v1.8.0