From 7264d09d329cf0ff533d59fa6b7a01c605fa5b8c Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期五, 14 七月 2023 14:36:26 +0800
Subject: [PATCH] 添加查询图层的缓存功能

---
 src/main/java/com/lf/server/service/data/LayerService.java |   28 +++++++++++++++++++++++++---
 1 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/lf/server/service/data/LayerService.java b/src/main/java/com/lf/server/service/data/LayerService.java
index bbb6aa5..25cfe10 100644
--- a/src/main/java/com/lf/server/service/data/LayerService.java
+++ b/src/main/java/com/lf/server/service/data/LayerService.java
@@ -1,12 +1,16 @@
 package com.lf.server.service.data;
 
+import com.lf.server.entity.all.RedisCacheKey;
+import com.lf.server.entity.all.SettingData;
 import com.lf.server.entity.data.LayerEntity;
 import com.lf.server.helper.StringHelper;
 import com.lf.server.mapper.data.LayerMapper;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.lf.server.service.all.RedisService;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.util.List;
+import java.util.concurrent.TimeUnit;
 
 /**
  * 鍥惧眰
@@ -14,8 +18,11 @@
  */
 @Service
 public class LayerService implements LayerMapper {
-    @Autowired
+    @Resource
     LayerMapper layerMapper;
+
+    @Resource
+    RedisService redisService;
 
     @Override
     public Integer selectCount(String cnName) {
@@ -33,7 +40,22 @@
 
     @Override
     public List<LayerEntity> selectAll() {
-        return layerMapper.selectAll();
+        String key = RedisCacheKey.permsLayerKey("");
+        Object obj = redisService.get(key);
+        if (obj instanceof List<?>) {
+            return (List<LayerEntity>) obj;
+        }
+
+        List<LayerEntity> list = layerMapper.selectAll();
+        if (list != null && list.size() > 0) {
+            redisService.put(key, list, SettingData.CACHE_EXPIRE, TimeUnit.MINUTES);
+        }
+
+        return list;
+    }
+
+    public void clearCache() {
+        redisService.clearKeys(RedisCacheKey.permsLayerKey(""));
     }
 
     @Override

--
Gitblit v1.9.3