From 3a762add44449332d6d379e361698850f6066e16 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期一, 19 五月 2025 15:20:12 +0800
Subject: [PATCH] 修改

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOperateTypeServiceImpl.java |   31 +++++++++++++++++++++++++------
 1 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOperateTypeServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOperateTypeServiceImpl.java
index d1de2a7..9aa92b4 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOperateTypeServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOperateTypeServiceImpl.java
@@ -1,5 +1,7 @@
 package com.ruoyi.system.service.impl;
 
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.TypeReference;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.constant.CacheConstants;
@@ -20,12 +22,14 @@
 import com.ruoyi.system.mapper.SysOperateTypeMapper;
 import com.ruoyi.system.mapper.SysRoleMapper;
 import com.ruoyi.system.service.SysOperateTypeService;
+import org.apache.ibatis.logging.Log;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
 import javax.annotation.PostConstruct;
+import javax.annotation.Resource;
 import java.time.LocalDateTime;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -45,24 +49,30 @@
     @Autowired
     private SysRoleMapper roleMapper;
 
+    @Resource
+    private RedisCache redisCache;
+
+
     @PostConstruct
     public void init()
     {
         loadingOperateTypeCache();
+
     }
 
     @Override
     public void loadingOperateTypeCache() {
         LambdaQueryWrapper<SysOperateType> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(SysOperateType::getDelFlag, DeleteStatusEnum.YES.getStatus());
+        wrapper.eq(SysOperateType::getDelFlag, DeleteStatusEnum.NO.getStatus());
         List<SysOperateType> sysOperateTypes = operateTypeMapper.selectList(wrapper);
         if (!CollectionUtils.isEmpty(sysOperateTypes)){
             Map<Long, SysOperateTypeWholeNameBO> map = new HashMap<>();
             for (SysOperateType sysOperateType : sysOperateTypes) {
-                SysOperateTypeWholeNameBO nameBO = this.getOperateTypeWholeNameById(sysOperateType.getId());
+                SysOperateTypeWholeNameBO nameBO = this.operateTypeWholeNameCacheById(sysOperateType.getId());
                 map.put(sysOperateType.getId(),nameBO);
             }
-            SpringUtils.getBean(RedisCache.class).setCacheObject(CacheConstants.SYS_OPERATE_TYPE_NAME_KEY, map);
+            String info = JSON.toJSONString(map);
+            SpringUtils.getBean(RedisCache.class).setCacheObject(CacheConstants.SYS_OPERATE_TYPE_NAME_KEY, info);
         }
     }
 
@@ -85,7 +95,7 @@
     @Override
     public List<SysOperateType> selectOperateTypeList(OperateTypeListReqDTO reqDTO) {
         LambdaQueryWrapper<SysOperateType> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(SysOperateType::getDelFlag, DeleteStatusEnum.YES.getStatus());
+        wrapper.eq(SysOperateType::getDelFlag, DeleteStatusEnum.NO.getStatus());
         if (reqDTO != null && !StringUtils.isBlank(reqDTO.getName())){
             wrapper.eq(SysOperateType::getName,reqDTO.getName());
         }
@@ -302,8 +312,7 @@
         return this.operateTypeMapper.updateById(sysOperateType);
     }
 
-    @Override
-    public SysOperateTypeWholeNameBO getOperateTypeWholeNameById(Long id) {
+    private SysOperateTypeWholeNameBO operateTypeWholeNameCacheById(Long id){
         SysOperateType sysOperateType = operateTypeMapper.selectOperateTypeById(id);
         if (sysOperateType == null)
             return null;
@@ -333,6 +342,16 @@
         }
         return bo;
     }
+
+    @Override
+    public SysOperateTypeWholeNameBO getOperateTypeWholeNameById(Long id) {
+        String info = redisCache.getCacheObject(CacheConstants.SYS_OPERATE_TYPE_NAME_KEY);
+        Map<Long, SysOperateTypeWholeNameBO> map = JSON.parseObject(info, new TypeReference<Map<Long, SysOperateTypeWholeNameBO>>() {});
+        if (map != null){
+            return map.get(id);
+        }
+        return null;
+    }
     //
     ///**
     // * 递归列表

--
Gitblit v1.9.2