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/SpecialDeviceService.java | 4 +
screen-manage/src/main/java/com/moral/api/pojo/redisBean/SpecialDeviceInfoDTO.java | 41 +++++++++++++
screen-manage/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java | 105 ++++++++++++++++++----------------
screen-common/src/main/java/com/moral/constant/RedisConstants.java | 5 +
4 files changed, 106 insertions(+), 49 deletions(-)
diff --git a/screen-common/src/main/java/com/moral/constant/RedisConstants.java b/screen-common/src/main/java/com/moral/constant/RedisConstants.java
index 69de65a..62593f3 100644
--- a/screen-common/src/main/java/com/moral/constant/RedisConstants.java
+++ b/screen-common/src/main/java/com/moral/constant/RedisConstants.java
@@ -35,6 +35,11 @@
public static final String DEVICE = "device";
/*
+ * redis���������������������key
+ * */
+ public static final String SPECIAL_DEVICE = "special_device";
+
+ /*
* ���������������������������������������������������������������
* ���������������hash
* key���mac
diff --git a/screen-manage/src/main/java/com/moral/api/pojo/redisBean/SpecialDeviceInfoDTO.java b/screen-manage/src/main/java/com/moral/api/pojo/redisBean/SpecialDeviceInfoDTO.java
new file mode 100644
index 0000000..893d60c
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/pojo/redisBean/SpecialDeviceInfoDTO.java
@@ -0,0 +1,41 @@
+package com.moral.api.pojo.redisBean;
+
+import com.moral.api.entity.*;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @program: screen
+ * @description: ������������������redis���������
+ * @author: lizijie
+ * @create: 2021-09-14 16:41
+ **/
+@Data
+public class SpecialDeviceInfoDTO {
+
+ /**
+ * ������������
+ */
+ private SpecialDevice specialDevice;
+
+ /**
+ * ������������
+ */
+ private GovMonitorPoint govMonitorPoint;
+
+ /**
+ * ������
+ */
+ private Version version;
+
+ /**
+ * ���������
+ */
+ private List<ManageAccount> operates;
+
+ /**
+ * ������
+ */
+ private Organization organization;
+}
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 8de3745..ef103fc 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
@@ -2,6 +2,7 @@
import com.moral.api.entity.SpecialDevice;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.moral.api.pojo.redisBean.SpecialDeviceInfoDTO;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@@ -31,4 +32,7 @@
//������������id���������������������������������������
Map<String, Object> selectDeviceInfoById(Integer deviceId);
+ //������������id���������������������������������������
+ SpecialDeviceInfoDTO selectDeviceInfoDTOById(Integer deviceId);
+
}
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