From 4a50bd93dfcdedb85f117d25f89e67291eb65cf7 Mon Sep 17 00:00:00 2001
From: cjl <276999030@qq.com>
Date: Sat, 14 Oct 2023 10:55:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cjl' into dev

---
 screen-manage/src/main/java/com/moral/api/service/impl/SysDictDataServiceImpl.java |   61 +++++++++++++++++++-----------
 1 files changed, 39 insertions(+), 22 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SysDictDataServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SysDictDataServiceImpl.java
index 78aaf42..3e0da43 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/SysDictDataServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/SysDictDataServiceImpl.java
@@ -13,6 +13,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.moral.api.service.SysDictTypeService;
 import com.moral.api.util.CacheUtils;
+import com.moral.api.util.LogUtils;
 import com.moral.constant.Constants;
 import com.moral.constant.RedisConstants;
 import com.moral.constant.ResponseCodeEnum;
@@ -51,18 +52,25 @@
         SysDictDataDTO dto = new SysDictDataDTO();
         //������
         Integer id = form.getId();
-        //���������������������������������������������
+        //������������������������������������������������������
         QueryWrapper existWrapper = new QueryWrapper();
         existWrapper.eq("is_delete", Constants.NOT_DELETE);
         existWrapper.eq("id", id);
         SysDictData existData = sysDictDataMapper.selectOne(existWrapper);
+        SysDictType type = sysDictTypeService.getDictTypeById(existData.getDictTypeId());
         //������������
         UpdateWrapper deleteWrapper = new UpdateWrapper();
         deleteWrapper.set("is_delete", Constants.DELETE);
         deleteWrapper.eq("id", id);
         sysDictDataMapper.update(null, deleteWrapper);
-        //������������
-        CacheUtils.clearDictionariesCache();
+        //������������
+        StringBuilder content = new StringBuilder("���������������������;");
+        content.append("������:" + type.getName() + "(" + type.getDesc() + ")" + ";");
+        content.append("key:" + existData.getDataKey() + ";");
+        content.append("value:" + existData.getDataValue() + ";");
+        LogUtils.saveOperationForManage(content.toString(), Constants.DELETE_OPERATE_TYPE);
+        //������������
+        refreshCache();
         //������������������
         dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
         dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
@@ -79,6 +87,7 @@
         existWrapper.eq("is_delete", Constants.NOT_DELETE);
         existWrapper.eq("id", sysDictData.getId());
         SysDictData existData = sysDictDataMapper.selectOne(existWrapper);
+        SysDictType type = sysDictTypeService.getDictTypeById(existData.getDictTypeId());
         //������key������������
         String key = sysDictData.getDataKey();
         if (!ObjectUtils.isEmpty(key)) {
@@ -95,21 +104,21 @@
         }
         //������������
         sysDictDataMapper.updateById(sysDictData);
-        //������������
-        CacheUtils.clearDictionariesCache();
+        //������������
+        StringBuilder content = new StringBuilder("���������������������;");
+        content.append("������:" + type.getName() + "(" + type.getDesc() + ")" + ";");
+        content.append("key:" + existData.getDataKey() + ";");
+        content.append("value:" + existData.getDataValue() + "->" + sysDictData.getDataValue() + ";");
+        LogUtils.saveOperationForManage(content.toString(), Constants.UPDATE_OPERATE_TYPE);
+        //������������
+        refreshCache();
         //������������������
         dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
         dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
         return dto;
     }
 
-    /**
-     * @Description: ������������������id������������������������
-     * @Param: [form]
-     * @return: com.moral.api.pojo.dto.sysDictData.SysDictDataDTO
-     * @Author: ���������
-     * @Date: 2021/4/16
-     */
+
     @Override
     public SysDictDataDTO insertData(SysDictDataInsertForm form) {
         SysDictDataDTO dto = new SysDictDataDTO();
@@ -136,21 +145,20 @@
         }
         //������������
         sysDictDataMapper.insert(sysDictData);
-        //������������
-        CacheUtils.clearDictionariesCache();
+        //������������
+        StringBuilder content = new StringBuilder("���������������������;");
+        content.append("������:" + type.getName() + "(" + type.getDesc() + ")" + ";");
+        content.append("key:" + sysDictData.getDataKey() + ";");
+        content.append("value:" + sysDictData.getDataValue() + ";");
+        LogUtils.saveOperationForManage(content.toString(), Constants.INSERT_OPERATE_TYPE);
+        //������������
+        refreshCache();
         //������������������
         dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
         dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
         return dto;
     }
 
-    /**
-     * @Description: ���������������������������������������������
-     * @Param: [typeName]
-     * @return: java.util.Map<java.lang.String                               ,                               java.lang.Object>
-     * @Author: ���������
-     * @Date: 2021/4/16
-     */
     @Override
     public Map<String, Object> queryDataByTypeName(String typeName) {
         Map<String, List<SysDictData>> datas = getAllDictData();
@@ -177,6 +185,7 @@
         return datas;
     }
 
+
     @Override
     public Map<String, SysDictData> getDictDatasByType(String type) {
         Map<String, List<SysDictData>> allDictData = getAllDictData();
@@ -188,11 +197,18 @@
         return result;
     }
 
+    @Override
+    public void refreshCache() {
+        redisTemplate.delete(RedisConstants.DICT_DATA_KEY);
+        Map<String, List<SysDictData>> datas = getDictDataFromDB();
+        redisTemplate.opsForValue().set(RedisConstants.DICT_DATA_KEY, datas);
+    }
+
 
     /**
      * @Description: ������������������������������������������������������������Map  Key��������������� value���������������
      * @Param: []
-     * @return: java.util.Map<java.lang.String                                                               ,                                                               java.util.List                                                               <                                                               com.moral.api.entity.sysDictData>>
+     * @return: java.util.Map<java.lang.String                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               java.util.List                                                                                                                                                                                                                                               <               com.moral.api.entity.sysDictData>>
      * @Author: ���������
      * @Date: 2021/4/14
      */
@@ -209,3 +225,4 @@
         return result;
     }
 }
+

--
Gitblit v1.8.0