From 09b8e33a1b2a1f3759b08ae1e37da9769a1aaabf Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 06 十二月 2023 10:43:10 +0800
Subject: [PATCH] 海康接口对接开发

---
 server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java |   43 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 38 insertions(+), 5 deletions(-)

diff --git a/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java b/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
index edfd770..60dcdcc 100644
--- a/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
+++ b/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java
@@ -10,8 +10,12 @@
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.connection.RedisConnectionFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.StringRedisSerializer;
 
 import javax.servlet.Filter;
+import java.io.Serializable;
 import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.Map;
@@ -39,6 +43,20 @@
     @Autowired
     private ShiroRealm shiroRealm;
 
+    @Bean("sessionRedisTemplate")
+    public RedisTemplate<Object, Serializable> sessionRedisTemplate(RedisConnectionFactory redisConnectionFactory) {
+        RedisTemplate<Object, Serializable> redisTemplate = new RedisTemplate<>();
+        redisTemplate.setConnectionFactory(redisConnectionFactory);
+        // 榛樿搴忓垪鍖栨柟寮�
+        redisTemplate.setDefaultSerializer(new StringRedisSerializer());
+        // 鍊煎簭鍒楀寲鏂瑰紡
+        ShiroSessionSerializer serializer = new ShiroSessionSerializer();
+        redisTemplate.setValueSerializer(serializer);
+        redisTemplate.setHashValueSerializer(serializer);
+        redisTemplate.afterPropertiesSet();
+        return redisTemplate;
+    }
+
     @Bean
     public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() {
         DefaultAdvisorAutoProxyCreator autoProxyCreator = new DefaultAdvisorAutoProxyCreator();
@@ -50,6 +68,9 @@
     public SessionManager sessionManager() {
         ShiroSessionManager sessionManager = new ShiroSessionManager();
         sessionManager.setSessionDAO(shiroSessionDAO);
+        sessionManager.setGlobalSessionTimeout(sessionExpireTime*1000);
+        // 鍒犻櫎澶辨晥鐨剆ession
+        sessionManager.setDeleteInvalidSessions(true);
         return sessionManager;
     }
 
@@ -66,20 +87,32 @@
     public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager) {
         ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
         shiroFilterFactoryBean.setSecurityManager(securityManager);
-        Map<String, String> map = new HashMap<>();
+        Map<String, String> map = new LinkedHashMap<>();
         // 璺緞鎷︽埅閰嶇疆
         map.put("/system/login", "anon");
+        map.put("/system/syncLingCountData", "anon");
+        map.put("/system/wxLogin", "anon");
+        map.put("/system/wxProgramLogin", "anon");
+        map.put("/system/wxAccountLogin", "anon");
+        map.put("/system/initCompany", "anon");
         map.put("/system/logout", "anon");
         map.put("/common/captcha", "anon");
-        //鏂囦欢涓婁紶鍙栨秷鎷︽埅
-        map.put("/public/**", "anon");
-
+        map.put("/statistics/**", "anon");
+        map.put("/dingding/push", "anon");
+//        map.put("/ext/workorderExt/freshStatistics", "anon");
+        map.put("/dingding/jsapiTicket", "anon");
+        map.put("/dingding/ddLogin", "anon");
+        map.put("/dingding/getDingdingCorpId", "anon");
+        map.put("/lingyang/login", "anon");
+        map.put("/lingyang/loginDemo", "anon");
+        map.put("/lingyang/importBatch", "anon");
+        map.put("/edgp/**", "anon");
         // - 鏀捐swagger
         map.put("/doc.html", "anon");
         map.put("/webjars/**", "anon");
+        map.put("/template/**", "anon");
         map.put("/swagger-resources/**", "anon");
         map.put("/v2/api-docs/**", "anon");
-        map.put("/wgListener/**", "anon");
         // - 鍏朵粬鎺ュ彛缁熶竴鎷︽埅
         map.put("/**", "authc");
         shiroFilterFactoryBean.setFilterChainDefinitionMap(map);

--
Gitblit v1.9.3