From 0aea8bd18daaaf91e622fdcfdd81dbb2e1b4860c Mon Sep 17 00:00:00 2001
From: swb <jpy123456>
Date: Mon, 21 Oct 2024 09:01:18 +0800
Subject: [PATCH] fix:立行立改责任主体修改提交

---
 screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java |   43 +++++++++++++++++++++++++++----------------
 1 files changed, 27 insertions(+), 16 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java
index 88f87d2..b9bd60d 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java
@@ -14,6 +14,7 @@
 import com.moral.api.service.SysDictTypeService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 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;
@@ -22,7 +23,10 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.ObjectUtils;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -52,7 +56,7 @@
         SysDictTypeDTO dto = new SysDictTypeDTO();
         //������Id
         Integer typeId = form.getId();
-        //������type������������
+        //������������������type������������������
         QueryWrapper<SysDictType> existWrapper = new QueryWrapper<>();
         existWrapper.eq("is_delete",Constants.NOT_DELETE);
         existWrapper.eq("id",typeId);
@@ -72,15 +76,16 @@
         deleteDataWrapper.eq("dict_type_id",typeId);
         deleteDataWrapper.set("is_delete",Constants.DELETE);
         sysDictDataService.update(null,deleteDataWrapper);
-        //������������������
-        CacheUtils.clearDictionariesCache();
+        //������������
+        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+        LogUtils.saveOperationForManage(request,"������������������:"+type.getName(),Constants.DELETE_OPERATE_TYPE);
+        //������������������
+        refreshCache();
         //������������������
-        dto.setSysDictType(type);
         dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
         dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
         return dto;
     }
-
 
     @Override
     @Transactional
@@ -89,7 +94,7 @@
         SysDictTypeDTO dto = new SysDictTypeDTO();
         //������������
         SysDictType type = form.formConvertEntity();
-        //������type������������
+        //������type������������������
         QueryWrapper<SysDictType> existNameWrapper = new QueryWrapper<>();
         existNameWrapper.eq("id",type.getId());
         existNameWrapper.eq("is_delete",Constants.NOT_DELETE);
@@ -103,10 +108,9 @@
         sysDictTypeMapper.updateById(type);
         //������������������������
         SysDictType sysDictType = sysDictTypeMapper.selectById(type.getId());
-        //������������
-        CacheUtils.clearDictionariesCache();
+        //������������
+        refreshCache();
         //������������������
-        dto.setSysDictType(sysDictType);
         dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
         dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
         return dto;
@@ -120,10 +124,7 @@
         //������������������������
         SysDictType sysDictType = form.formConvertEntity();
         //������name������������������
-        QueryWrapper<SysDictType> existNameWrapper = new QueryWrapper<>();
-        existNameWrapper.eq("name",sysDictType.getName());
-        existNameWrapper.eq("is_delete",Constants.NOT_DELETE);
-        SysDictType existType = sysDictTypeMapper.selectOne(existNameWrapper);
+        SysDictType existType = sysDictTypeMapper.listOne(sysDictType.getName());
         if(!ObjectUtils.isEmpty(existType)){
             dto.setCode(ResponseCodeEnum.DICTTYPE_EXIST.getCode());
             dto.setMsg(ResponseCodeEnum.DICTTYPE_EXIST.getMsg());
@@ -131,10 +132,12 @@
         }
         //������������
         sysDictTypeMapper.insert(sysDictType);
-        //������������
-        CacheUtils.clearDictionariesCache();
+        //������������
+        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+        LogUtils.saveOperationForManage(request,"������������������:"+sysDictType.getName(),Constants.INSERT_OPERATE_TYPE);
+        //������������
+        refreshCache();
         //������������������
-        dto.setSysDictType(sysDictType);
         dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
         dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
         return dto;
@@ -199,9 +202,17 @@
     private List<SysDictType> getAllDictTypeFromDB() {
         QueryWrapper<SysDictType> wrapper = new QueryWrapper<>();
         wrapper.eq("is_delete", Constants.NOT_DELETE);
+        wrapper.orderByAsc("id");
         List<SysDictType> sysDictTypes = sysDictTypeMapper.selectList(wrapper);
         return sysDictTypes;
     }
 
+    @Override
+    public void refreshCache(){
+        redisTemplate.delete(RedisConstants.DICT_TYPE_KEY);
+        List<SysDictType> types = getAllDictTypeFromDB();
+        redisTemplate.opsForValue().set(RedisConstants.DICT_TYPE_KEY,types);
+    }
+
 
 }

--
Gitblit v1.8.0