From 66ab6b7d3ac3e7a50a8a0c1506ea5448ea8d8eee Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Fri, 21 May 2021 13:38:26 +0800
Subject: [PATCH] screen-manage                       对后台用户进行修改和删除时,销毁其token

---
 screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java |   42 ++++++++++++++++++++++++++++++++++--------
 1 files changed, 34 insertions(+), 8 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
index 14da511..ed60274 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
@@ -5,7 +5,9 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.moral.api.entity.ManageRole;
 import com.moral.api.entity.Sensor;
+import com.moral.api.entity.VersionSensorUnit;
 import com.moral.api.mapper.SensorMapper;
+import com.moral.api.mapper.VersionSensorUnitMapper;
 import com.moral.api.service.SensorService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.moral.api.util.LogUtils;
@@ -41,6 +43,9 @@
 
     @Autowired(required = false)
     private SensorMapper sensorMapper;
+
+    @Autowired(required = false)
+    private VersionSensorUnitMapper versionSensorUnitMapper;
 
     @Autowired
     LogUtils logUtils;
@@ -123,14 +128,29 @@
         HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
         String content = "������������:"+oldSensor.getName()+";";
         for (Object key:updateSensorMap.keySet()) {
-            if (key.toString().equals("name")){
-                content = content+"���������:"+oldSensor.getName()+"->"+updateSensorMap.get(key)+";";
+            if (key.toString().equals("name")&&updateSensorMap.get(key)!=null){
+                content = content+"���������:"+oldSensor.getName()+"->"+updateSensorMap.get(key)+";";
             }
-            if (key.toString().equals("code")){
+            if (key.toString().equals("code")&&updateSensorMap.get(key)!=null){
+                QueryWrapper<VersionSensorUnit> wrapper_Version = new QueryWrapper<>();
+                wrapper_Version.eq("sensor_code",oldSensor.getCode());
+                wrapper_Version.eq("is_delete","0");
+                VersionSensorUnit versionSensorUnit = new VersionSensorUnit();
+                versionSensorUnit.setSensorCode(updateSensorMap.get(key).toString());
+                versionSensorUnitMapper.update(versionSensorUnit,wrapper_Version);
                 content = content+"������:"+oldSensor.getCode()+"->"+updateSensorMap.get(key)+";";
             }
-            if (key.toString().equals("desc")){
+            if (key.toString().equals("desc")&&updateSensorMap.get(key)!=null){
                 content = content+"������:"+oldSensor.getDesc()+"->"+updateSensorMap.get(key)+";";
+            }
+            if (key.toString().equals("upper")&&updateSensorMap.get(key)!=null){
+                content = content+"������:"+oldSensor.getDesc()+"->"+updateSensorMap.get(key)+";";
+            }
+            if (key.toString().equals("lower")&&updateSensorMap.get(key)!=null){
+                content = content+"������:"+oldSensor.getDesc()+"->"+updateSensorMap.get(key)+";";
+            }
+            if (key.toString().equals("default_unit_key")&&updateSensorMap.get(key)!=null){
+                content = content+"������������:"+oldSensor.getDesc()+"->"+updateSensorMap.get(key)+";";
             }
         }
         logUtils.saveOperationForManage(request,content,Constants.UPDATE_OPERATE_TYPE);
@@ -194,8 +214,14 @@
             return resultMap;
         }
         Sensor deleteSensor = new Sensor();
-        deleteSensor.setIsDelete("1");
+        deleteSensor.setIsDelete(Constants.DELETE);
         sensorMapper.update(deleteSensor,wrapper);
+        QueryWrapper<VersionSensorUnit> wrapper_Version = new QueryWrapper<>();
+        wrapper_Version.eq("sensor_code",sensor.getCode());
+        wrapper_Version.eq("is_delete","0");
+        VersionSensorUnit versionSensorUnit = new VersionSensorUnit();
+        versionSensorUnit.setIsDelete(Constants.DELETE);
+        versionSensorUnitMapper.update(versionSensorUnit,wrapper_Version);
         //������������������
         HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
         String content = "������������:"+sensor.getName()+";";
@@ -250,7 +276,9 @@
     public Map<String,Sensor> getAllSensorFromCache(){
         Map<String,Sensor> sensors = redisTemplate.opsForHash().entries(RedisConstants.SENSOR_KEY);
         if(ObjectUtils.isEmpty(sensors))
-            return getAllSensorFromDB();
+            sensors =  getAllSensorFromDB();
+        //������������
+        refreshCache(sensors);
         return sensors;
     }
 
@@ -262,8 +290,6 @@
         for (Sensor sensor : sensors) {
             result.put(sensor.getCode(),sensor);
         }
-        //������������
-        refreshCache(result);
         return result;
     }
 

--
Gitblit v1.8.0