From b7f5fd4000d644d117a0936dbcc2bfc56bfab4f0 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Thu, 16 Sep 2021 10:08:11 +0800
Subject: [PATCH] 新建特殊设备DTO类,存放保存到redis的数据

---
 screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java |  105 ++++++++++++++++++++++++++++------------------------
 1 files changed, 56 insertions(+), 49 deletions(-)

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 c25c945..48b5e86 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
@@ -7,6 +7,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.moral.api.entity.*;
 import com.moral.api.mapper.*;
+import com.moral.api.pojo.redisBean.SpecialDeviceInfoDTO;
 import com.moral.api.pojo.vo.device.DeviceVO;
 import com.moral.api.service.SpecialDeviceService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -78,22 +79,22 @@
     /*
      * ���redis������������������
      * */
-    private Map<String, Object> getDeviceInfoFromRedis(String mac) {
-        return (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.DEVICE, mac);
+    private SpecialDeviceInfoDTO getDeviceInfoFromRedis(String mac) {
+        return (SpecialDeviceInfoDTO) redisTemplate.opsForHash().get(RedisConstants.SPECIAL_DEVICE, mac);
     }
 
     /*
      * ������������������redis
      */
-    private void setDeviceInfoToRedis(String mac, Map<String, Object> deviceInfo) {
-        redisTemplate.opsForHash().put(RedisConstants.DEVICE, mac, deviceInfo);
+    private void setDeviceInfoToRedis(String mac, SpecialDeviceInfoDTO specialDeviceInfoDTO) {
+        redisTemplate.opsForHash().put(RedisConstants.SPECIAL_DEVICE, mac, specialDeviceInfoDTO);
     }
 
     /*
      * ���redis������������������
      */
     private void delDeviceInfoFromRedis(String mac) {
-        redisTemplate.opsForHash().delete(RedisConstants.DEVICE, mac);
+        redisTemplate.opsForHash().delete(RedisConstants.SPECIAL_DEVICE, mac);
     }
 
     @Override
@@ -321,7 +322,8 @@
             }
             logUtils.saveOperationForManage(request, content.toString(), Constants.UPDATE_OPERATE_TYPE);
         }
-        Map<String, Object> deviceInfo = selectDeviceInfoById(specialDevice.getId());
+        //Map<String, Object> deviceInfo = selectDeviceInfoById(specialDevice.getId());
+        SpecialDeviceInfoDTO specialDeviceInfoDTO = selectDeviceInfoDTOById(specialDevice.getId());
         //���������������������������
         insertOrganizationUnitAlarm(specialDevice.getOrganizationId(), specialDevice.getDeviceVersionId());
         //������������������������redis
@@ -329,7 +331,7 @@
         //���redis���������������������
         delDeviceInfoFromRedis(mac1);
         //������������������redis
-        setDeviceInfoToRedis(mac1, deviceInfo);
+        setDeviceInfoToRedis(mac1, specialDeviceInfoDTO);
         //������deviceInfo������
         CacheUtils.refreshSpecialDeviceAlarmInfo();
         //������������������
@@ -361,9 +363,9 @@
         }
         //���redis���������������������
         delDeviceInfoFromRedis(oleMac);
-        Map<String, Object> deviceInfo = selectDeviceInfoById(specialDeviceId);
+        SpecialDeviceInfoDTO specialDeviceInfoDTO = selectDeviceInfoDTOById(specialDevice.getId());
         //������������������redis
-        setDeviceInfoToRedis(updateSpecialDevice.getMac(), deviceInfo);
+        setDeviceInfoToRedis(updateSpecialDevice.getMac(), specialDeviceInfoDTO);
         //������deviceInfo������
         CacheUtils.refreshSpecialDeviceAlarmInfo();
         QueryWrapper<SpecialDeviceHistory> wrapper_specialDeviceHistory = new QueryWrapper<>();
