diff --git a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java index 153f375..ece5308 100644 --- a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java +++ b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java @@ -1,13 +1,11 @@ package com.casic.missiles; -import com.casic.missiles.config.LoadDatabasePropertyConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan; import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.annotation.DependsOn; import org.springframework.transaction.annotation.EnableTransactionManagement; import java.io.FileNotFoundException; @@ -18,6 +16,7 @@ * @author casic * @Date 2017/5/21 12:06 */ +@EnableCaching @SpringBootApplication @ServletComponentScan @EnableTransactionManagement(proxyTargetClass = true) @@ -25,7 +24,7 @@ private static final Logger logger = LoggerFactory.getLogger(CasicApplication.class); - public static void main(String[] args) throws FileNotFoundException { + public static void main(String[] args){ SpringApplication.run(CasicApplication.class, args); logger.info("GunsApplication is success!"); diff --git a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java index 153f375..ece5308 100644 --- a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java +++ b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java @@ -1,13 +1,11 @@ package com.casic.missiles; -import com.casic.missiles.config.LoadDatabasePropertyConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan; import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.annotation.DependsOn; import org.springframework.transaction.annotation.EnableTransactionManagement; import java.io.FileNotFoundException; @@ -18,6 +16,7 @@ * @author casic * @Date 2017/5/21 12:06 */ +@EnableCaching @SpringBootApplication @ServletComponentScan @EnableTransactionManagement(proxyTargetClass = true) @@ -25,7 +24,7 @@ private static final Logger logger = LoggerFactory.getLogger(CasicApplication.class); - public static void main(String[] args) throws FileNotFoundException { + public static void main(String[] args){ SpringApplication.run(CasicApplication.class, args); logger.info("GunsApplication is success!"); diff --git a/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java new file mode 100644 index 0000000..aafda55 --- /dev/null +++ b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java @@ -0,0 +1,41 @@ +package com.casic.missiles.handler; + +import com.alibaba.fastjson.JSON; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.handler.BizCheckLoginHandler; +import com.casic.missiles.core.shiro.ShiroUser; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.DependsOn; +import org.springframework.context.annotation.Lazy; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.TimeUnit; + +@Component +@DependsOn("loadDatabasePropertyConfig") +public class LoginCheckHandler implements BizCheckLoginHandler { + private static final Logger logger = LoggerFactory.getLogger(LoginCheckHandler.class); + @Value("${casic.session-invalidate-time:86400}") + private Long sessionTime; + @Lazy + @Autowired + private ICommonPermissionService service; + @Lazy + @Autowired + private RedisTemplate redisTemplate; + + @Override + public void checkUser(ShiroUser shiroUser, Boolean isApp) { + //设置登录用户所属服务器组别 + List pids = service.getParentDeptIds(shiroUser.getDeptId()); + pids.add(shiroUser.getDeptId()); + redisTemplate.opsForValue().set("token:HOST_"+service.getShiroSession().getId(), JSON.toJSONString("654321"),sessionTime, TimeUnit.MILLISECONDS); + } + + +} diff --git a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java index 153f375..ece5308 100644 --- a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java +++ b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java @@ -1,13 +1,11 @@ package com.casic.missiles; -import com.casic.missiles.config.LoadDatabasePropertyConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan; import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.annotation.DependsOn; import org.springframework.transaction.annotation.EnableTransactionManagement; import java.io.FileNotFoundException; @@ -18,6 +16,7 @@ * @author casic * @Date 2017/5/21 12:06 */ +@EnableCaching @SpringBootApplication @ServletComponentScan @EnableTransactionManagement(proxyTargetClass = true) @@ -25,7 +24,7 @@ private static final Logger logger = LoggerFactory.getLogger(CasicApplication.class); - public static void main(String[] args) throws FileNotFoundException { + public static void main(String[] args){ SpringApplication.run(CasicApplication.class, args); logger.info("GunsApplication is success!"); diff --git a/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java new file mode 100644 index 0000000..aafda55 --- /dev/null +++ b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java @@ -0,0 +1,41 @@ +package com.casic.missiles.handler; + +import com.alibaba.fastjson.JSON; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.handler.BizCheckLoginHandler; +import com.casic.missiles.core.shiro.ShiroUser; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.DependsOn; +import org.springframework.context.annotation.Lazy; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.TimeUnit; + +@Component +@DependsOn("loadDatabasePropertyConfig") +public class LoginCheckHandler implements BizCheckLoginHandler { + private static final Logger logger = LoggerFactory.getLogger(LoginCheckHandler.class); + @Value("${casic.session-invalidate-time:86400}") + private Long sessionTime; + @Lazy + @Autowired + private ICommonPermissionService service; + @Lazy + @Autowired + private RedisTemplate redisTemplate; + + @Override + public void checkUser(ShiroUser shiroUser, Boolean isApp) { + //设置登录用户所属服务器组别 + List pids = service.getParentDeptIds(shiroUser.getDeptId()); + pids.add(shiroUser.getDeptId()); + redisTemplate.opsForValue().set("token:HOST_"+service.getShiroSession().getId(), JSON.toJSONString("654321"),sessionTime, TimeUnit.MILLISECONDS); + } + + +} diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 17b2db4..fa4e92d 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -1,5 +1,5 @@ server: - port: 8093 + port: 11414 ################### spring配置 ################### spring: datasource: @@ -10,16 +10,17 @@ min-idle: 1 jms: pub-sub-domain: true -# session: -# store-type: redis + session: + store-type: redis redis: - host: 127.0.0.1 - port: 6379 - password: - + host: 111.198.10.15 + port: 11412 + password: ew5T4K3#203lwh + redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer #flowable数据源和多数据源配置 casic: kaptcha-open: false #是否开启登录时验证码 (true/false) + spring-session-open: true #是否开启spring session nologin-urls: /user/login,/user/appLogin,/kaptcha,/config/baseConfig,/route/mockToken,/process/processDiagram,/departmentAssess/sourceList,/departmentAssess/highEventList,/case/addWeChat,/case/historyByPhoneListPage,/dict/code/caseSource,/fileUpload flowable: datasource: diff --git a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java index 153f375..ece5308 100644 --- a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java +++ b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java @@ -1,13 +1,11 @@ package com.casic.missiles; -import com.casic.missiles.config.LoadDatabasePropertyConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan; import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.annotation.DependsOn; import org.springframework.transaction.annotation.EnableTransactionManagement; import java.io.FileNotFoundException; @@ -18,6 +16,7 @@ * @author casic * @Date 2017/5/21 12:06 */ +@EnableCaching @SpringBootApplication @ServletComponentScan @EnableTransactionManagement(proxyTargetClass = true) @@ -25,7 +24,7 @@ private static final Logger logger = LoggerFactory.getLogger(CasicApplication.class); - public static void main(String[] args) throws FileNotFoundException { + public static void main(String[] args){ SpringApplication.run(CasicApplication.class, args); logger.info("GunsApplication is success!"); diff --git a/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java new file mode 100644 index 0000000..aafda55 --- /dev/null +++ b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java @@ -0,0 +1,41 @@ +package com.casic.missiles.handler; + +import com.alibaba.fastjson.JSON; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.handler.BizCheckLoginHandler; +import com.casic.missiles.core.shiro.ShiroUser; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.DependsOn; +import org.springframework.context.annotation.Lazy; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.TimeUnit; + +@Component +@DependsOn("loadDatabasePropertyConfig") +public class LoginCheckHandler implements BizCheckLoginHandler { + private static final Logger logger = LoggerFactory.getLogger(LoginCheckHandler.class); + @Value("${casic.session-invalidate-time:86400}") + private Long sessionTime; + @Lazy + @Autowired + private ICommonPermissionService service; + @Lazy + @Autowired + private RedisTemplate redisTemplate; + + @Override + public void checkUser(ShiroUser shiroUser, Boolean isApp) { + //设置登录用户所属服务器组别 + List pids = service.getParentDeptIds(shiroUser.getDeptId()); + pids.add(shiroUser.getDeptId()); + redisTemplate.opsForValue().set("token:HOST_"+service.getShiroSession().getId(), JSON.toJSONString("654321"),sessionTime, TimeUnit.MILLISECONDS); + } + + +} diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 17b2db4..fa4e92d 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -1,5 +1,5 @@ server: - port: 8093 + port: 11414 ################### spring配置 ################### spring: datasource: @@ -10,16 +10,17 @@ min-idle: 1 jms: pub-sub-domain: true -# session: -# store-type: redis + session: + store-type: redis redis: - host: 127.0.0.1 - port: 6379 - password: - + host: 111.198.10.15 + port: 11412 + password: ew5T4K3#203lwh + redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer #flowable数据源和多数据源配置 casic: kaptcha-open: false #是否开启登录时验证码 (true/false) + spring-session-open: true #是否开启spring session nologin-urls: /user/login,/user/appLogin,/kaptcha,/config/baseConfig,/route/mockToken,/process/processDiagram,/departmentAssess/sourceList,/departmentAssess/highEventList,/case/addWeChat,/case/historyByPhoneListPage,/dict/code/caseSource,/fileUpload flowable: datasource: diff --git a/casic-web/src/main/resources/config/application.yml b/casic-web/src/main/resources/config/application.yml index 0753b5b..04313f3 100644 --- a/casic-web/src/main/resources/config/application.yml +++ b/casic-web/src/main/resources/config/application.yml @@ -16,7 +16,7 @@ swagger-open: false #是否开启swagger (true/false) kaptcha-open: false #是否开启登录时验证码 (true/false) muti-datasource-open: false #是否开启多数据源(true/false) - spring-session-open: false #是否开启spring session,如果是多机环境需要开启(true/false) + spring-session-open: true #是否开启spring session,如果是多机环境需要开启(true/false) session-invalidate-time: 86400 #session失效时间(只在单机环境下生效,,多机环境在SpringSessionConfig类中配置) 单位:秒 session-validation-interval: 900 #多久检测一次失效的session(只在单机环境下生效) 单位:秒 nologin-urls: /user/login,/kaptcha,/config/baseConfig diff --git a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java index 153f375..ece5308 100644 --- a/casic-web/src/main/java/com/casic/missiles/CasicApplication.java +++ b/casic-web/src/main/java/com/casic/missiles/CasicApplication.java @@ -1,13 +1,11 @@ package com.casic.missiles; -import com.casic.missiles.config.LoadDatabasePropertyConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan; import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.annotation.DependsOn; import org.springframework.transaction.annotation.EnableTransactionManagement; import java.io.FileNotFoundException; @@ -18,6 +16,7 @@ * @author casic * @Date 2017/5/21 12:06 */ +@EnableCaching @SpringBootApplication @ServletComponentScan @EnableTransactionManagement(proxyTargetClass = true) @@ -25,7 +24,7 @@ private static final Logger logger = LoggerFactory.getLogger(CasicApplication.class); - public static void main(String[] args) throws FileNotFoundException { + public static void main(String[] args){ SpringApplication.run(CasicApplication.class, args); logger.info("GunsApplication is success!"); diff --git a/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java new file mode 100644 index 0000000..aafda55 --- /dev/null +++ b/casic-web/src/main/java/com/casic/missiles/handler/LoginCheckHandler.java @@ -0,0 +1,41 @@ +package com.casic.missiles.handler; + +import com.alibaba.fastjson.JSON; +import com.casic.missiles.core.common.service.ICommonPermissionService; +import com.casic.missiles.core.handler.BizCheckLoginHandler; +import com.casic.missiles.core.shiro.ShiroUser; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.DependsOn; +import org.springframework.context.annotation.Lazy; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.TimeUnit; + +@Component +@DependsOn("loadDatabasePropertyConfig") +public class LoginCheckHandler implements BizCheckLoginHandler { + private static final Logger logger = LoggerFactory.getLogger(LoginCheckHandler.class); + @Value("${casic.session-invalidate-time:86400}") + private Long sessionTime; + @Lazy + @Autowired + private ICommonPermissionService service; + @Lazy + @Autowired + private RedisTemplate redisTemplate; + + @Override + public void checkUser(ShiroUser shiroUser, Boolean isApp) { + //设置登录用户所属服务器组别 + List pids = service.getParentDeptIds(shiroUser.getDeptId()); + pids.add(shiroUser.getDeptId()); + redisTemplate.opsForValue().set("token:HOST_"+service.getShiroSession().getId(), JSON.toJSONString("654321"),sessionTime, TimeUnit.MILLISECONDS); + } + + +} diff --git a/casic-web/src/main/resources/config/application-dev.yml b/casic-web/src/main/resources/config/application-dev.yml index 17b2db4..fa4e92d 100644 --- a/casic-web/src/main/resources/config/application-dev.yml +++ b/casic-web/src/main/resources/config/application-dev.yml @@ -1,5 +1,5 @@ server: - port: 8093 + port: 11414 ################### spring配置 ################### spring: datasource: @@ -10,16 +10,17 @@ min-idle: 1 jms: pub-sub-domain: true -# session: -# store-type: redis + session: + store-type: redis redis: - host: 127.0.0.1 - port: 6379 - password: - + host: 111.198.10.15 + port: 11412 + password: ew5T4K3#203lwh + redisValueSerializer: org.springframework.data.redis.serializer.JdkSerializationRedisSerializer #flowable数据源和多数据源配置 casic: kaptcha-open: false #是否开启登录时验证码 (true/false) + spring-session-open: true #是否开启spring session nologin-urls: /user/login,/user/appLogin,/kaptcha,/config/baseConfig,/route/mockToken,/process/processDiagram,/departmentAssess/sourceList,/departmentAssess/highEventList,/case/addWeChat,/case/historyByPhoneListPage,/dict/code/caseSource,/fileUpload flowable: datasource: diff --git a/casic-web/src/main/resources/config/application.yml b/casic-web/src/main/resources/config/application.yml index 0753b5b..04313f3 100644 --- a/casic-web/src/main/resources/config/application.yml +++ b/casic-web/src/main/resources/config/application.yml @@ -16,7 +16,7 @@ swagger-open: false #是否开启swagger (true/false) kaptcha-open: false #是否开启登录时验证码 (true/false) muti-datasource-open: false #是否开启多数据源(true/false) - spring-session-open: false #是否开启spring session,如果是多机环境需要开启(true/false) + spring-session-open: true #是否开启spring session,如果是多机环境需要开启(true/false) session-invalidate-time: 86400 #session失效时间(只在单机环境下生效,,多机环境在SpringSessionConfig类中配置) 单位:秒 session-validation-interval: 900 #多久检测一次失效的session(只在单机环境下生效) 单位:秒 nologin-urls: /user/login,/kaptcha,/config/baseConfig diff --git a/pom.xml b/pom.xml index 46ccca6..c836195 100644 --- a/pom.xml +++ b/pom.xml @@ -83,7 +83,7 @@ com.casic - casic-service-ces + casic-service-cws ${pro.version}