@@ -474,38 +476,53 @@
 
     @Override
     public Map<String, Object> selectDeviceInfoById(Integer deviceId) {
+        return null;
+    }
+
+    @Override
+    public SpecialDeviceInfoDTO selectDeviceInfoDTOById(Integer deviceId) {
         String mac = specialDeviceMapper.selectById(deviceId).getMac();
-        Map<String, Object> specialDeviceInfo = getDeviceInfoFromRedis(mac);
+        SpecialDeviceInfoDTO specialDeviceInfoDTO = new SpecialDeviceInfoDTO();
+        SpecialDeviceInfoDTO specialDeviceInfoDTORedis = getDeviceInfoFromRedis(mac);
         //������redis������
-        if (specialDeviceInfo != null) {
-            return specialDeviceInfo;
+        if (specialDeviceInfoDTORedis != null) {
+            return specialDeviceInfoDTORedis;
         }
-        specialDeviceInfo = new LinkedHashMap<>();
-        //DeviceVO device = deviceMapper.selectDeviceInfoById(deviceId);
+
+        //������������������������
+        SpecialDevice specialDeviceInfo = new SpecialDevice();
         SpecialDevice specialDevice = specialDeviceMapper.selectById(deviceId);
-        //������
-        specialDeviceInfo.put("id", specialDevice.getId());
-        specialDeviceInfo.put("name", specialDevice.getName());
-        specialDeviceInfo.put("mac", specialDevice.getMac());
-        specialDeviceInfo.put("createTime", DateUtils.dateToDateString(specialDevice.getCreateTime()));
-        specialDeviceInfo.put("guid", specialDevice.getGuid());
+        System.out.println(specialDevice);
+        /*specialDeviceInfo.setId(specialDevice.getId());
+        specialDeviceInfo.setName(specialDevice.getName());
+        specialDeviceInfo.setMac(specialDevice.getMac());
+        specialDeviceInfo.setCreateTime(specialDevice.getCreateTime());*/
+        specialDeviceInfoDTO.setSpecialDevice(specialDevice);
 
-        //������������
-        //specialDeviceInfo.put("extend", device.getExtend());
+        //������������������������
+        GovMonitorPoint govMonitorPointInfo = new GovMonitorPoint();
+        QueryWrapper<GovMonitorPoint> wrapper_govMonitorPoint = new QueryWrapper<>();
+        wrapper_govMonitorPoint.eq("is_delete",Constants.NOT_DELETE);
+        wrapper_govMonitorPoint.eq("guid",specialDevice.getGuid());
+        GovMonitorPoint govMonitorPoint = govMonitorPointMapper.selectOne(wrapper_govMonitorPoint);
+        /*govMonitorPointInfo.setId(govMonitorPoint.getId());
+        govMonitorPointInfo.setGuid(govMonitorPoint.getGuid());
+        govMonitorPointInfo.setName(govMonitorPoint.getName());*/
+        specialDeviceInfoDTO.setGovMonitorPoint(govMonitorPoint);
 
-        //������
-        Map<String, Object> versionInfo = new LinkedHashMap<>();
+        //������������������
+        Version versionInfo = new Version();
         Version version = versionMapper.selectById(specialDevice.getDeviceVersionId());
-        versionInfo.put("id", version.getId());
-        versionInfo.put("name", version.getName());
-        specialDeviceInfo.put("version", versionInfo);
+        /*versionInfo.setId(version.getId());
+        versionInfo.setName(version.getName());*/
+        specialDeviceInfoDTO.setVersion(version);
 
-        //���������
-        List<Map<String, Object>> operatorsInfo = new ArrayList<>();
+        //���������������
+        List<ManageAccount> operatorsInfo = new ArrayList<>();
         String operateIds = specialDevice.getOperateIds();
         if (!ObjectUtils.isEmpty(operateIds)){
             String[] operateIdArr = operateIds.split(",");
-            if (operateIdArr.length>0){
+            if (operateIdArr.length > 0){
                 List<Integer> operateIdList = new ArrayList<>();
                 for (int i = 0; i < operateIdArr.length; i++){
                     operateIdList.add(Integer.parseInt(operateIdArr[i]));
@@ -513,29 +530,19 @@
                 QueryWrapper<ManageAccount> wapper_manageAccount = new QueryWrapper<>();
                 wapper_manageAccount.eq("is_delete",Constants.NOT_DELETE);
                 wapper_manageAccount.in("id",operateIdList);
-                List<ManageAccount> manageAccounts = manageAccountMapper.selectList(wapper_manageAccount);
-                for (ManageAccount manageAccount:manageAccounts) {
-                    Map<String,Object> operateMap = new HashMap<>();
-                    operateMap.put("id",manageAccount.getId());
-                    operateMap.put("name",manageAccount.getUserName());
-                    operatorsInfo.add(operateMap);
-                }
+                operatorsInfo = manageAccountMapper.selectList(wapper_manageAccount);
             }
         }
-        specialDeviceInfo.put("operators", operatorsInfo);
+        specialDeviceInfoDTO.setOperates(operatorsInfo);
 
-        //������
-        Map<String, Object> orgInfo = new LinkedHashMap<>();
-        Organization organization = organizationMapper.selectById(specialDevice.getOrganizationId());
-        orgInfo.put("id", organization.getId());
-        orgInfo.put("name", organization.getName());
-        orgInfo.put("areaCode", organization.getAreaCode());
-        orgInfo.put("cityCode", organization.getCityCode());
-        orgInfo.put("provinceCode", organization.getProvinceCode());
-        specialDeviceInfo.put("organization", orgInfo);
+        //������������
+        Organization organizationInfo = new Organization();
+        organizationInfo = organizationMapper.selectById(specialDevice.getOrganizationId());
+        specialDeviceInfoDTO.setOrganization(organizationInfo);
 
-        setDeviceInfoToRedis(mac, specialDeviceInfo);
-        return specialDeviceInfo;
+        System.out.println("========================");
+        System.out.println(specialDeviceInfoDTO);
+        return specialDeviceInfoDTO;
     }
 
     private void insertOrganizationUnitAlarm(Integer orgId, Integer versionId) {

--
Gitblit v1.8.0