commit
						1047eb13d0
					
				@ -0,0 +1,6 @@ | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					程序员小强-统一认证中心 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sso-auth-center-service 统一认证中心服务端项目 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sso-auth-center-vue 页面后台(vue) | 
				
			||||||
@ -0,0 +1,52 @@ | 
				
			|||||||
 | 
					# Compiled class file | 
				
			||||||
 | 
					*.class | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Log file | 
				
			||||||
 | 
					*.log | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# BlueJ files | 
				
			||||||
 | 
					*.ctxt | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Mobile Tools for Java (J2ME) | 
				
			||||||
 | 
					.mtj.tmp/ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Package Files # | 
				
			||||||
 | 
					*.jar | 
				
			||||||
 | 
					*.war | 
				
			||||||
 | 
					*.ear | 
				
			||||||
 | 
					*.zip | 
				
			||||||
 | 
					*.tar.gz | 
				
			||||||
 | 
					*.rar | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml | 
				
			||||||
 | 
					hs_err_pid* | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Maven | 
				
			||||||
 | 
					target/ | 
				
			||||||
 | 
					pom.xml.tag | 
				
			||||||
 | 
					pom.xml.releaseBackup | 
				
			||||||
 | 
					pom.xml.versionsBackup | 
				
			||||||
 | 
					pom.xml.next | 
				
			||||||
 | 
					release.properties | 
				
			||||||
 | 
					dependency-reduced-pom.xml | 
				
			||||||
 | 
					buildNumber.properties | 
				
			||||||
 | 
					.mvn/timing.properties | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Avoid ignoring Maven wrapper jar file (.jar files are usually ignored) | 
				
			||||||
 | 
					!/.mvn/wrapper/maven-wrapper.jar | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Eclipse | 
				
			||||||
 | 
					.classpath | 
				
			||||||
 | 
					.project | 
				
			||||||
 | 
					.settings/ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Intellij | 
				
			||||||
 | 
					.idea/ | 
				
			||||||
 | 
					*.iml | 
				
			||||||
 | 
					*.iws | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Mac | 
				
			||||||
 | 
					.DS_Store | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/D:/ | 
				
			||||||
 | 
					/logs/ | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					# sso-auth-center | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					统一认证中心服务端 | 
				
			||||||
@ -0,0 +1,220 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<project xmlns="http://maven.apache.org/POM/4.0.0" | 
				
			||||||
 | 
					         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | 
				
			||||||
 | 
					         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | 
				
			||||||
 | 
					    <modelVersion>4.0.0</modelVersion> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <groupId>com.sso</groupId> | 
				
			||||||
 | 
					    <artifactId>sso-auth-center-service</artifactId> | 
				
			||||||
 | 
					    <version>1.0.0</version> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <name>sso-auth-center-service</name> | 
				
			||||||
 | 
					    <description>程序员小强-统一认证中心</description> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <modules> | 
				
			||||||
 | 
					        <module>sso-auth-center</module> | 
				
			||||||
 | 
					        <module>sso-framework</module> | 
				
			||||||
 | 
					        <module>sso-business</module> | 
				
			||||||
 | 
					        <module>sso-common</module> | 
				
			||||||
 | 
					    </modules> | 
				
			||||||
 | 
					    <packaging>pom</packaging> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <properties> | 
				
			||||||
 | 
					        <sso-auth-center.version>1.0.0</sso-auth-center.version> | 
				
			||||||
 | 
					        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | 
				
			||||||
 | 
					        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> | 
				
			||||||
 | 
					        <java.version>1.8</java.version> | 
				
			||||||
 | 
					        <spring-boot.version>2.1.17.RELEASE</spring-boot.version> | 
				
			||||||
 | 
					        <lombok.version>1.18.10</lombok.version> | 
				
			||||||
 | 
					        <guava.version>30.0-jre</guava.version> | 
				
			||||||
 | 
					        <bitwalker.version>1.21</bitwalker.version> | 
				
			||||||
 | 
					        <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version> | 
				
			||||||
 | 
					        <mybatis.boot.version>1.3.2</mybatis.boot.version> | 
				
			||||||
 | 
					        <druid.version>1.2.4</druid.version> | 
				
			||||||
 | 
					        <kaptcha.version>2.3.2</kaptcha.version> | 
				
			||||||
 | 
					        <fastjson.version>1.2.75</fastjson.version> | 
				
			||||||
 | 
					        <jna.version>5.5.0</jna.version> | 
				
			||||||
 | 
					        <commons.io.version>2.5</commons.io.version> | 
				
			||||||
 | 
					        <commons.fileupload.version>1.3.3</commons.fileupload.version> | 
				
			||||||
 | 
					        <poi.version>3.17</poi.version> | 
				
			||||||
 | 
					        <jwt.version>0.9.1</jwt.version> | 
				
			||||||
 | 
					        <jedis.version>3.2.0</jedis.version> | 
				
			||||||
 | 
					        <hutool-all.version>5.4.3</hutool-all.version> | 
				
			||||||
 | 
					        <hibernate-validator.version>6.0.20.Final</hibernate-validator.version> | 
				
			||||||
 | 
					        <skipTests>true</skipTests> | 
				
			||||||
 | 
					    </properties> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- 依赖声明 --> | 
				
			||||||
 | 
					    <dependencyManagement> | 
				
			||||||
 | 
					        <dependencies> | 
				
			||||||
 | 
					            <!-- SpringBoot的依赖配置--> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>org.springframework.boot</groupId> | 
				
			||||||
 | 
					                <artifactId>spring-boot-dependencies</artifactId> | 
				
			||||||
 | 
					                <version>${spring-boot.version}</version> | 
				
			||||||
 | 
					                <type>pom</type> | 
				
			||||||
 | 
					                <scope>import</scope> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- mybatis  --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>org.mybatis.spring.boot</groupId> | 
				
			||||||
 | 
					                <artifactId>mybatis-spring-boot-starter</artifactId> | 
				
			||||||
 | 
					                <version>${mybatis.boot.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- druid  --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>com.alibaba</groupId> | 
				
			||||||
 | 
					                <artifactId>druid-spring-boot-starter</artifactId> | 
				
			||||||
 | 
					                <version>${druid.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>redis.clients</groupId> | 
				
			||||||
 | 
					                <artifactId>jedis</artifactId> | 
				
			||||||
 | 
					                <version>${jedis.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- io  --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>commons-io</groupId> | 
				
			||||||
 | 
					                <artifactId>commons-io</artifactId> | 
				
			||||||
 | 
					                <version>${commons.io.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!--文件上传 --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>commons-fileupload</groupId> | 
				
			||||||
 | 
					                <artifactId>commons-fileupload</artifactId> | 
				
			||||||
 | 
					                <version>${commons.fileupload.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- excel  --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>org.apache.poi</groupId> | 
				
			||||||
 | 
					                <artifactId>poi-ooxml</artifactId> | 
				
			||||||
 | 
					                <version>${poi.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- fastjson --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>com.alibaba</groupId> | 
				
			||||||
 | 
					                <artifactId>fastjson</artifactId> | 
				
			||||||
 | 
					                <version>${fastjson.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- jwt 用于 token生成与解析--> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>io.jsonwebtoken</groupId> | 
				
			||||||
 | 
					                <artifactId>jjwt</artifactId> | 
				
			||||||
 | 
					                <version>${jwt.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- 验证码 --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>com.github.penggle</groupId> | 
				
			||||||
 | 
					                <artifactId>kaptcha</artifactId> | 
				
			||||||
 | 
					                <version>${kaptcha.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- guava --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>com.google.guava</groupId> | 
				
			||||||
 | 
					                <artifactId>guava</artifactId> | 
				
			||||||
 | 
					                <version>${guava.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- 解析客户端操作系统、浏览器等 --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>eu.bitwalker</groupId> | 
				
			||||||
 | 
					                <artifactId>UserAgentUtils</artifactId> | 
				
			||||||
 | 
					                <version>${bitwalker.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>org.projectlombok</groupId> | 
				
			||||||
 | 
					                <artifactId>lombok</artifactId> | 
				
			||||||
 | 
					                <version>${lombok.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>cn.hutool</groupId> | 
				
			||||||
 | 
					                <artifactId>hutool-all</artifactId> | 
				
			||||||
 | 
					                <version>${hutool-all.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- 参数校验 --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>org.hibernate</groupId> | 
				
			||||||
 | 
					                <artifactId>hibernate-validator</artifactId> | 
				
			||||||
 | 
					                <version>${hibernate-validator.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- 核心配置模块 --> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>com.sso</groupId> | 
				
			||||||
 | 
					                <artifactId>sso-framework</artifactId> | 
				
			||||||
 | 
					                <version>${sso-auth-center.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- 业务模块--> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>com.sso</groupId> | 
				
			||||||
 | 
					                <artifactId>sso-business</artifactId> | 
				
			||||||
 | 
					                <version>${sso-auth-center.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            <!-- 通用工具--> | 
				
			||||||
 | 
					            <dependency> | 
				
			||||||
 | 
					                <groupId>com.sso</groupId> | 
				
			||||||
 | 
					                <artifactId>sso-common</artifactId> | 
				
			||||||
 | 
					                <version>${sso-auth-center.version}</version> | 
				
			||||||
 | 
					            </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        </dependencies> | 
				
			||||||
 | 
					    </dependencyManagement> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <dependencies> | 
				
			||||||
 | 
					    </dependencies> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <build> | 
				
			||||||
 | 
					        <finalName>sso-auth-center</finalName> | 
				
			||||||
 | 
					        <plugins> | 
				
			||||||
 | 
					            <plugin> | 
				
			||||||
 | 
					                <groupId>org.springframework.boot</groupId> | 
				
			||||||
 | 
					                <artifactId>spring-boot-maven-plugin</artifactId> | 
				
			||||||
 | 
					                <configuration> | 
				
			||||||
 | 
					                    <executable>true</executable> | 
				
			||||||
 | 
					                </configuration> | 
				
			||||||
 | 
					            </plugin> | 
				
			||||||
 | 
					        </plugins> | 
				
			||||||
 | 
					    </build> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <repositories> | 
				
			||||||
 | 
					        <repository> | 
				
			||||||
 | 
					            <id>repo</id> | 
				
			||||||
 | 
					            <url>http://mvn.taofen8.com/artifactory/repo</url> | 
				
			||||||
 | 
					            <snapshots> | 
				
			||||||
 | 
					                <enabled>true</enabled> | 
				
			||||||
 | 
					                <updatePolicy>always</updatePolicy> | 
				
			||||||
 | 
					            </snapshots> | 
				
			||||||
 | 
					        </repository> | 
				
			||||||
 | 
					    </repositories> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <distributionManagement> | 
				
			||||||
 | 
					        <repository> | 
				
			||||||
 | 
					            <id>taofen8.repo</id> | 
				
			||||||
 | 
					            <name>taofen8 Repository</name> | 
				
			||||||
 | 
					            <url>http://mvn.taofen8.com/artifactory/local</url> | 
				
			||||||
 | 
					        </repository> | 
				
			||||||
 | 
					        <snapshotRepository> | 
				
			||||||
 | 
					            <id>taofen8.repo</id> | 
				
			||||||
 | 
					            <name>taofen8 Repository</name> | 
				
			||||||
 | 
					            <url>http://mvn.taofen8.com/artifactory/snapshot</url> | 
				
			||||||
 | 
					        </snapshotRepository> | 
				
			||||||
 | 
					    </distributionManagement> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</project> | 
				
			||||||
@ -0,0 +1,84 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<project xmlns="http://maven.apache.org/POM/4.0.0" | 
				
			||||||
 | 
					         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | 
				
			||||||
 | 
					         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | 
				
			||||||
 | 
					    <parent> | 
				
			||||||
 | 
					        <groupId>com.sso</groupId> | 
				
			||||||
 | 
					        <artifactId>sso-auth-center-service</artifactId> | 
				
			||||||
 | 
					        <version>1.0.0</version> | 
				
			||||||
 | 
					    </parent> | 
				
			||||||
 | 
					    <modelVersion>4.0.0</modelVersion> | 
				
			||||||
 | 
					    <packaging>jar</packaging> | 
				
			||||||
 | 
					    <artifactId>sso-auth-center</artifactId> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <description> | 
				
			||||||
 | 
					        web服务入口 | 
				
			||||||
 | 
					    </description> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <repositories> | 
				
			||||||
 | 
					        <repository> | 
				
			||||||
 | 
					            <id>taofen8.repo</id> | 
				
			||||||
 | 
					            <url>http://mvn.taofen8.com/artifactory/repo</url> | 
				
			||||||
 | 
					            <snapshots> | 
				
			||||||
 | 
					                <enabled>true</enabled> | 
				
			||||||
 | 
					                <updatePolicy>always</updatePolicy> | 
				
			||||||
 | 
					            </snapshots> | 
				
			||||||
 | 
					        </repository> | 
				
			||||||
 | 
					    </repositories> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <dependencies> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <!-- spring-boot-devtools --> | 
				
			||||||
 | 
					        <dependency> | 
				
			||||||
 | 
					            <groupId>org.springframework.boot</groupId> | 
				
			||||||
 | 
					            <artifactId>spring-boot-devtools</artifactId> | 
				
			||||||
 | 
					            <optional>true</optional> <!-- 表示依赖不会传递 --> | 
				
			||||||
 | 
					        </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <dependency> | 
				
			||||||
 | 
					            <groupId>org.springframework.boot</groupId> | 
				
			||||||
 | 
					            <artifactId>spring-boot-starter-test</artifactId> | 
				
			||||||
 | 
					            <scope>test</scope> | 
				
			||||||
 | 
					        </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <!-- Mysql驱动包 --> | 
				
			||||||
 | 
					        <dependency> | 
				
			||||||
 | 
					            <groupId>mysql</groupId> | 
				
			||||||
 | 
					            <artifactId>mysql-connector-java</artifactId> | 
				
			||||||
 | 
					        </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <!-- 业务模块 --> | 
				
			||||||
 | 
					        <dependency> | 
				
			||||||
 | 
					            <groupId>com.sso</groupId> | 
				
			||||||
 | 
					            <artifactId>sso-business</artifactId> | 
				
			||||||
 | 
					        </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    </dependencies> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <build> | 
				
			||||||
 | 
					        <finalName>${project.artifactId}</finalName> | 
				
			||||||
 | 
					        <plugins> | 
				
			||||||
 | 
					            <plugin> | 
				
			||||||
 | 
					                <groupId>org.springframework.boot</groupId> | 
				
			||||||
 | 
					                <artifactId>spring-boot-maven-plugin</artifactId> | 
				
			||||||
 | 
					                <version>2.1.1.RELEASE</version> | 
				
			||||||
 | 
					                <configuration> | 
				
			||||||
 | 
					                    <fork>true</fork> <!-- 如果没有该配置,devtools不会生效 --> | 
				
			||||||
 | 
					                    <executable>true</executable> | 
				
			||||||
 | 
					                </configuration> | 
				
			||||||
 | 
					                <executions> | 
				
			||||||
 | 
					                    <execution> | 
				
			||||||
 | 
					                        <goals> | 
				
			||||||
 | 
					                            <goal>repackage</goal> | 
				
			||||||
 | 
					                        </goals> | 
				
			||||||
 | 
					                    </execution> | 
				
			||||||
 | 
					                </executions> | 
				
			||||||
 | 
					            </plugin> | 
				
			||||||
 | 
					        </plugins> | 
				
			||||||
 | 
					    </build> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</project> | 
				
			||||||
@ -0,0 +1,25 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.springframework.boot.SpringApplication; | 
				
			||||||
 | 
					import org.springframework.boot.autoconfigure.SpringBootApplication; | 
				
			||||||
 | 
					import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; | 
				
			||||||
 | 
					import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration; | 
				
			||||||
 | 
					import org.springframework.transaction.annotation.EnableTransactionManagement; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 统一认证中心服务端 - 启动类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@EnableTransactionManagement | 
				
			||||||
 | 
					@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class}) | 
				
			||||||
 | 
					public class AuthCenterAdminApplication { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public static void main(String[] args) { | 
				
			||||||
 | 
							SpringApplication.run(AuthCenterAdminApplication.class, args); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,89 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.aspect; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.apache.commons.lang3.RandomStringUtils; | 
				
			||||||
 | 
					import org.apache.commons.lang3.builder.ToStringBuilder; | 
				
			||||||
 | 
					import org.apache.commons.lang3.builder.ToStringStyle; | 
				
			||||||
 | 
					import org.aspectj.lang.ProceedingJoinPoint; | 
				
			||||||
 | 
					import org.aspectj.lang.annotation.Around; | 
				
			||||||
 | 
					import org.aspectj.lang.annotation.Aspect; | 
				
			||||||
 | 
					import org.aspectj.lang.annotation.Pointcut; | 
				
			||||||
 | 
					import org.aspectj.lang.reflect.MethodSignature; | 
				
			||||||
 | 
					import org.slf4j.MDC; | 
				
			||||||
 | 
					import org.springframework.stereotype.Component; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletRequest; | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletResponse; | 
				
			||||||
 | 
					import java.lang.reflect.Method; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * controller 日志打印 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@Aspect | 
				
			||||||
 | 
					@Component | 
				
			||||||
 | 
					public class LogPrintlnAspect { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 配置织入点 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Pointcut("execution(public * com.sso.controller.admin..*.*(..))") | 
				
			||||||
 | 
						public void allMethod() { | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Around("allMethod()") | 
				
			||||||
 | 
						public Object doAround(ProceedingJoinPoint call) throws Throwable { | 
				
			||||||
 | 
							MethodSignature signature = (MethodSignature) call.getSignature(); | 
				
			||||||
 | 
							Method method = signature.getMethod(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							String[] classNameArray = method.getDeclaringClass().getName().split("\\."); | 
				
			||||||
 | 
							String methodName = classNameArray[classNameArray.length - 1] + "." + method.getName(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							String params = buildParamsDefault(call); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							long start = System.currentTimeMillis(); | 
				
			||||||
 | 
							Object result = null; | 
				
			||||||
 | 
							try { | 
				
			||||||
 | 
								MDC.put("logId", String.format("[%s]", RandomStringUtils.randomAlphanumeric(10))); | 
				
			||||||
 | 
								log.info("[ {} ] requestParam: {}", methodName, params); | 
				
			||||||
 | 
								result = call.proceed(); | 
				
			||||||
 | 
								return result; | 
				
			||||||
 | 
							} finally { | 
				
			||||||
 | 
								log.info("[ {} ] runTime: {} ms", methodName, (System.currentTimeMillis() - start)); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private String buildParamsDefault(ProceedingJoinPoint call) { | 
				
			||||||
 | 
							StringBuilder params = new StringBuilder(" ["); | 
				
			||||||
 | 
							for (int i = 0; i < call.getArgs().length; i++) { | 
				
			||||||
 | 
								Object obj = call.getArgs()[i]; | 
				
			||||||
 | 
								if (null != obj) { | 
				
			||||||
 | 
									if (obj instanceof HttpServletRequest) { | 
				
			||||||
 | 
										continue; | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									if (obj instanceof HttpServletResponse) { | 
				
			||||||
 | 
										continue; | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									String str = obj.toString(); | 
				
			||||||
 | 
									if (obj.getClass() != String.class) { | 
				
			||||||
 | 
										str = ToStringBuilder.reflectionToString(obj, ToStringStyle.JSON_STYLE); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
									if (i != call.getArgs().length - 1) { | 
				
			||||||
 | 
										params.append(str).append(","); | 
				
			||||||
 | 
									} else { | 
				
			||||||
 | 
										params.append(str).append(" ]"); | 
				
			||||||
 | 
									} | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
								if (params.length() == 1) { | 
				
			||||||
 | 
									params.append("]"); | 
				
			||||||
 | 
								} | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							return params.toString(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,35 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.service.admin.CaptchaService; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RequestMapping; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RestController; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletResponse; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 验证码操作处理 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					public class CaptchaController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private CaptchaService captchaService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 生成验证码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/captchaImage") | 
				
			||||||
 | 
						public ResultModel<?> getCode(HttpServletResponse response) { | 
				
			||||||
 | 
							return ResultModel.success(captchaService.genCode(response)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,106 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.SysCodeBO; | 
				
			||||||
 | 
					import com.sso.model.bo.dept.DeptDeleteBO; | 
				
			||||||
 | 
					import com.sso.model.bo.dept.DeptMgmtTreeBO; | 
				
			||||||
 | 
					import com.sso.model.bo.dept.DeptSaveBO; | 
				
			||||||
 | 
					import com.sso.model.bo.dept.DeptUpdateBO; | 
				
			||||||
 | 
					import com.sso.model.vo.dept.DeptDetailVO; | 
				
			||||||
 | 
					import com.sso.service.admin.DeptService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门管理接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/dept") | 
				
			||||||
 | 
					public class DeptController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private DeptService deptService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门管理页-部门树 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param treeBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@GetMapping("/listDeptMgmtTree") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('dept:listDeptMgmtTree')") | 
				
			||||||
 | 
						public ResultModel<?> listDeptMgmtTree(@Valid DeptMgmtTreeBO treeBO) { | 
				
			||||||
 | 
							return ResultModel.success(deptService.listDeptMgmtTree(treeBO)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门下拉-部门树 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCodeBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/listDeptOptionTree") | 
				
			||||||
 | 
						public ResultModel<?> listDeptOptionTree(@Valid SysCodeBO sysCodeBO) { | 
				
			||||||
 | 
							return ResultModel.success(deptService.listDeptOptionTree(sysCodeBO.getSysCode())); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门详情 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param deptId | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/detail/{deptId}") | 
				
			||||||
 | 
						public ResultModel<DeptDetailVO> getDeptDetail(@PathVariable Long deptId) { | 
				
			||||||
 | 
							return ResultModel.success(deptService.getDeptDetail(deptId)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 添加部门 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param saveBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/add") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('dept:add')") | 
				
			||||||
 | 
						public ResultModel<?> addDept(@Valid @RequestBody DeptSaveBO saveBO) { | 
				
			||||||
 | 
							saveBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							deptService.addDept(saveBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改部门 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/update") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('dept:update')") | 
				
			||||||
 | 
						public ResultModel<?> updateDept(@Valid @RequestBody DeptUpdateBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							deptService.updateDept(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除部门 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param deptId 部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@DeleteMapping("/delete/{deptId}") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('dept:delete')") | 
				
			||||||
 | 
						public ResultModel<?> deleteDept(@PathVariable Long deptId) { | 
				
			||||||
 | 
							DeptDeleteBO deptDeleteBO = new DeptDeleteBO(); | 
				
			||||||
 | 
							deptDeleteBO.setDeptId(deptId); | 
				
			||||||
 | 
							deptDeleteBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							deptService.deleteDept(deptDeleteBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,57 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.model.bo.login.LoginBO; | 
				
			||||||
 | 
					import com.sso.model.vo.login.LoginTokenVO; | 
				
			||||||
 | 
					import com.sso.model.vo.login.LoginUserInfoVO; | 
				
			||||||
 | 
					import com.sso.service.admin.login.SsoLoginService; | 
				
			||||||
 | 
					import com.sso.service.admin.login.SysPermissionService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.GetMapping; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.PostMapping; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RequestBody; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RestController; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 登录验证 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					public class LoginController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private SsoLoginService ssoLoginService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private SysPermissionService permissionService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录方法 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param loginBO 登录信息 | 
				
			||||||
 | 
						 * @return 结果 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/login") | 
				
			||||||
 | 
						public ResultModel<LoginTokenVO> login(@Valid @RequestBody LoginBO loginBO) { | 
				
			||||||
 | 
							return ResultModel.success(ssoLoginService.login(loginBO)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 获取用户信息 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @return 用户信息 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@GetMapping("getUserInfo") | 
				
			||||||
 | 
						public ResultModel<?> getInfo() { | 
				
			||||||
 | 
							LoginUserInfoVO userInfo = permissionService.getLoginUserInfo(); | 
				
			||||||
 | 
							return ResultModel.success(userInfo); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,42 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultPageModel; | 
				
			||||||
 | 
					import com.sso.model.bo.login.LoginLogListPageBO; | 
				
			||||||
 | 
					import com.sso.model.vo.login.LoginLogPageVO; | 
				
			||||||
 | 
					import com.sso.service.admin.LoginLogService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RequestMapping; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RestController; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 登录日志管理接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/login/log") | 
				
			||||||
 | 
					public class LoginLogController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private LoginLogService loginLogService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录日志分页列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param pageBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('login:log:listPage')") | 
				
			||||||
 | 
						@RequestMapping("/listPage") | 
				
			||||||
 | 
						public ResultPageModel<LoginLogPageVO> listPage(@Valid LoginLogListPageBO pageBO) { | 
				
			||||||
 | 
							return loginLogService.listPageUser(pageBO); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,105 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.menu.MenuDeleteBO; | 
				
			||||||
 | 
					import com.sso.model.bo.menu.MenuSaveBO; | 
				
			||||||
 | 
					import com.sso.model.bo.menu.MenuTreeBO; | 
				
			||||||
 | 
					import com.sso.model.bo.menu.MenuUpdateBO; | 
				
			||||||
 | 
					import com.sso.model.vo.menu.MenuDetailVO; | 
				
			||||||
 | 
					import com.sso.service.admin.MenuService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单管理接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/menu") | 
				
			||||||
 | 
					public class MenuController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private MenuService menuService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单管理页-菜单树 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param treeBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@GetMapping("/listMenuTree") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('menu:listMenuTree')") | 
				
			||||||
 | 
						public ResultModel<?> listDeptMgmtTree(@Valid MenuTreeBO treeBO) { | 
				
			||||||
 | 
							return ResultModel.success(menuService.listMenuTree(treeBO)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单管理页-菜单树下拉列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param treeBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@GetMapping("/listMenuOptionTree") | 
				
			||||||
 | 
						public ResultModel<?> listMenuOptionTree(@Valid MenuTreeBO treeBO) { | 
				
			||||||
 | 
							return ResultModel.success(menuService.listMenuOptionTree(treeBO)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单详情 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param menuId | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/detail/{menuId}") | 
				
			||||||
 | 
						public ResultModel<MenuDetailVO> getMenuDetail(@PathVariable Long menuId) { | 
				
			||||||
 | 
							return ResultModel.success(menuService.getMenuDetail(menuId)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 添加菜单 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param saveBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/add") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('menu:add')") | 
				
			||||||
 | 
						public ResultModel<?> addDept(@Valid @RequestBody MenuSaveBO saveBO) { | 
				
			||||||
 | 
							saveBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							menuService.addMenu(saveBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改菜单 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/update") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('menu:update')") | 
				
			||||||
 | 
						public ResultModel<?> updateMenu(@Valid @RequestBody MenuUpdateBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							menuService.updateMenu(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除菜单 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param menuId 菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@DeleteMapping("/delete/{menuId}") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('menu:delete')") | 
				
			||||||
 | 
						public ResultModel<?> deleteMenu(@PathVariable Long menuId) { | 
				
			||||||
 | 
							MenuDeleteBO deptDeleteBO = new MenuDeleteBO(); | 
				
			||||||
 | 
							deptDeleteBO.setMenuId(menuId); | 
				
			||||||
 | 
							deptDeleteBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							menuService.deleteMenu(deptDeleteBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,118 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultPageModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.role.*; | 
				
			||||||
 | 
					import com.sso.model.vo.role.RoleDetailVO; | 
				
			||||||
 | 
					import com.sso.model.vo.role.RolePageVO; | 
				
			||||||
 | 
					import com.sso.service.admin.RoleService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/role") | 
				
			||||||
 | 
					public class RoleController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private RoleService roleService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色分页列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param pageBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/listPage") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('role:listPage')") | 
				
			||||||
 | 
						public ResultPageModel<RolePageVO> listPage(@Valid RoleListPageBO pageBO) { | 
				
			||||||
 | 
							return roleService.listPageRole(pageBO); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色-下拉选项列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param optionBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/listOption") | 
				
			||||||
 | 
						public ResultModel<?> listRoleOption(@Valid RoleListOptionBO optionBO) { | 
				
			||||||
 | 
							return ResultModel.success(roleService.listRoleOption(optionBO)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色详情 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleId | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/detail/{roleId}") | 
				
			||||||
 | 
						public ResultModel<RoleDetailVO> getDeptDetail(@PathVariable Long roleId) { | 
				
			||||||
 | 
							return ResultModel.success(roleService.getDeptDetail(roleId)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 添加角色 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param saveBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/add") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('role:add')") | 
				
			||||||
 | 
						public ResultModel<?> addRole(@Valid @RequestBody RoleSaveBO saveBO) { | 
				
			||||||
 | 
							saveBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							roleService.addRole(saveBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改角色 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/update") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('role:update')") | 
				
			||||||
 | 
						public ResultModel<?> updateRole(@Valid @RequestBody RoleUpdateBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							roleService.updateRole(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除角色 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleId 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@DeleteMapping("/delete/{roleId}") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('role:delete')") | 
				
			||||||
 | 
						public ResultModel<?> deleteDept(@PathVariable Long roleId) { | 
				
			||||||
 | 
							RoleDeleteBO deptDeleteBO = new RoleDeleteBO(); | 
				
			||||||
 | 
							deptDeleteBO.setRoleId(roleId); | 
				
			||||||
 | 
							deptDeleteBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							roleService.deleteRole(deptDeleteBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 移除角色用户绑定关系 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param removeUserBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/removeUser") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('role:removeUser')") | 
				
			||||||
 | 
						public ResultModel<?> removeUserRole(@Valid @RequestBody RoleRemoveUserBO removeUserBO) { | 
				
			||||||
 | 
							removeUserBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							roleService.removeUserRole(removeUserBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,143 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.platform.*; | 
				
			||||||
 | 
					import com.sso.model.vo.platform.SystemDetailVO; | 
				
			||||||
 | 
					import com.sso.service.admin.FileUploadService; | 
				
			||||||
 | 
					import com.sso.service.admin.SystemService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					import org.springframework.web.multipart.MultipartFile; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.annotation.Resource; | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 目标系统平台相关接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/system") | 
				
			||||||
 | 
					public class SystemController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private SystemService systemService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Resource | 
				
			||||||
 | 
						private FileUploadService fileUploadService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 我的平台列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @return 系统列表 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@GetMapping("/myList") | 
				
			||||||
 | 
						public ResultModel<?> myList() { | 
				
			||||||
 | 
							return ResultModel.success(systemService.listMySystem()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 我的平台-排序 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @return 系统列表 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/sortMy") | 
				
			||||||
 | 
						public ResultModel<?> sortMySystem(@Valid @RequestBody SystemSortBO sortBO) { | 
				
			||||||
 | 
							systemService.sortMySystem(sortBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统平台详情 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode | 
				
			||||||
 | 
						 * @return 系统平台详情 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@GetMapping("/getDetailBySysCode") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('system:getDetailBySysCode')") | 
				
			||||||
 | 
						public ResultModel<SystemDetailVO> getDetailBySysCode(String sysCode) { | 
				
			||||||
 | 
							return ResultModel.success(systemService.getDetailBySysCode(sysCode)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 平台管理-列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @return 平台列表 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@GetMapping("/mgmtList") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('system:mgmtList')") | 
				
			||||||
 | 
						public ResultModel<?> list() { | 
				
			||||||
 | 
							return ResultModel.success(systemService.listMyMgmtSystem()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增-目标系统 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param saveBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/add") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('system:add')") | 
				
			||||||
 | 
						public ResultModel<?> addSystem(@Valid @RequestBody SystemSaveBO saveBO) { | 
				
			||||||
 | 
							saveBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							systemService.addSystem(saveBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改-目标系统 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/update") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('system:update')") | 
				
			||||||
 | 
						public ResultModel<?> updateSystem(@Valid @RequestBody SystemUpdateBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							systemService.updateSystem(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 添加或修改-秘钥 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/updateSecret") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('system:updateSecret')") | 
				
			||||||
 | 
						public ResultModel<?> updateSecret(@Valid @RequestBody SystemUpdateSecretBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							systemService.updateSystemSecret(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改系统图标 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/uploadIcon/{sysId}") | 
				
			||||||
 | 
						public ResultModel<?> uploadIcon(@PathVariable("sysId") Long sysId, @RequestParam("iconFile") MultipartFile iconFile) { | 
				
			||||||
 | 
							String operateName = SecurityUtils.getOperateName(); | 
				
			||||||
 | 
							return ResultModel.success(fileUploadService.uploadSystemIcon(sysId, operateName, iconFile)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除-目标系统 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysId 系统ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@DeleteMapping("/delete/{sysId}") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('system:delete')") | 
				
			||||||
 | 
						public ResultModel<?> deleteSystem(@PathVariable Long sysId) { | 
				
			||||||
 | 
							SystemDeleteBO deptDeleteBO = new SystemDeleteBO(); | 
				
			||||||
 | 
							deptDeleteBO.setSysId(sysId); | 
				
			||||||
 | 
							deptDeleteBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							systemService.deleteSystem(deptDeleteBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,84 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultPageModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.platform.SystemMgmtListPageBO; | 
				
			||||||
 | 
					import com.sso.model.bo.platform.SystemMgmtRemoveBO; | 
				
			||||||
 | 
					import com.sso.model.bo.platform.SystemMgmtSaveBO; | 
				
			||||||
 | 
					import com.sso.model.bo.platform.SystemMgmtStatusBO; | 
				
			||||||
 | 
					import com.sso.model.vo.platform.SystemMgmtPageVO; | 
				
			||||||
 | 
					import com.sso.service.admin.SystemMgmtService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 系统管理员相关操作 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/systemMgmt") | 
				
			||||||
 | 
					public class SystemMgmtController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private SystemMgmtService systemMgmtService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统管理员-用户分页列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param pageBO | 
				
			||||||
 | 
						 * @return 用户 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/listPage") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('systemMgmt:updateSystemMgmt')") | 
				
			||||||
 | 
						public ResultPageModel<SystemMgmtPageVO> listPage(@Valid SystemMgmtListPageBO pageBO) { | 
				
			||||||
 | 
							return systemMgmtService.listPageSysMgmtUser(pageBO); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增-管理员权限 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param addBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/add") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('systemMgmt:updateSystemMgmt')") | 
				
			||||||
 | 
						public ResultModel<?> addSystemMgmt(@Valid @RequestBody SystemMgmtSaveBO addBO) { | 
				
			||||||
 | 
							addBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							systemMgmtService.addSystemMgmt(addBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改-管理员权限账号状态 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param addBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/updateStatus") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('systemMgmt:updateSystemMgmt')") | 
				
			||||||
 | 
						public ResultModel<?> updateStatus(@Valid @RequestBody SystemMgmtStatusBO addBO) { | 
				
			||||||
 | 
							addBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							systemMgmtService.updateStatus(addBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 移除-用户管理员权限 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param removeBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/remove") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('systemMgmt:updateSystemMgmt')") | 
				
			||||||
 | 
						public ResultModel<?> removeUserSystemMgmt(@Valid @RequestBody SystemMgmtRemoveBO removeBO) { | 
				
			||||||
 | 
							removeBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							systemMgmtService.removeUserSystemMgmt(removeBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,196 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.login.LoginUserVO; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultPageModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.user.*; | 
				
			||||||
 | 
					import com.sso.model.vo.user.UserDetailVO; | 
				
			||||||
 | 
					import com.sso.model.vo.user.UserOptionVO; | 
				
			||||||
 | 
					import com.sso.model.vo.user.UserPageVO; | 
				
			||||||
 | 
					import com.sso.model.vo.user.UserProfileVO; | 
				
			||||||
 | 
					import com.sso.service.admin.UserService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户管理接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/user") | 
				
			||||||
 | 
					public class UserController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private UserService userService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户分页列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param pageBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:listPage')") | 
				
			||||||
 | 
						@RequestMapping("/listPage") | 
				
			||||||
 | 
						public ResultPageModel<UserPageVO> listPage(@Valid UserListPageBO pageBO) { | 
				
			||||||
 | 
							return userService.listPageUser(pageBO); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户详情 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param detailBO 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/detail") | 
				
			||||||
 | 
						public ResultModel<UserDetailVO> getUserDetail(@Valid @RequestBody UserDetailBO detailBO) { | 
				
			||||||
 | 
							return ResultModel.success(userService.getUserDetail(detailBO)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 个人详情 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/profile") | 
				
			||||||
 | 
						public ResultModel<UserProfileVO> getUserProfile() { | 
				
			||||||
 | 
							LoginUserVO loginUser = SecurityUtils.getLoginUser(); | 
				
			||||||
 | 
							return ResultModel.success(userService.getUserProfile(loginUser.getUserId())); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据手机号查询用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param phone 手机号 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/getUserByPhone/{phone}") | 
				
			||||||
 | 
						public ResultModel<UserOptionVO> getUserByPhone(@PathVariable String phone) { | 
				
			||||||
 | 
							return ResultModel.success(userService.getUserByPhone(phone)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户名查询用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param username 用户名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/getUserByUserName/{username}") | 
				
			||||||
 | 
						public ResultModel<UserOptionVO> getByPhone(@PathVariable String username) { | 
				
			||||||
 | 
							return ResultModel.success(userService.getUserByUserName(username)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据-关键字搜索用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param keywords 关键字模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/listUserOption") | 
				
			||||||
 | 
						public ResultModel<?> listUserOption(@RequestParam(required = false) String keywords) { | 
				
			||||||
 | 
							return ResultModel.success(userService.listUserOption(keywords)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 添加用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param addBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/add") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:add')") | 
				
			||||||
 | 
						public ResultModel<?> addUser(@Valid @RequestBody UserAddBO addBO) { | 
				
			||||||
 | 
							addBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.addUser(addBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 添加用户系统关系 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param addBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/addUserPlatformRelation") | 
				
			||||||
 | 
						public ResultModel<?> addUserPlatformRelation(@Valid @RequestBody UserPlatformAddBO addBO) { | 
				
			||||||
 | 
							addBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.addUserPlatformRelation(addBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/update") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:update')") | 
				
			||||||
 | 
						public ResultModel<?> updateUser(@Valid @RequestBody UserUpdateBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.updateUser(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 移除用户与系统关系 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param removeBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/removeUserSystem") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:removeUserSystem')") | 
				
			||||||
 | 
						public ResultModel<?> removeUserSystem(@Valid @RequestBody UserSystemRemoveBO removeBO) { | 
				
			||||||
 | 
							removeBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.removeUserSystem(removeBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改个人信息 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/updateProfile") | 
				
			||||||
 | 
						public ResultModel<?> updateProfile(@Valid @RequestBody UserUpdateProfileBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.updateProfile(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改个人密码 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/updatePwd") | 
				
			||||||
 | 
						public ResultModel<?> updatePwd(@Valid @RequestBody UserUpdatePwdBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.updatePwd(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 重置密码 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param restPwdBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/resetPwd") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:resetPwd')") | 
				
			||||||
 | 
						public ResultModel<?> resetPwd(@Valid @RequestBody UserRestPwdBO restPwdBO) { | 
				
			||||||
 | 
							restPwdBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.resetPwd(restPwdBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param deleteBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/delete") | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:delete')") | 
				
			||||||
 | 
						public ResultModel<?> deleteUser(@Valid @RequestBody UserDeleteBO deleteBO) { | 
				
			||||||
 | 
							deleteBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.deleteUser(deleteBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,75 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultPageModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.user.UserOnlineListPageBO; | 
				
			||||||
 | 
					import com.sso.model.vo.user.UserOnlinePageVO; | 
				
			||||||
 | 
					import com.sso.model.vo.user.UserOnlineSysVO; | 
				
			||||||
 | 
					import com.sso.service.admin.UserOnlineService; | 
				
			||||||
 | 
					import com.sso.service.base.SsoTokenService; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springframework.security.access.prepost.PreAuthorize; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.PathVariable; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RequestMapping; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RestController; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.annotation.Resource; | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 在线用户管理接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/user/online") | 
				
			||||||
 | 
					public class UserOnlineController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Resource | 
				
			||||||
 | 
						private SsoTokenService ssoTokenService; | 
				
			||||||
 | 
						@Resource | 
				
			||||||
 | 
						private UserOnlineService userOnlineService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 在线用户分页列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param pageBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:online:listPage')") | 
				
			||||||
 | 
						@RequestMapping("/listPage") | 
				
			||||||
 | 
						public ResultPageModel<UserOnlinePageVO> listPage(@Valid UserOnlineListPageBO pageBO) { | 
				
			||||||
 | 
							return userOnlineService.listPageUser(pageBO); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 查看用户已登录的子系统 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:online:listOnlineSys')") | 
				
			||||||
 | 
						@RequestMapping("/listOnlineSys/{userId}") | 
				
			||||||
 | 
						public ResultPageModel<UserOnlineSysVO> listOnlineSys(@PathVariable Long userId) { | 
				
			||||||
 | 
							return ResultPageModel.success(userOnlineService.listOnlineSys(userId)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 强退认证中心+所有已登录子系统 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PreAuthorize("@ss.hasPermission('user:online:retreatUser')") | 
				
			||||||
 | 
						@RequestMapping("/retreatUser/{userId}") | 
				
			||||||
 | 
						public ResultModel<UserOnlineSysVO> retreatUser(@PathVariable Long userId) { | 
				
			||||||
 | 
							ssoTokenService.logoOutUser(userId); | 
				
			||||||
 | 
							log.info("[ 强退用户 ]  >> userId:{}, operateBy:{}", userId, SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,83 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.admin; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.login.LoginUserVO; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.model.bo.user.UserUpdateProfileBO; | 
				
			||||||
 | 
					import com.sso.model.bo.user.UserUpdatePwdBO; | 
				
			||||||
 | 
					import com.sso.model.vo.user.UserProfileVO; | 
				
			||||||
 | 
					import com.sso.service.admin.FileUploadService; | 
				
			||||||
 | 
					import com.sso.service.admin.UserService; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.*; | 
				
			||||||
 | 
					import org.springframework.web.multipart.MultipartFile; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.annotation.Resource; | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户-个人详情接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/user/profile") | 
				
			||||||
 | 
					public class UserProfileController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private UserService userService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Resource | 
				
			||||||
 | 
						private FileUploadService fileUploadService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 个人详情 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@RequestMapping("/detail") | 
				
			||||||
 | 
						public ResultModel<UserProfileVO> getUserProfile() { | 
				
			||||||
 | 
							LoginUserVO loginUser = SecurityUtils.getLoginUser(); | 
				
			||||||
 | 
							return ResultModel.success(userService.getUserProfile(loginUser.getUserId())); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改个人信息 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/update") | 
				
			||||||
 | 
						public ResultModel<?> updateProfile(@Valid @RequestBody UserUpdateProfileBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.updateProfile(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改个人密码 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param updateBO | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PutMapping("/updatePwd") | 
				
			||||||
 | 
						public ResultModel<?> updatePwd(@Valid @RequestBody UserUpdatePwdBO updateBO) { | 
				
			||||||
 | 
							updateBO.setOperateBy(SecurityUtils.getOperateName()); | 
				
			||||||
 | 
							userService.updatePwd(updateBO); | 
				
			||||||
 | 
							return ResultModel.success(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 个人-头像上传 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/avatar") | 
				
			||||||
 | 
						public ResultModel<?> avatar(@RequestParam("avatarFile") MultipartFile avatarFile) { | 
				
			||||||
 | 
							LoginUserVO loginUser = SecurityUtils.getLoginUser(); | 
				
			||||||
 | 
							String operateName = SecurityUtils.getOperateName(); | 
				
			||||||
 | 
							return ResultModel.success(fileUploadService.uploadUserAvatar(loginUser.getUserId(), operateName, avatarFile)); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,65 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.controller.getway; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.alibaba.fastjson.JSON; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.utils.SystemClock; | 
				
			||||||
 | 
					import com.sso.model.bo.getway.GetWayReqBO; | 
				
			||||||
 | 
					import com.sso.service.getway.ApiClient; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.apache.commons.lang3.RandomStringUtils; | 
				
			||||||
 | 
					import org.slf4j.MDC; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.PostMapping; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RequestMapping; | 
				
			||||||
 | 
					import org.springframework.web.bind.annotation.RestController; | 
				
			||||||
 | 
					import org.springframework.web.util.WebUtils; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletRequest; | 
				
			||||||
 | 
					import javax.validation.Valid; | 
				
			||||||
 | 
					import java.util.Map; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 统一网关 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@RestController | 
				
			||||||
 | 
					@RequestMapping("/open") | 
				
			||||||
 | 
					public class OpenApiController { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private ApiClient apiClient; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 统一网关入口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @author 程序员小强 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@PostMapping("/gateway") | 
				
			||||||
 | 
						public ResultModel<?> gateway(@Valid GetWayReqBO reqBO, | 
				
			||||||
 | 
													  HttpServletRequest request) throws Throwable { | 
				
			||||||
 | 
							Map<String, Object> mapParams = WebUtils.getParametersStartingWith(request, ""); | 
				
			||||||
 | 
							//日志ID (请求的唯一标识+5位随机数)
 | 
				
			||||||
 | 
							MDC.put("logId", String.format("[%s-%s]", reqBO.getApiRequestId(), RandomStringUtils.randomAlphanumeric(5))); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							log.info("[ 统一认证开放接口 start ] >> method={} mapParams = {}", reqBO.getMethod(), mapParams); | 
				
			||||||
 | 
							long start = SystemClock.millisClock().now(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							//校验请求时间戳间隔
 | 
				
			||||||
 | 
							apiClient.checkTimestamp(reqBO, mapParams); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							//验签
 | 
				
			||||||
 | 
							apiClient.checkSign(reqBO, mapParams); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							//请求接口
 | 
				
			||||||
 | 
							ResultModel<?> result = apiClient.invoke(reqBO); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							log.info("[ 统一认证开放接口 end ] >> method={},result = {}, times = {} ms", reqBO.getMethod(), JSON.toJSONString(result), (SystemClock.millisClock().now() - start)); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return result; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,147 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.security; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.security.filter.TokenAuthenticationFilter; | 
				
			||||||
 | 
					import com.sso.security.handle.AuthenticationEntryPointImpl; | 
				
			||||||
 | 
					import com.sso.security.handle.LogoutSuccessHandlerImpl; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.context.annotation.Bean; | 
				
			||||||
 | 
					import org.springframework.http.HttpMethod; | 
				
			||||||
 | 
					import org.springframework.security.authentication.AuthenticationManager; | 
				
			||||||
 | 
					import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; | 
				
			||||||
 | 
					import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; | 
				
			||||||
 | 
					import org.springframework.security.config.annotation.web.builders.HttpSecurity; | 
				
			||||||
 | 
					import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; | 
				
			||||||
 | 
					import org.springframework.security.config.http.SessionCreationPolicy; | 
				
			||||||
 | 
					import org.springframework.security.core.userdetails.UserDetailsService; | 
				
			||||||
 | 
					import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; | 
				
			||||||
 | 
					import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; | 
				
			||||||
 | 
					import org.springframework.security.web.authentication.logout.LogoutFilter; | 
				
			||||||
 | 
					import org.springframework.web.filter.CorsFilter; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.annotation.Resource; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * spring security配置 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true) | 
				
			||||||
 | 
					public class SecurityConfig extends WebSecurityConfigurerAdapter { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 自定义用户认证逻辑 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Resource | 
				
			||||||
 | 
						private UserDetailsService userDetailsService; | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 认证失败处理类 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private AuthenticationEntryPointImpl unauthorizedHandler; | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 退出处理类 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private LogoutSuccessHandlerImpl logoutSuccessHandler; | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * token认证过滤器 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private TokenAuthenticationFilter tokenAuthenticationFilter; | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 跨域过滤器 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private CorsFilter corsFilter; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 解决 无法直接注入 AuthenticationManager | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @return | 
				
			||||||
 | 
						 * @throws Exception | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Bean | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public AuthenticationManager authenticationManagerBean() throws Exception { | 
				
			||||||
 | 
							return super.authenticationManagerBean(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * Security 配置 | 
				
			||||||
 | 
						 * 规则如下: | 
				
			||||||
 | 
						 * anyRequest          ->   匹配所有请求路径 | 
				
			||||||
 | 
						 * access              ->   SpringEl表达式结果为true时可以访问 | 
				
			||||||
 | 
						 * anonymous           ->   匿名可以访问 | 
				
			||||||
 | 
						 * denyAll             ->   用户不能访问 | 
				
			||||||
 | 
						 * fullyAuthenticated  ->   用户完全认证可以访问(非remember-me下自动登录) | 
				
			||||||
 | 
						 * hasAnyAuthority     ->   如果有参数,参数表示权限,则其中任何一个权限可以访问 | 
				
			||||||
 | 
						 * hasAnyRole          ->   如果有参数,参数表示角色,则其中任何一个角色可以访问 | 
				
			||||||
 | 
						 * hasAuthority        ->   如果有参数,参数表示权限,则其权限可以访问 | 
				
			||||||
 | 
						 * hasIpAddress        ->   如果有参数,参数表示IP地址,如果用户IP和参数匹配,则可以访问 | 
				
			||||||
 | 
						 * hasRole             ->   如果有参数,参数表示角色,则其角色可以访问 | 
				
			||||||
 | 
						 * permitAll           ->   用户可以任意访问 | 
				
			||||||
 | 
						 * rememberMe          ->   允许通过remember-me登录的用户访问 | 
				
			||||||
 | 
						 * authenticated       ->   用户登录后可访问 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected void configure(HttpSecurity httpSecurity) throws Exception { | 
				
			||||||
 | 
							httpSecurity | 
				
			||||||
 | 
									// CSRF禁用,因为不使用session
 | 
				
			||||||
 | 
									.csrf().disable() | 
				
			||||||
 | 
									// 认证失败处理类
 | 
				
			||||||
 | 
									.exceptionHandling().authenticationEntryPoint(unauthorizedHandler).and() | 
				
			||||||
 | 
									// 基于token,所以不需要session
 | 
				
			||||||
 | 
									.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and() | 
				
			||||||
 | 
									// 过滤请求
 | 
				
			||||||
 | 
									.authorizeRequests() | 
				
			||||||
 | 
									// 对于登录login 验证码captchaImage 允许匿名访问
 | 
				
			||||||
 | 
									.antMatchers("/**/login", "/**/captchaImage").anonymous() | 
				
			||||||
 | 
									.antMatchers( | 
				
			||||||
 | 
											HttpMethod.GET, | 
				
			||||||
 | 
											"/*.html", | 
				
			||||||
 | 
											"/**/*.html", | 
				
			||||||
 | 
											"/**/*.css", | 
				
			||||||
 | 
											"/**/*.js", | 
				
			||||||
 | 
											"/**/*.ico" | 
				
			||||||
 | 
									).permitAll() | 
				
			||||||
 | 
									.antMatchers("/profile/**").anonymous() | 
				
			||||||
 | 
									.antMatchers("/**/webjars/**").anonymous() | 
				
			||||||
 | 
									.antMatchers("/**/api-docs").anonymous() | 
				
			||||||
 | 
									.antMatchers("/**/druid/**").anonymous() | 
				
			||||||
 | 
									//开放接口不拦截-内部有验签
 | 
				
			||||||
 | 
									.antMatchers("/open/gateway").anonymous() | 
				
			||||||
 | 
									// 除上面外的所有请求全部需要鉴权认证
 | 
				
			||||||
 | 
									.anyRequest().authenticated() | 
				
			||||||
 | 
									.and() | 
				
			||||||
 | 
									.headers().frameOptions().disable(); | 
				
			||||||
 | 
							// 退出登录处理器
 | 
				
			||||||
 | 
							httpSecurity.logout().logoutUrl("/**/logout").logoutSuccessHandler(logoutSuccessHandler); | 
				
			||||||
 | 
							// 添加账号校验 filter
 | 
				
			||||||
 | 
							httpSecurity.addFilterBefore(tokenAuthenticationFilter, UsernamePasswordAuthenticationFilter.class); | 
				
			||||||
 | 
							// 添加CORS filter
 | 
				
			||||||
 | 
							httpSecurity.addFilterBefore(corsFilter, TokenAuthenticationFilter.class); | 
				
			||||||
 | 
							// 登出
 | 
				
			||||||
 | 
							httpSecurity.addFilterBefore(corsFilter, LogoutFilter.class); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 强散列哈希加密实现 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Bean | 
				
			||||||
 | 
						public BCryptPasswordEncoder bCryptPasswordEncoder() { | 
				
			||||||
 | 
							return new BCryptPasswordEncoder(); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 身份-认证接口 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected void configure(AuthenticationManagerBuilder auth) throws Exception { | 
				
			||||||
 | 
							auth.userDetailsService(userDetailsService).passwordEncoder(bCryptPasswordEncoder()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,47 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.security.filter; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.login.LoginResultVO; | 
				
			||||||
 | 
					import com.sso.common.utils.ObjectUtils; | 
				
			||||||
 | 
					import com.sso.common.utils.SecurityUtils; | 
				
			||||||
 | 
					import com.sso.service.base.SsoTokenService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; | 
				
			||||||
 | 
					import org.springframework.security.core.context.SecurityContextHolder; | 
				
			||||||
 | 
					import org.springframework.security.web.authentication.WebAuthenticationDetailsSource; | 
				
			||||||
 | 
					import org.springframework.stereotype.Component; | 
				
			||||||
 | 
					import org.springframework.web.filter.OncePerRequestFilter; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.servlet.FilterChain; | 
				
			||||||
 | 
					import javax.servlet.ServletException; | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletRequest; | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletResponse; | 
				
			||||||
 | 
					import java.io.IOException; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * token过滤器 验证token有效性 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Component | 
				
			||||||
 | 
					public class TokenAuthenticationFilter extends OncePerRequestFilter { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private SsoTokenService ssoTokenService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) | 
				
			||||||
 | 
								throws ServletException, IOException { | 
				
			||||||
 | 
							LoginResultVO loginResultVO = ssoTokenService.getLoginUser(request); | 
				
			||||||
 | 
							if (ObjectUtils.isNotNull(loginResultVO) && ObjectUtils.isNull(SecurityUtils.getAuthentication())) { | 
				
			||||||
 | 
								ssoTokenService.renewTokenByAdminWeb(loginResultVO); | 
				
			||||||
 | 
								UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(loginResultVO, null, loginResultVO.getAuthorities()); | 
				
			||||||
 | 
								authenticationToken.setDetails(new WebAuthenticationDetailsSource().buildDetails(request)); | 
				
			||||||
 | 
								SecurityContextHolder.getContext().setAuthentication(authenticationToken); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							chain.doFilter(request, response); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,38 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.security.handle; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.alibaba.fastjson.JSON; | 
				
			||||||
 | 
					import com.sso.common.enums.exception.SysResStatusEnum; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.utils.ServletUtils; | 
				
			||||||
 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			||||||
 | 
					import org.springframework.security.core.AuthenticationException; | 
				
			||||||
 | 
					import org.springframework.security.web.AuthenticationEntryPoint; | 
				
			||||||
 | 
					import org.springframework.stereotype.Component; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletRequest; | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletResponse; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 认证失败处理类 返回未授权 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Slf4j | 
				
			||||||
 | 
					@Component | 
				
			||||||
 | 
					public class AuthenticationEntryPointImpl implements AuthenticationEntryPoint, Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -6355792444057575911L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException e) { | 
				
			||||||
 | 
							int code = SysResStatusEnum.UNAUTHORIZED.getCode(); | 
				
			||||||
 | 
							String msg = String.format("请求访问:%s,认证失败,无法访问系统资源", request.getRequestURI()); | 
				
			||||||
 | 
							log.error("请求访问:{},认证失败,无法访问系统资源", request.getRequestURI()); | 
				
			||||||
 | 
							ServletUtils.renderString(response, JSON.toJSONString(ResultModel.error(code, msg))); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,45 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.security.handle; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.alibaba.fastjson.JSON; | 
				
			||||||
 | 
					import com.sso.common.enums.exception.SysResStatusEnum; | 
				
			||||||
 | 
					import com.sso.common.model.login.LoginResultVO; | 
				
			||||||
 | 
					import com.sso.common.model.result.ResultModel; | 
				
			||||||
 | 
					import com.sso.common.utils.ServletUtils; | 
				
			||||||
 | 
					import com.sso.service.base.SsoTokenService; | 
				
			||||||
 | 
					import org.springframework.beans.factory.annotation.Autowired; | 
				
			||||||
 | 
					import org.springframework.context.annotation.Configuration; | 
				
			||||||
 | 
					import org.springframework.security.core.Authentication; | 
				
			||||||
 | 
					import org.springframework.security.web.authentication.logout.LogoutSuccessHandler; | 
				
			||||||
 | 
					import org.springframework.util.ObjectUtils; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletRequest; | 
				
			||||||
 | 
					import javax.servlet.http.HttpServletResponse; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 自定义退出处理类 返回成功 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Configuration | 
				
			||||||
 | 
					public class LogoutSuccessHandlerImpl implements LogoutSuccessHandler { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Autowired | 
				
			||||||
 | 
						private SsoTokenService ssoTokenService; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户退出处理 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public void onLogoutSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) { | 
				
			||||||
 | 
							LoginResultVO loginResultVO = ssoTokenService.getLoginUser(request); | 
				
			||||||
 | 
							if (!ObjectUtils.isEmpty(loginResultVO)) { | 
				
			||||||
 | 
								//用户退出处理
 | 
				
			||||||
 | 
								ssoTokenService.logoOutUser(loginResultVO); | 
				
			||||||
 | 
							} | 
				
			||||||
 | 
							ServletUtils.renderString(response, JSON.toJSONString(ResultModel.error(SysResStatusEnum.SUCCESS.getCode(), "退出成功"))); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,2 @@ | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					spring.profiles.active=dev | 
				
			||||||
@ -0,0 +1,23 @@ | 
				
			|||||||
 | 
					${AnsiColor.BRIGHT_RED} | 
				
			||||||
 | 
					---------------------------------------- | 
				
			||||||
 | 
					 _______  _______  _______ | 
				
			||||||
 | 
					(  ____ \(  ____ \(  ___  ) | 
				
			||||||
 | 
					| (    \/| (    \/| (   ) | | 
				
			||||||
 | 
					| (_____ | (_____ | |   | | | 
				
			||||||
 | 
					(_____  )(_____  )| |   | | | 
				
			||||||
 | 
					      ) |      ) || |   | | | 
				
			||||||
 | 
					/\____) |/\____) || (___) | | 
				
			||||||
 | 
					\_______)\_______)(_______) | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---------------------------------------- | 
				
			||||||
 | 
					${AnsiColor.GREEN} | 
				
			||||||
 | 
					Application Env: ${spring.profiles.active} | 
				
			||||||
 | 
					Application Port: ${server.port} | 
				
			||||||
 | 
					Root Log Level: ${logging.level.root} | 
				
			||||||
 | 
					Project Log Level: ${logging.level.com.sso} | 
				
			||||||
 | 
					Spring Boot Version: ${spring-boot.version} | 
				
			||||||
 | 
					${AnsiColor.BRIGHT_RED} | 
				
			||||||
 | 
					温馨提示: | 
				
			||||||
 | 
					编码千万行,注释第一行。 | 
				
			||||||
 | 
					代码不规范,复盘两行泪。 | 
				
			||||||
 | 
					${AnsiColor.GREEN} | 
				
			||||||
@ -0,0 +1,104 @@ | 
				
			|||||||
 | 
					server.port=9901 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#日志配置 | 
				
			||||||
 | 
					logging.level.root=info | 
				
			||||||
 | 
					logging.level.com.sso=info | 
				
			||||||
 | 
					logging.level.org.springframework=warn | 
				
			||||||
 | 
					#日志文件路径 | 
				
			||||||
 | 
					log.root.path=${user.home}/logs/sso-auth-center | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# jackson时间格式化(解决时区问题) | 
				
			||||||
 | 
					spring.jackson.time-zone=GMT+8 | 
				
			||||||
 | 
					spring.jackson.date-format=yyyy-MM-dd HH:mm:ss | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#redis 基础配置 | 
				
			||||||
 | 
					# Redis数据库索引(默认为0) | 
				
			||||||
 | 
					spring.redis.database=0 | 
				
			||||||
 | 
					# Redis服务器地址 | 
				
			||||||
 | 
					spring.redis.host=localhost | 
				
			||||||
 | 
					# Redis服务器连接密码(默认为空) | 
				
			||||||
 | 
					spring.redis.password=123456 | 
				
			||||||
 | 
					# Redis服务器连接端口 | 
				
			||||||
 | 
					spring.redis.port=6379 | 
				
			||||||
 | 
					# 连接超时时间(毫秒) | 
				
			||||||
 | 
					spring.redis.timeout=0 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#redis 连接池配置 | 
				
			||||||
 | 
					#池中最大链接数 | 
				
			||||||
 | 
					spring.redis.pool-config.max-total=256 | 
				
			||||||
 | 
					# 连接池中的最大空闲连接 | 
				
			||||||
 | 
					spring.redis.pool-config.max-idle=128 | 
				
			||||||
 | 
					# 连接池中的最小空闲连接 | 
				
			||||||
 | 
					spring.redis.pool-config.min-idle=8 | 
				
			||||||
 | 
					# 连接池最大阻塞等待时间(使用负值表示没有限制) | 
				
			||||||
 | 
					spring.redis.pool-config.max-wait-millis=1000 | 
				
			||||||
 | 
					# 调用者获取链接时,是否检测当前链接有效性 | 
				
			||||||
 | 
					spring.redis.pool-config.test-on-borrow=false | 
				
			||||||
 | 
					# 向链接池中归还链接时,是否检测链接有效性 | 
				
			||||||
 | 
					spring.redis.pool-config.test-on-return=false | 
				
			||||||
 | 
					# 调用者获取链接时,是否检测空闲超时, 如果超时,则会被移除- | 
				
			||||||
 | 
					spring.redis.pool-config.test-while-idle=true | 
				
			||||||
 | 
					# 空闲链接检测线程一次运行检测多少条链接 | 
				
			||||||
 | 
					spring.redis.pool-config.num-tests-per-eviction-run=8 | 
				
			||||||
 | 
					#空闲链接检测线程检测周期。如果为负值,表示不运行检测线程。(单位:毫秒,默认为-1) | 
				
			||||||
 | 
					spring.redis.pool-config.time-between-eviction-runs-millis=60000 | 
				
			||||||
 | 
					#配置一个连接在池中最小生存的时间,单位是毫秒 | 
				
			||||||
 | 
					spring.redis.pool-config.min-evictable-idle-time-millis=300000 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 管理后台系统模块数据源 | 
				
			||||||
 | 
					spring.datasource.admin.url=jdbc:mysql://localhost:3306/my-sso?useUnicode=true&characterEncoding=utf8&autoReconnect=true&serverTimezone=Asia/Shanghai&allowMultiQueries=true | 
				
			||||||
 | 
					spring.datasource.admin.username=root | 
				
			||||||
 | 
					spring.datasource.admin.password=123456 | 
				
			||||||
 | 
					spring.datasource.admin.driver-class-name=com.mysql.cj.jdbc.Driver | 
				
			||||||
 | 
					spring.datasource.admin.initial-size=5 | 
				
			||||||
 | 
					spring.datasource.admin.max-active=20 | 
				
			||||||
 | 
					spring.datasource.admin.max-wait=60000 | 
				
			||||||
 | 
					spring.datasource.admin.min-evictable-idle-time-millis=30000 | 
				
			||||||
 | 
					spring.datasource.admin.min-idle=5 | 
				
			||||||
 | 
					spring.datasource.admin.test-on-borrow=false | 
				
			||||||
 | 
					spring.datasource.admin.test-on-return=false | 
				
			||||||
 | 
					spring.datasource.admin.test-while-idle=true | 
				
			||||||
 | 
					spring.datasource.admin.time-between-eviction-runs-millis=60000 | 
				
			||||||
 | 
					spring.datasource.admin.validation-query=SELECT 1 FROM DUAL | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 验证码类型: math-数组计算;char-字符验证 | 
				
			||||||
 | 
					sys.config.captchaType=math | 
				
			||||||
 | 
					# token配置 | 
				
			||||||
 | 
					# 令牌自定义标识 | 
				
			||||||
 | 
					sys.config.tokenHeader=Authorization | 
				
			||||||
 | 
					# 令牌密钥 | 
				
			||||||
 | 
					sys.config.tokenSecret=abcdefghijklmnopqrstuvwxyz | 
				
			||||||
 | 
					#认证中心系统编码 | 
				
			||||||
 | 
					sys.config.authSsoSysCode=auth-test | 
				
			||||||
 | 
					# 超级管理员用户(用户ID|用户名) | 
				
			||||||
 | 
					sys.config.supperAdminUser=1000|admin | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 令牌有效期(默认180分钟) | 
				
			||||||
 | 
					sys.config.tokenExpireTime=180 | 
				
			||||||
 | 
					#统一认证中心登录地址 | 
				
			||||||
 | 
					sys.config.ssoLoginUrl=http://www.myauth.com:9528/login | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#文件上传目录 | 
				
			||||||
 | 
					# 文件路径 示例( Windows配置D:/xqiang/uploadPath,Linux配置 /home/xqiang/uploadPath) | 
				
			||||||
 | 
					sys.config.fileProfile=/Users/mengqiang/files/upload | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 开发环境配置 | 
				
			||||||
 | 
					# 应用的访问路径 | 
				
			||||||
 | 
					server.servlet.context-path=/api/ | 
				
			||||||
 | 
					# tomcat的URI编码 | 
				
			||||||
 | 
					server.tomcat.uri-encoding=UTF-8 | 
				
			||||||
 | 
					# tomcat最大线程数,默认为200 | 
				
			||||||
 | 
					server.tomcat.max-threads=800 | 
				
			||||||
 | 
					# Tomcat启动初始化的线程数,默认值25 | 
				
			||||||
 | 
					server.tomcat.min-spare-threads=30 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Spring配置 | 
				
			||||||
 | 
					# 文件上传 | 
				
			||||||
 | 
					# 单个文件大小 | 
				
			||||||
 | 
					spring.servlet.multipart.max-file-size=10MB | 
				
			||||||
 | 
					# 设置总上传的文件大小 | 
				
			||||||
 | 
					spring.servlet.multipart.max-request-size=20MB | 
				
			||||||
@ -0,0 +1,55 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<configuration> | 
				
			||||||
 | 
					    <!-- 日志存放路径 --> | 
				
			||||||
 | 
					    <springProperty scope="context" name="log.path" source="log.root.path"/> | 
				
			||||||
 | 
					    <springProperty scope="context" name="log.level" source="logging.level.com.sso"/> | 
				
			||||||
 | 
					    <!-- 日志输出格式  --> | 
				
			||||||
 | 
					    <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度,%msg:日志消息,%n是换行符--> | 
				
			||||||
 | 
					    <property name="log.pattern" | 
				
			||||||
 | 
					              value="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %mdc{logId} [%thread] %logger{0} [%method:%line] - %msg%n"/> | 
				
			||||||
 | 
					    <!-- 控制台输出 --> | 
				
			||||||
 | 
					    <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> | 
				
			||||||
 | 
					        <encoder> | 
				
			||||||
 | 
					            <pattern>${log.pattern}</pattern> | 
				
			||||||
 | 
					        </encoder> | 
				
			||||||
 | 
					    </appender> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- 系统日志输出 --> | 
				
			||||||
 | 
					    <appender name="system_log" class="ch.qos.logback.core.rolling.RollingFileAppender"> | 
				
			||||||
 | 
					        <file>${log.path}/sso-auth-center.log</file> | 
				
			||||||
 | 
					        <!-- 循环政策:基于时间创建日志文件 --> | 
				
			||||||
 | 
					        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | 
				
			||||||
 | 
					            <!-- 日志文件名格式 --> | 
				
			||||||
 | 
					            <fileNamePattern>${log.path}/sso-auth-center.log.%d{yyyy-MM-dd}</fileNamePattern> | 
				
			||||||
 | 
					            <!-- 日志最大的历史 40天 --> | 
				
			||||||
 | 
					            <maxHistory>40</maxHistory> | 
				
			||||||
 | 
					        </rollingPolicy> | 
				
			||||||
 | 
					        <encoder> | 
				
			||||||
 | 
					            <pattern>${log.pattern}</pattern> | 
				
			||||||
 | 
					        </encoder> | 
				
			||||||
 | 
					        <!--日志文件最大的大小--> | 
				
			||||||
 | 
					        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> | 
				
			||||||
 | 
					            <MaxFileSize>20MB</MaxFileSize> | 
				
			||||||
 | 
					        </triggeringPolicy> | 
				
			||||||
 | 
					    </appender> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- | 
				
			||||||
 | 
					        <!– 系统模块日志级别控制   trace<debug<info<warn<error –> | 
				
			||||||
 | 
					        <logger name="com.fast.admin" level="info"/> | 
				
			||||||
 | 
					        <!– Spring日志级别控制  –> | 
				
			||||||
 | 
					        <logger name="org.springframework" level="warn"/> | 
				
			||||||
 | 
					    --> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <root level="${log.level}"> | 
				
			||||||
 | 
					        <appender-ref ref="console"/> | 
				
			||||||
 | 
					    </root> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!-- Spring日志级别控制  --> | 
				
			||||||
 | 
					    <logger name="org.springframework" level="warn"/> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <!--系统操作日志--> | 
				
			||||||
 | 
					    <root level="${log.level}"> | 
				
			||||||
 | 
					        <appender-ref ref="system_log"/> | 
				
			||||||
 | 
					    </root> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</configuration> | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					<?xml version="1.0" encoding="UTF-8"?> | 
				
			||||||
 | 
					<project xmlns="http://maven.apache.org/POM/4.0.0" | 
				
			||||||
 | 
					         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | 
				
			||||||
 | 
					         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | 
				
			||||||
 | 
					    <parent> | 
				
			||||||
 | 
					        <groupId>com.sso</groupId> | 
				
			||||||
 | 
					        <artifactId>sso-auth-center-service</artifactId> | 
				
			||||||
 | 
					        <version>1.0.0</version> | 
				
			||||||
 | 
					    </parent> | 
				
			||||||
 | 
					    <modelVersion>4.0.0</modelVersion> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <artifactId>sso-business</artifactId> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <description> | 
				
			||||||
 | 
					        system系统模块 | 
				
			||||||
 | 
					    </description> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    <dependencies> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <!-- 通用模块 --> | 
				
			||||||
 | 
					        <dependency> | 
				
			||||||
 | 
					            <groupId>com.sso</groupId> | 
				
			||||||
 | 
					            <artifactId>sso-common</artifactId> | 
				
			||||||
 | 
					        </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        <!-- 核心配置模块 --> | 
				
			||||||
 | 
					        <dependency> | 
				
			||||||
 | 
					            <groupId>com.sso</groupId> | 
				
			||||||
 | 
					            <artifactId>sso-framework</artifactId> | 
				
			||||||
 | 
					        </dependency> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    </dependencies> | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</project> | 
				
			||||||
@ -0,0 +1,24 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色统计 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class RoleCountDTO implements Serializable { | 
				
			||||||
 | 
						private static final long serialVersionUID = -9112752803214125220L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private Integer count; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,109 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 登录日志实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoOnlineUserDTO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -8922037654548424632L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String username; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phone; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 密码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String password; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户昵称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String nickName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 真实姓名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String realName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 请求标识 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String requestId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 来源IP | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sourceIp; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 来源地址 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sourceAddress; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 浏览器 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String browserName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 操作系统 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String operateSystem; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录状态 0-成功;1-失败 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录时间戳 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 主动退出时间戳 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginOutTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 失效时间戳 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long expireTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,36 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoUserDeptDTO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -2778006438843424841L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String deptName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,91 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户-系统管理 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-02 17:20:41 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoUserMgmtDTO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -7065547317808718215L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private Long id; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String username; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户昵称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String nickName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 真实姓名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String realName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户性别 0-男;1-女;2-未知 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer sex; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phone; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 邮箱 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String email; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer userStatus; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 关系状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer relationStatus; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 最后修改者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,36 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.dto; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户角色 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 18:07:20 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoUserRoleDTO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 219537171519448483L; | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色id多个逗号分隔 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleIds; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色名称多个逗号分隔 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleNames; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,84 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 18:07:20 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoDept implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private static final long serialVersionUID = 4501341919143820458L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 部门ID | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 部门名称 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String deptName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 系统编码 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 父部门ID | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Long deptParentId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 顺序 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 状态 0-正常;1-停用 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 备注 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 创建者 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 最后修改者 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 创建时间 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 修改时间 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门祖先/后代关系实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 18:07:20 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoDeptTreePath implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -8794488706755626248L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 祖先 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long ancestor; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 后代 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long descendant; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,84 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 登录日志实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoLoginLog implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -7814417622883518147L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long id; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 请求标识 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String requestId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String username; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 来源IP | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sourceIp; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 来源地址 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sourceAddress; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 浏览器 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String browserName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 操作系统 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String operateSystem; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录状态 0-成功;1-失败 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录时间戳 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 返回结果 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String operateMsg; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,119 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单权限实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-08 18:01:08 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoMenu implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -1115470419419879842L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long menuId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String menuName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单类型(M目录 C菜单 F按钮) | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String menuType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 父菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long menuParentId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 显示顺序 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单路由地址 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String path; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单图标 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String icon; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 组件路径 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String component; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 权限标识,多个|分隔 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String permissions; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 使用类型 0-授权访问;1-开放访问; | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer useType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 是否显示 0-显示;1-隐藏 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer visible; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单状态 0-正常;1停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 最后修改者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,87 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 在线用户实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoOnlineUser implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 4271347681726609352L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long id; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 请求标识 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String requestId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 来源IP | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sourceIp; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 来源地址 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sourceAddress; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 浏览器 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String browserName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 操作系统 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String operateSystem; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录时间戳 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 主动退出时间戳 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginOutTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 失效时间戳 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long expireTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 返回结果 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String operateMsg; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,84 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色信息实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-07 15:56:40 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoRole implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -9193130704066823912L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色标识key | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleKey; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 显示顺序 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 最后修改者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,50 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色和菜单关系实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-08 18:01:08 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoRoleMenu implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -8633658293267783613L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long menuId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,110 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * haifenbb.com | 
				
			||||||
 | 
					 * Copyright (C) 2019-2020 All Rights Reserved. | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 目标系统实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 10:59:43 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoSystem implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -4911126816387035L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统平台ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long sysId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统权限编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysGrantCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统链接 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysUrl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统图标 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysIcon; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统环境 0-测试 1-beta 2-生产 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer sysEnv; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 排序,数字越小排在越前面 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 签名类型 0-无;1-MD5;2-RSA; | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer signType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 网关验签公钥 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String publicKey; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 最后修改者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 更新时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,69 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 平台管理员关系实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-16 10:22:57 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoSystemManager implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 8221382605127103730L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long id; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-启用;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 最后修改者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,113 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-02 17:20:41 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoUser implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private static final long serialVersionUID = -3634941666611687795L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 用户ID | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 用户登录名 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String username; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 密码 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String password; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 用户昵称 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String nickName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 真实姓名 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String realName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 用户性别 0-男;1-女;2-未知 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Integer sex; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 手机号码 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String phone; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 邮箱 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String email; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 头像 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String avatar; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 状态 0-正常;1-停用 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 最后登录IP | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String loginIp; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 最后登录时间 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Date lastLoginTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 备注 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 创建者 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 最后修改者 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 创建时间 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 修改时间 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,49 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户部门关系实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-02 17:20:41 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoUserDept implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private static final long serialVersionUID = -8391256763118936557L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 系统编码 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 用户ID | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 部门ID | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 创建时间 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 修改时间 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,49 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户和角色关联实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-08 15:41:48 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoUserRole implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -3171194295603566556L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,69 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户与目标系统关系实体类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-10 22:22:34 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SsoUserSystem implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -6154959745933571133L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 自增ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long id; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 显示顺序 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String createBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 最后修改者 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String updateBy; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 创建时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date createTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Date updateTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,113 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.dto.SsoUserDeptDTO; | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoDept; | 
				
			||||||
 | 
					import com.sso.dao.query.SsoDeptQuery; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 18:07:20 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoDeptMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 部门ID 查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param deptId 部门ID | 
				
			||||||
 | 
						 * @return 部门实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoDept getByDeptId(Long deptId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码与用户ID 查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode    用户ID | 
				
			||||||
 | 
						 * @param userIdList 用户ID | 
				
			||||||
 | 
						 * @return 部门实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoUserDeptDTO> getDeptBySysCodeAndUserIdList(@Param("sysCode") String sysCode, @Param("userIdList") List<Long> userIdList); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoDept 部门实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoDept ssoDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoDept 部门实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoDept ssoDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoDept 部门实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByDeptId(SsoDept ssoDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 更新所有父级的状态 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoDept | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateAllParentStatus(SsoDept ssoDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoDept 部门实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByDeptIdSelective(SsoDept ssoDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据条件-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 过滤条件 | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoDept> listByCondition(SsoDeptQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据条件统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 过滤条件 | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByCondition(SsoDeptQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据父部门ID与状态统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param deptParentId | 
				
			||||||
 | 
						 * @param status | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByDeptParentIdAndStatus(@Param("deptParentId") Long deptParentId, @Param("status") Integer status); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param syCode | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countBySysCode(@Param("sysCode") String syCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,61 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoDept; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门祖先/后代关系 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 18:07:20 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoDeptTreePathMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 插入新节点 | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param deptId | 
				
			||||||
 | 
					     * @param deptParentId | 
				
			||||||
 | 
					     * @return 行数 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    int insertBatch(@Param("deptId") Long deptId, @Param("deptParentId") Long deptParentId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 删除叶子节点 | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param deptId | 
				
			||||||
 | 
					     * @return 行数 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    int deleteLeaf(Long deptId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 删除子树 | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param deptId | 
				
			||||||
 | 
					     * @return 行数 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    int deleteChildTree(Long deptId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 查询所有祖先 | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param deptId | 
				
			||||||
 | 
					     * @return 部门列表 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    List<SsoDept> getAllParent(Long deptId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 查询所有后代 | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param deptId | 
				
			||||||
 | 
					     * @return 部门列表 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    List<SsoDept> getAllChild(Long deptId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,91 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoLoginLog; | 
				
			||||||
 | 
					import com.sso.dao.query.LoginLogQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 登录日志基础mapper接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoLoginLogMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 requestId 查询接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param requestId 自增主键 | 
				
			||||||
 | 
						 * @return 登录日志实体 | 
				
			||||||
 | 
						 * @date 20-01-19 10:45:22 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoLoginLog getByRequestId(String requestId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query | 
				
			||||||
 | 
						 * @return 统计值 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByCondition(LoginLogQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 查询列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query | 
				
			||||||
 | 
						 * @return 日志列表 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoLoginLog> listPageByCondition(LoginLogQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoLoginLog 登录日志实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoLoginLog ssoLoginLog); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoLoginLog 登录日志实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoLoginLog ssoLoginLog); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键删除接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param id 自增主键主键 | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteByPrimaryKey(Long id); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoLoginLog 登录日志实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKey(SsoLoginLog ssoLoginLog); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoLoginLog 登录日志实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 * @date 2021-01-23 10:45:22 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKeySelective(SsoLoginLog ssoLoginLog); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,112 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoMenu; | 
				
			||||||
 | 
					import com.sso.dao.query.SsoMenuQuery; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单权限基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-08 18:03:31 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoMenuMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 menuId 查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param menuId 自增主键 | 
				
			||||||
 | 
						 * @return 菜单权限 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoMenu getByMenuId(Long menuId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码与角色名称查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode  系统编码 | 
				
			||||||
 | 
						 * @param menuName 菜单名称 | 
				
			||||||
 | 
						 * @return 角色信息 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoMenu getBySysCodeAndName(@Param("sysCode") String sysCode, @Param("menuName") String menuName); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码查询-未删除-并且启用的菜单 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode | 
				
			||||||
 | 
						 * @return 权限集 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoMenu> getEnableMenuListBySysCode(@Param("sysCode") String sysCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码与用户ID查询权限查询-未删除-并且启用的菜单 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode | 
				
			||||||
 | 
						 * @param userId | 
				
			||||||
 | 
						 * @return 权限集 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoMenu> getMenuListBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据条件统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 过滤条件 | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByCondition(SsoMenuQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据条件-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 过滤条件 | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoMenu> listByCondition(SsoMenuQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoMenu 菜单权限 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoMenu ssoMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoMenu 菜单权限 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoMenu ssoMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 菜单ID 编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoMenu 菜单权限 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByMenuId(SsoMenu ssoMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 菜单ID 动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoMenu 菜单权限 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByMenuIdSelective(SsoMenu ssoMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param syCode | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countBySysCode(@Param("sysCode") String syCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,111 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.dto.SsoOnlineUserDTO; | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoOnlineUser; | 
				
			||||||
 | 
					import com.sso.dao.query.UserOnlineQuery; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 在线用户基础mapper接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-30 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoOnlineUserMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 requestId 查询接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param requestId 请求标识 | 
				
			||||||
 | 
						 * @return 在线用户实体 | 
				
			||||||
 | 
						 * @date 2021-01-30 11:47:18 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoOnlineUser getByRequestId(String requestId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoOnlineUser 在线用户实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 * @date 2021-01-30 11:47:18 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoOnlineUser ssoOnlineUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoOnlineUser 在线用户实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 * @date 2021-01-30 11:47:18 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoOnlineUser ssoOnlineUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键删除接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param id 自增主键主键 | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 * @date 2021-01-30 11:47:18 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteByPrimaryKey(Long id); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoOnlineUser 在线用户实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 * @date 2021-01-30 11:47:18 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKey(SsoOnlineUser ssoOnlineUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoOnlineUser 在线用户实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 * @date 2021-01-30 11:47:18 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKeySelective(SsoOnlineUser ssoOnlineUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query | 
				
			||||||
 | 
						 * @return 统计值 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByCondition(UserOnlineQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 查询列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query | 
				
			||||||
 | 
						 * @return 日志列表 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoOnlineUserDTO> listPageByCondition(UserOnlineQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据请求标识-刷新效期时间 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param requestId | 
				
			||||||
 | 
						 * @param expireTime | 
				
			||||||
 | 
						 * @return | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int refreshExpireTimeByRequestId(@Param("requestId") String requestId, @Param("expireTime") Long expireTime); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 退出时-根据请求标识-更新效期时间 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param requestId | 
				
			||||||
 | 
						 * @param expireTime | 
				
			||||||
 | 
						 * @param loginOutTime | 
				
			||||||
 | 
						 * @return | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByLogoOut(@Param("requestId") String requestId, @Param("expireTime") Long expireTime, @Param("loginOutTime") Long loginOutTime); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,112 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoRole; | 
				
			||||||
 | 
					import com.sso.dao.query.SsoRoleQuery; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色信息mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-07 15:56:40 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoRoleMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 角色ID 查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleId 角色ID | 
				
			||||||
 | 
						 * @return 角色信息 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoRole getByRoleId(Long roleId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码与角色名称查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @param roleName    角色名称 | 
				
			||||||
 | 
						 * @return 角色信息 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoRole getBySysCodeAndName(@Param("sysCode") String sysCode, @Param("roleName") String roleName); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码与角色key查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @param roleKey    角色名称 | 
				
			||||||
 | 
						 * @return 角色信息 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoRole getBySysCodeAndRoleKey(@Param("sysCode") String sysCode, @Param("roleKey") String roleKey); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码 与 用户ID查询角色key | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode   系统编码 | 
				
			||||||
 | 
						 * @param userId    用户ID | 
				
			||||||
 | 
						 * @return 角色信息 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<String> getRoleKeyBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据条件统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 过滤条件 | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByCondition(SsoRoleQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据条件-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 过滤条件 | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoRole> listPageByCondition(SsoRoleQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRole 角色信息实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoRole ssoRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRole 角色信息实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoRole ssoRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRole 角色信息 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByRoleId(SsoRole ssoRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRole 角色信息 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByRoleIdSelective(SsoRole ssoRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param syCode | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countBySysCode(@Param("sysCode") String syCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,86 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoRoleMenu; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色和菜单关系基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-08 18:03:32 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoRoleMenuMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键id查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleId 角色ID | 
				
			||||||
 | 
						 * @return 角色和菜单关系 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<Long> getMenuIdListByRoleId(Long roleId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 批量新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param list | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int batchSave(List<SsoRoleMenu> list); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRoleMenu 角色和菜单关系 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoRoleMenu ssoRoleMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRoleMenu 角色和菜单关系 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoRoleMenu ssoRoleMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 roleId 删除 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleId 角色ID | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteByRoleId(Long roleId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 menuId 删除 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param menuId 菜单ID | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteByMenuId(Long menuId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRoleMenu 角色和菜单关系 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKey(SsoRoleMenu ssoRoleMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoRoleMenu 角色和菜单关系 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKeySelective(SsoRoleMenu ssoRoleMenu); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,100 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.dto.SsoUserMgmtDTO; | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoSystemManager; | 
				
			||||||
 | 
					import com.sso.dao.query.SystemMgmtPageQuery; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 平台管理员关系基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-16 10:22:57 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoSystemManagerMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键id查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param id 自增主键 | 
				
			||||||
 | 
						 * @return SsoSystemManager | 
				
			||||||
 | 
						 * @date 2021-01-16 10:22:57 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoSystemManager getById(Long id); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据-系统编码和用户ID查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 自增主键 | 
				
			||||||
 | 
						 * @param userId  自增主键 | 
				
			||||||
 | 
						 * @return SsoSystemManager | 
				
			||||||
 | 
						 * @date 2021-01-16 10:22:57 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoSystemManager getBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据-自增主键id统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 自增主键 | 
				
			||||||
 | 
						 * @param userId  自增主键 | 
				
			||||||
 | 
						 * @return SsoSystemManager | 
				
			||||||
 | 
						 * @date 2021-01-16 10:22:57 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 统计-平台管理员用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 用户 | 
				
			||||||
 | 
						 * @return 用户集合 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countSysMgmtUser(SystemMgmtPageQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 查询平台管理员用户列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 用户 | 
				
			||||||
 | 
						 * @return 用户集合 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoUserMgmtDTO> listPageSysMgmtUser(SystemMgmtPageQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystemManager | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoSystemManager ssoSystemManager); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystemManager | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoSystemManager ssoSystemManager); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 自增ID 编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystemManager | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateById(SsoSystemManager ssoSystemManager); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID与系统编码更新 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystemManager | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateBySysCodeAndUserId(SsoSystemManager ssoSystemManager); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,128 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoSystem; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 目标系统基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 10:59:43 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoSystemMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysId 系统ID | 
				
			||||||
 | 
						 * @return 目标系统实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoSystem getBySysId(@Param("sysId") Long sysId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @return 目标系统实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoSystem getBySysCode(@Param("sysCode") String sysCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码集-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCodeList 系统编码集 | 
				
			||||||
 | 
						 * @return 目标系统实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoSystem> getBySysCodeList(@Param("sysCodeList") List<String> sysCodeList); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据状态查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param statusList | 
				
			||||||
 | 
						 * @return 目标系统实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoSystem> listByStatusList(@Param("statusList") List<Integer> statusList); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID查询-管理员权限的系统 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId | 
				
			||||||
 | 
						 * @return 目标系统实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoSystem> listMySystemByAdmin(@Param("userId") Long userId, @Param("statusList") List<Integer> statusList); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID查询-拥有跳转权限的系统 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId | 
				
			||||||
 | 
						 * @return 目标系统实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoSystem> listMySystemByUserId(@Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID查询-拥有管理权限的系统平台 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId | 
				
			||||||
 | 
						 * @return 目标系统实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoSystem> listSystemMgmtByUserId(@Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystem 目标系统实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoSystem ssoSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystem 目标系统实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoSystem ssoSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 sysId 编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystem 目标系统实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateBySysId(SsoSystem ssoSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 sysId 修改秘钥属性 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystem 目标系统实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateSecretBySysId(SsoSystem ssoSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改图标 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysId    系统ID | 
				
			||||||
 | 
						 * @param sysIcon  头像地址 | 
				
			||||||
 | 
						 * @param updateBy 最后修改人 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateIconBySysId(@Param("sysId") Long sysId, @Param("sysIcon") String sysIcon, @Param("updateBy") String updateBy); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoSystem 目标系统实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateBySysIdSelective(SsoSystem ssoSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,85 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoUserDept; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户部门关系基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-02 17:20:41 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoUserDeptMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码与用户ID 查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @param userId  用户ID | 
				
			||||||
 | 
						 * @return 用户部门关系实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUserDept getDeptBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserDept 用户部门关系实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoUserDept ssoUserDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserDept 用户部门关系实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoUserDept ssoUserDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码与 用户ID 删除 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @param userId  用户ID | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码与 部门ID 删除 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @param deptId  部门ID | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteBySysCodeAndDeptId(@Param("sysCode") String sysCode, @Param("deptId") Long deptId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserDept 用户部门关系实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKey(SsoUserDept ssoUserDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserDept 用户部门关系实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKeySelective(SsoUserDept ssoUserDept); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据部门ID统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param deptId | 
				
			||||||
 | 
						 * @return 统计行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByDeptId(Long deptId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,159 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoUser; | 
				
			||||||
 | 
					import com.sso.dao.query.UserPageQuery; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.Date; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-02 17:20:41 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoUserMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 userId 查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId 用户ID | 
				
			||||||
 | 
						 * @return 用户信息 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUser getByUserId(Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户名-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userName 用户 | 
				
			||||||
 | 
						 * @return 用户 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUser getByUserName(String userName); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据手机号-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param phone 用户手机号 | 
				
			||||||
 | 
						 * @return 用户 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUser getByPhone(String phone); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据邮箱-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param email 用户邮箱 | 
				
			||||||
 | 
						 * @return 用户 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUser getByEmail(String email); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据手机号或用户名-查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param keywords 关键字 | 
				
			||||||
 | 
						 * @param limit | 
				
			||||||
 | 
						 * @return 用户 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoUser> listByPhoneOrUserNameLike(@Param("keywords") String keywords, @Param("limit") Integer limit); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 统计用户 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 用户 | 
				
			||||||
 | 
						 * @return 用户集合 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByCondition(UserPageQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 查询用户列表 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param query 用户 | 
				
			||||||
 | 
						 * @return 用户集合 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoUser> listPageByCondition(UserPageQuery query); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键id查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param id 自增主键 | 
				
			||||||
 | 
						 * @return 用户实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUser selectByPrimaryKey(Long id); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUser 用户实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoUser ssoUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUser 用户实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoUser ssoUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 用户ID 编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUser 用户实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByUserId(SsoUser ssoUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改个人信息 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUser 用户实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateProfileByUserId(SsoUser ssoUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 更新 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId        用户userId | 
				
			||||||
 | 
						 * @param loginIp       用户loginIp | 
				
			||||||
 | 
						 * @param lastLoginTime 登录时间 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateLastLogin(@Param("userId") Long userId, @Param("loginIp") String loginIp, @Param("lastLoginTime") Date lastLoginTime); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改密码 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId   用户ID | 
				
			||||||
 | 
						 * @param password 密码 | 
				
			||||||
 | 
						 * @param updateBy 最后修改人 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updatePwd(@Param("userId") Long userId, @Param("password") String password, @Param("updateBy") String updateBy); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 修改头像 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId   用户ID | 
				
			||||||
 | 
						 * @param avatar   头像地址 | 
				
			||||||
 | 
						 * @param updateBy 最后修改人 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateAvatar(@Param("userId") Long userId, @Param("avatar") String avatar, @Param("updateBy") String updateBy); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUser 用户实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByUserIdSelective(SsoUser ssoUser); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,121 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.dto.RoleCountDTO; | 
				
			||||||
 | 
					import com.sso.dao.dto.SsoUserRoleDTO; | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoUserRole; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户和角色关联基础mapper | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-08 15:41:48 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoUserRoleMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键id查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param id 自增主键 | 
				
			||||||
 | 
						 * @return 用户和角色关联实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUserRole selectByPrimaryKey(Long id); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据系统编码 与用户ID 查询角色ID | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode | 
				
			||||||
 | 
						 * @param userId | 
				
			||||||
 | 
						 * @return 角色ID集 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<Long> getRoleIdListBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码与用户ID 查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode    用户ID | 
				
			||||||
 | 
						 * @param userIdList 用户ID | 
				
			||||||
 | 
						 * @return 部门实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoUserRoleDTO> getRoleBySysCodeAndUserIdList(@Param("sysCode") String sysCode, @Param("userIdList") List<Long> userIdList); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserRole 用户和角色关联实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoUserRole ssoUserRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserRole 用户和角色关联实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoUserRole ssoUserRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 批量新增 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param list | 
				
			||||||
 | 
						 * @return | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int batchSave(List<SsoUserRole> list); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID删除 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @param userId  用户ID | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteBySysCodeAndUserId(@Param("sysCode") String sysCode, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID删除 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleId 角色ID | 
				
			||||||
 | 
						 * @param userId  用户ID | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteByRoleIdAndUserId(@Param("roleId") Long roleId, @Param("userId") Long userId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserRole 用户和角色关联实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKey(SsoUserRole ssoUserRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserRole 用户和角色关联实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByPrimaryKeySelective(SsoUserRole ssoUserRole); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 角色ID 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleId 角色ID | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countByRoleId(Long roleId); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 角色ID 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param roleIdList 角色ID集 | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<RoleCountDTO> countByRoleIdList(@Param("roleIdList") List<Long> roleIdList); | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,95 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.mapper; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.dao.entity.SsoUserSystem; | 
				
			||||||
 | 
					import org.apache.ibatis.annotations.Param; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户与目标系统关系基础mapper接口 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2021-01-10 22:22:34 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public interface SsoUserSystemMapper { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID与 系统编码查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userId  用户ID | 
				
			||||||
 | 
						 * @param sysCode 系统编码 | 
				
			||||||
 | 
						 * @return 用户与目标系统关系实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						SsoUserSystem getByUserIdAndSysCode(@Param("userId") Long userId, @Param("sysCode") String sysCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据用户ID集 与 系统编码查询 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param userIdList 用户ID集 | 
				
			||||||
 | 
						 * @param sysCode    系统编码 | 
				
			||||||
 | 
						 * @return 用户与目标系统关系实体 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						List<SsoUserSystem> listBySysCodeAndUserIdList(@Param("sysCode") String sysCode, @Param("userIdList") List<Long> userIdList); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 新增接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserSystem 用户与目标系统关系实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insert(SsoUserSystem ssoUserSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 动态参数新增接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserSystem 用户与目标系统关系实体 | 
				
			||||||
 | 
						 * @return 新增的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int insertSelective(SsoUserSystem ssoUserSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键删除接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param id 自增主键主键 | 
				
			||||||
 | 
						 * @return 删除的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int deleteByPrimaryKey(Long id); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键编辑接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserSystem 用户与目标系统关系实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateById(SsoUserSystem ssoUserSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserSystem 用户与目标系统关系实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateByIdSelective(SsoUserSystem ssoUserSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据自增主键动态参数编辑接口 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param ssoUserSystem 用户与目标系统关系实体 | 
				
			||||||
 | 
						 * @return 编辑的行数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int updateBySysCodeAndUserIdSelective(SsoUserSystem ssoUserSystem); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 根据 系统编码 统计 | 
				
			||||||
 | 
						 * | 
				
			||||||
 | 
						 * @param syCode | 
				
			||||||
 | 
						 * @return 统计数 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						int countBySysCode(@Param("sysCode") String syCode); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,89 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.query; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 登录日志分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class LoginLogQuery extends BasePageQuery { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -7137359307341275655L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String usernameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录状态 0-成功;1-失败 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录开始时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginStartTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录截止时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginEndTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getSysCode() { | 
				
			||||||
 | 
							return sysCode; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public LoginLogQuery setSysCode(String sysCode) { | 
				
			||||||
 | 
							this.sysCode = sysCode; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getUsernameLike() { | 
				
			||||||
 | 
							return usernameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public LoginLogQuery setUsernameLike(String usernameLike) { | 
				
			||||||
 | 
							this.usernameLike = usernameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getStatus() { | 
				
			||||||
 | 
							return status; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public LoginLogQuery setStatus(Integer status) { | 
				
			||||||
 | 
							this.status = status; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getLoginStartTime() { | 
				
			||||||
 | 
							return loginStartTime; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public LoginLogQuery setLoginStartTime(Long loginStartTime) { | 
				
			||||||
 | 
							this.loginStartTime = loginStartTime; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getLoginEndTime() { | 
				
			||||||
 | 
							return loginEndTime; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public LoginLogQuery setLoginEndTime(Long loginEndTime) { | 
				
			||||||
 | 
							this.loginEndTime = loginEndTime; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,117 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.query; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门查询 | 
				
			||||||
 | 
					 * mapper 层 xml 入参 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class SsoDeptQuery extends BasePageQuery { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 9032669004611549658L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 父部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long deptParentId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 需要排除的-部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long excludeDeptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String deptName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门右模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String deptNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getSysCode() { | 
				
			||||||
 | 
							return sysCode; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoDeptQuery setSysCode(String sysCode) { | 
				
			||||||
 | 
							this.sysCode = sysCode; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getDeptParentId() { | 
				
			||||||
 | 
							return deptParentId; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoDeptQuery setDeptParentId(Long deptParentId) { | 
				
			||||||
 | 
							this.deptParentId = deptParentId; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getExcludeDeptId() { | 
				
			||||||
 | 
							return excludeDeptId; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoDeptQuery setExcludeDeptId(Long excludeDeptId) { | 
				
			||||||
 | 
							this.excludeDeptId = excludeDeptId; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getDeptName() { | 
				
			||||||
 | 
							return deptName; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoDeptQuery setDeptName(String deptName) { | 
				
			||||||
 | 
							this.deptName = deptName; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getDeptNameLike() { | 
				
			||||||
 | 
							return deptNameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoDeptQuery setDeptNameLike(String deptNameLike) { | 
				
			||||||
 | 
							this.deptNameLike = deptNameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getStatus() { | 
				
			||||||
 | 
							return status; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoDeptQuery setStatus(Integer status) { | 
				
			||||||
 | 
							this.status = status; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getDelFlag() { | 
				
			||||||
 | 
							return delFlag; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoDeptQuery setDelFlag(Integer delFlag) { | 
				
			||||||
 | 
							this.delFlag = delFlag; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,117 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.query; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单查询 | 
				
			||||||
 | 
					 * mapper 层 xml 入参 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class SsoMenuQuery extends BasePageQuery { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -4210187210718040578L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 父菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long menuParentId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 需要排除的-菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long excludeMenuId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String menuName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单名称右模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String menuNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getSysCode() { | 
				
			||||||
 | 
							return sysCode; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoMenuQuery setSysCode(String sysCode) { | 
				
			||||||
 | 
							this.sysCode = sysCode; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getMenuParentId() { | 
				
			||||||
 | 
							return menuParentId; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoMenuQuery setMenuParentId(Long menuParentId) { | 
				
			||||||
 | 
							this.menuParentId = menuParentId; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getExcludeMenuId() { | 
				
			||||||
 | 
							return excludeMenuId; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoMenuQuery setExcludeMenuId(Long excludeMenuId) { | 
				
			||||||
 | 
							this.excludeMenuId = excludeMenuId; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getMenuName() { | 
				
			||||||
 | 
							return menuName; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoMenuQuery setMenuName(String menuName) { | 
				
			||||||
 | 
							this.menuName = menuName; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getMenuNameLike() { | 
				
			||||||
 | 
							return menuNameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoMenuQuery setMenuNameLike(String menuNameLike) { | 
				
			||||||
 | 
							this.menuNameLike = menuNameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getStatus() { | 
				
			||||||
 | 
							return status; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoMenuQuery setStatus(Integer status) { | 
				
			||||||
 | 
							this.status = status; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getDelFlag() { | 
				
			||||||
 | 
							return delFlag; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoMenuQuery setDelFlag(Integer delFlag) { | 
				
			||||||
 | 
							this.delFlag = delFlag; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,127 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.query; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageModel; | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色查询 | 
				
			||||||
 | 
					 * mapper 层 xml 入参 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class SsoRoleQuery extends BasePageQuery { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 4663369561352780923L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 需要排除的角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long excludeRoleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色名称 右模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色key 右模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleKeyLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery() { | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery(BasePageModel pageModel) { | 
				
			||||||
 | 
							this.setPage(pageModel.getPage()); | 
				
			||||||
 | 
							this.setPageSize(pageModel.getPageSize()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getSysCode() { | 
				
			||||||
 | 
							return sysCode; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery setSysCode(String sysCode) { | 
				
			||||||
 | 
							this.sysCode = sysCode; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getExcludeRoleId() { | 
				
			||||||
 | 
							return excludeRoleId; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery setExcludeRoleId(Long excludeRoleId) { | 
				
			||||||
 | 
							this.excludeRoleId = excludeRoleId; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getRoleName() { | 
				
			||||||
 | 
							return roleName; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery setRoleName(String roleName) { | 
				
			||||||
 | 
							this.roleName = roleName; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getRoleNameLike() { | 
				
			||||||
 | 
							return roleNameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery setRoleNameLike(String roleNameLike) { | 
				
			||||||
 | 
							this.roleNameLike = roleNameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getRoleKeyLike() { | 
				
			||||||
 | 
							return roleKeyLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery setRoleKeyLike(String roleKeyLike) { | 
				
			||||||
 | 
							this.roleKeyLike = roleKeyLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getStatus() { | 
				
			||||||
 | 
							return status; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery setStatus(Integer status) { | 
				
			||||||
 | 
							this.status = status; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getDelFlag() { | 
				
			||||||
 | 
							return delFlag; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SsoRoleQuery setDelFlag(Integer delFlag) { | 
				
			||||||
 | 
							this.delFlag = delFlag; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,129 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.query; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 系统管理员权限-分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class SystemMgmtPageQuery extends BasePageQuery { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 7588427768619166745L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String usernameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户昵称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String nickNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 真实姓名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String realNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phoneLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer userStatus; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 绑定关系状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer relationStatus; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getSysCode() { | 
				
			||||||
 | 
							return sysCode; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setSysCode(String sysCode) { | 
				
			||||||
 | 
							this.sysCode = sysCode; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getUsernameLike() { | 
				
			||||||
 | 
							return usernameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setUsernameLike(String usernameLike) { | 
				
			||||||
 | 
							this.usernameLike = usernameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getNickNameLike() { | 
				
			||||||
 | 
							return nickNameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setNickNameLike(String nickNameLike) { | 
				
			||||||
 | 
							this.nickNameLike = nickNameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getRealNameLike() { | 
				
			||||||
 | 
							return realNameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setRealNameLike(String realNameLike) { | 
				
			||||||
 | 
							this.realNameLike = realNameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getPhoneLike() { | 
				
			||||||
 | 
							return phoneLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setPhoneLike(String phoneLike) { | 
				
			||||||
 | 
							this.phoneLike = phoneLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getUserStatus() { | 
				
			||||||
 | 
							return userStatus; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setUserStatus(Integer userStatus) { | 
				
			||||||
 | 
							this.userStatus = userStatus; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getRelationStatus() { | 
				
			||||||
 | 
							return relationStatus; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setRelationStatus(Integer relationStatus) { | 
				
			||||||
 | 
							this.relationStatus = relationStatus; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getDelFlag() { | 
				
			||||||
 | 
							return delFlag; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public SystemMgmtPageQuery setDelFlag(Integer delFlag) { | 
				
			||||||
 | 
							this.delFlag = delFlag; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,87 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.query; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 在线用户分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class UserOnlineQuery extends BasePageQuery { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 6745860184771356374L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String usernameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phoneLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 效期开始时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long expireStartTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录开始时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginStartTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录截止时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long loginEndTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getUsernameLike() { | 
				
			||||||
 | 
							return usernameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserOnlineQuery setUsernameLike(String usernameLike) { | 
				
			||||||
 | 
							this.usernameLike = usernameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getPhoneLike() { | 
				
			||||||
 | 
							return phoneLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserOnlineQuery setPhoneLike(String phoneLike) { | 
				
			||||||
 | 
							this.phoneLike = phoneLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getExpireStartTime() { | 
				
			||||||
 | 
							return expireStartTime; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserOnlineQuery setExpireStartTime(Long expireStartTime) { | 
				
			||||||
 | 
							this.expireStartTime = expireStartTime; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getLoginStartTime() { | 
				
			||||||
 | 
							return loginStartTime; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserOnlineQuery setLoginStartTime(Long loginStartTime) { | 
				
			||||||
 | 
							this.loginStartTime = loginStartTime; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getLoginEndTime() { | 
				
			||||||
 | 
							return loginEndTime; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserOnlineQuery setLoginEndTime(Long loginEndTime) { | 
				
			||||||
 | 
							this.loginEndTime = loginEndTime; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,129 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.dao.query; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageQuery; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					public class UserPageQuery extends BasePageQuery { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -7892866355117742382L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String usernameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户昵称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String nickNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 真实姓名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String realNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phoneLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 所属部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 删除标志 0-正常;1-删除 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer delFlag; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getUsernameLike() { | 
				
			||||||
 | 
							return usernameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setUsernameLike(String usernameLike) { | 
				
			||||||
 | 
							this.usernameLike = usernameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getNickNameLike() { | 
				
			||||||
 | 
							return nickNameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setNickNameLike(String nickNameLike) { | 
				
			||||||
 | 
							this.nickNameLike = nickNameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getRealNameLike() { | 
				
			||||||
 | 
							return realNameLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setRealNameLike(String realNameLike) { | 
				
			||||||
 | 
							this.realNameLike = realNameLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getPhoneLike() { | 
				
			||||||
 | 
							return phoneLike; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setPhoneLike(String phoneLike) { | 
				
			||||||
 | 
							this.phoneLike = phoneLike; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getDeptId() { | 
				
			||||||
 | 
							return deptId; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setDeptId(Long deptId) { | 
				
			||||||
 | 
							this.deptId = deptId; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Long getRoleId() { | 
				
			||||||
 | 
							return roleId; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setRoleId(Long roleId) { | 
				
			||||||
 | 
							this.roleId = roleId; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getStatus() { | 
				
			||||||
 | 
							return status; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setStatus(Integer status) { | 
				
			||||||
 | 
							this.status = status; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public Integer getDelFlag() { | 
				
			||||||
 | 
							return delFlag; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public UserPageQuery setDelFlag(Integer delFlag) { | 
				
			||||||
 | 
							this.delFlag = delFlag; | 
				
			||||||
 | 
							return this; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,30 @@ | 
				
			|||||||
 | 
					/** | 
				
			||||||
 | 
					 * Copyright ( @程序员小强 ) All Rights Reserved. | 
				
			||||||
 | 
					 * 博客地址:https://blog.csdn.net/qq_38011415
 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					package com.sso.model.bo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 系统编码参数类 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @date 2020-12-27 10:59:43 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SysCodeBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -878095644963838466L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,29 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.dept; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门删除bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class DeptDeleteBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 1912530599252047615L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "部门ID不为空") | 
				
			||||||
 | 
						private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format(" deptId:%d , , operateBy:%s", this.deptId, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,24 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.dept; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门详情bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class DeptIdQueryBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private static final long serialVersionUID = -5367920763344359224L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 部门ID | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    @NotNull(message = "部门ID不为空") | 
				
			||||||
 | 
					    private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.dept; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门树查询 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class DeptMgmtTreeBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 1912530599252047615L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String deptNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 -1全部 0-启用;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,63 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.dept; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.Max; | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门添加 bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class DeptSaveBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 7434128948642870592L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "部门名称不能为空") | 
				
			||||||
 | 
						private String deptName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 父部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "父部门ID不为空") | 
				
			||||||
 | 
						private Long deptParentId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 顺序 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "顺序不为空") | 
				
			||||||
 | 
						@Max(value = 1000000000, message = "显示顺序最大长度不能超过{max}") | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-启用;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "状态不为空") | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Size(max = 200, message = "备注最大长度不超{max}") | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s , deptName:%s , operateBy:%s", this.sysCode, this.deptName, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,67 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.dept; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 部门修改BO | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class DeptUpdateBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 6373997550677086520L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "部门ID不为空") | 
				
			||||||
 | 
						private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 部门名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "部门名称不能为空") | 
				
			||||||
 | 
						private String deptName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 父部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "父部门ID不为空") | 
				
			||||||
 | 
						private Long deptParentId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 顺序 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "顺序不为空") | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-启用;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "状态不为空") | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Size(max = 200, message = "备注最大长度不超{max}") | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s , deptId:%d , deptName:%s , operateBy:%s", this.sysCode, this.deptId, this.deptName, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,45 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.getway; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 申请认证参数 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @version ApplyAuthBO.java | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class ApplyAuthBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -3755046680856409972L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 退出登录访问地址 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String loginOutUrl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单类型 | 
				
			||||||
 | 
						 * 1-列表; 2-树形列表 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String menuType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 跳转url | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String redirectUrl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录token | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String ssoToken; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 来源IP | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sourceIp; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,49 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.getway; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.Pattern; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * GetWay 请求公共参数 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 * @version GetWayReqBO.java | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class GetWayReqBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 2055965490262675225L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 请求唯一标识 | 
				
			||||||
 | 
						 * 推荐使用UUID,要求唯一性 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "请求标识不能为空") | 
				
			||||||
 | 
						private String apiRequestId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@NotBlank(message = "方法名不能为空") | 
				
			||||||
 | 
						private String method; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@NotBlank(message = "版本号不能为空") | 
				
			||||||
 | 
						private String version; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@NotBlank(message = "签名类型不能为空") | 
				
			||||||
 | 
						@Pattern(regexp = "[1-3]", message = "签名类型只能为1或2或3") | 
				
			||||||
 | 
						private String signType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@NotBlank(message = "请求时间戳不能为空") | 
				
			||||||
 | 
						@Pattern(regexp = "^16\\d{11}$", message = "时间戳格式错误") | 
				
			||||||
 | 
						private String timestamp; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private String sign; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private String content; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,42 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.login; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户登录对象 | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class LoginBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 3516676046779777417L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "用户名不为空") | 
				
			||||||
 | 
						private String username; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户密码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "用户密码不为空") | 
				
			||||||
 | 
						private String password; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 验证码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "验证码不为空") | 
				
			||||||
 | 
						private String captchaCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 请求唯一标识 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "请求唯一标识不为空") | 
				
			||||||
 | 
						private String requestId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,41 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.login; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageModel; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 登录日志分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class LoginLogListPageBO extends BasePageModel { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -3442414830796499182L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String usernameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录状态 0-成功;1-失败 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录开始时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String loginStartTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 登录截止时间 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String loginEndTime; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,30 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.menu; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单删除 bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class MenuDeleteBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -8354384638349511426L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "菜单ID不能为空") | 
				
			||||||
 | 
						private Long menuId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("menuId:%d, operateBy:%s", | 
				
			||||||
 | 
									this.menuId, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,102 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.menu; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.Digits; | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单添加 bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class MenuSaveBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -2219298721551456293L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "菜单名称不能为空") | 
				
			||||||
 | 
						private String menuName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单类型(M目录 C菜单 F按钮) | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "菜单类型不能为空") | 
				
			||||||
 | 
						private String menuType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 父菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "父菜单ID不能为空") | 
				
			||||||
 | 
						private Long menuParentId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 显示顺序 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "显示顺序不能为空") | 
				
			||||||
 | 
						@Digits(integer = 999999999, fraction = 0, message = "显示顺序最大长度不能超过{integer}") | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单路由地址 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String path; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单图标 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String icon; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 组件路径 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String component; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 权限标识,多个|分隔 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Size(max = 10, message = "权限标识最多不超过{max}") | 
				
			||||||
 | 
						private List<String> permissionList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 使用类型 0-授权访问;1-开放访问; | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer useType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 是否显示 0-显示;1-隐藏 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer visible; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单状态 0-正常;1停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Size(max = 200, message = "备注最大长度不超{max}") | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s , menuName:%s , menuParentId:%d ,permissionList:%s, operateBy:%s", this.sysCode, this.menuName, this.menuParentId, | 
				
			||||||
 | 
									this.permissionList, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,33 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.menu; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单树查询BO | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class MenuTreeBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -4094219434105471621L; | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String menuNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 -1全部 0-启用;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,30 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.menu; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 菜单修改 bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class MenuUpdateBO extends MenuSaveBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 6016756261051760463L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "菜单ID不能为空") | 
				
			||||||
 | 
						private Long menuId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("menuId:%d,sysCode:%s menuName:%s , menuParentId:%d ,permissionList:%s, operateBy:%s", | 
				
			||||||
 | 
									this.menuId, this.getSysCode(), this.getMenuName(), this.getMenuParentId(), this.getPermissionList(), this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,26 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 修改平台新增bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemDeleteBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 4340162202000538970L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统平台ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long sysId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysId:%d, operateBy:%s", this.sysId, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,54 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageModel; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户-系统关系分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemMgmtListPageBO extends BasePageModel { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -27397984110384822L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String usernameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户昵称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String nickNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 真实姓名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String realNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phoneLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer userStatus; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 绑定关系状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer relationStatus; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,35 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 系统管理权限移除BO | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemMgmtRemoveBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 7991373166717611704L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "用户ID不为空") | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s, userId:%s , operateBy:%s", this.sysCode, this.userId, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,41 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 系统管理权限-新增BO | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemMgmtSaveBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -3496085022363517714L; | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "用户ID不为空") | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "状态不为空") | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("userId:%d, sysCode:%s , operateBy:%s", this.userId, this.sysCode, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
						 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,33 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 系统管理权限-新增BO | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemMgmtStatusBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -5187844120648189372L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "ID不为空") | 
				
			||||||
 | 
						private Long id; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "状态不为空") | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysId:%d, status:%s , operateBy:%s", this.id, this.status, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,62 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 目标平台新增bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemSaveBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 1163633182173991403L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统名称不为空") | 
				
			||||||
 | 
						private String sysName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统链接 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统跳转链接不为空") | 
				
			||||||
 | 
						private String sysUrl; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统图标 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String sysIcon; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统环境 0-测试 1-beta 2-生产 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "系统环境不为空") | 
				
			||||||
 | 
						private Integer sysEnv; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 排序,数字越小排在越前面 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "排序不为空") | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s , sysName:%s , operateBy:%s", this.sysCode, this.sysName, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,26 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 目标平台排序bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemSortBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 2105261198839002918L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码集合 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "系统编码集不为空") | 
				
			||||||
 | 
						@Size(min = 1, message = "系统编码集不为空") | 
				
			||||||
 | 
						private List<String> sysCodeList; | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,33 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 修改平台新增bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemUpdateBO extends SystemSaveBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 1163633182173991403L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统平台ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "系统平台ID不为空") | 
				
			||||||
 | 
						private Long sysId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "状态不为空") | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysId:%d, sysCode:%s , sysName:%s , operateBy:%s", this.sysId, this.getSysCode(), this.getSysName(), this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,40 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.platform; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 修改平台新增bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class SystemUpdateSecretBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -7361402011394142030L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统平台ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "系统平台ID不为空") | 
				
			||||||
 | 
						private Long sysId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 签名类型  0-无;1-MD5;2-RSA; | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "签名类型不为空") | 
				
			||||||
 | 
						private Integer signType; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 网关验签公钥 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String publicKey; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysId:%d, signType:%s , operateBy:%s", this.sysId, this.signType, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,28 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.role; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色删除bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class RoleDeleteBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -4350853964122690858L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "角色ID不为空") | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("roleId:%d , operateBy:%s", this.roleId, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,30 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.role; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageModel; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色-下拉选项查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class RoleListOptionBO extends BasePageModel { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 8961034980910026149L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色名称右模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,40 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.role; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageModel; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class RoleListPageBO extends BasePageModel { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -8206942361131504869L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色名称 右模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色key 右模糊 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleKeyLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,34 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.role; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色删除bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class RoleRemoveUserBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -4350853964122690858L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "角色ID不为空") | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "用户ID不为空") | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("roleId:%d , userId:%d, operateBy:%s", this.roleId, this.userId, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,64 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.role; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色添加 bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class RoleSaveBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -2662983486894971210L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "状态不为空") | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 显示顺序 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "显示顺序不为空") | 
				
			||||||
 | 
						private Integer sortNum; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色名称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "角色名称不能为空") | 
				
			||||||
 | 
						private String roleName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色key | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String roleKey; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Size(max = 200, message = "备注最大长度不超{max}") | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 菜单ID集 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private List<Long> menuIdList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s , roleName:%s , roleKey:%s ,operateBy:%s", this.sysCode, this.roleName, this.roleKey, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,28 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.role; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 角色修改 bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class RoleUpdateBO extends RoleSaveBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -7337969581151948190L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "角色ID") | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s , roleId:%d , roleName:%s , roleKey:%s ,operateBy:%s", this.getSysCode(), roleId, this.getRoleName(), this.getRoleKey(), this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,90 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.user; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户新增bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class UserAddBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = -8559961404756899677L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "用户登录名不为空") | 
				
			||||||
 | 
						private String username; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 密码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "用户登录密码不为空") | 
				
			||||||
 | 
						@Size(max = 20, message = "密码最大长度{max}") | 
				
			||||||
 | 
						private String password; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户昵称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String nickName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 真实姓名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String realName; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 所属部门 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID集 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private List<Long> roleIdList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户性别 0-男;1-女;2-未知 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer sex; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phone; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 邮箱 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String email; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 备注 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String remarks; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public String getLogValue() { | 
				
			||||||
 | 
							return String.format("sysCode:%s , username:%s , realName:%s , phone:%s, deptId:%d , roleIdList:%s , operateBy:%s", | 
				
			||||||
 | 
									this.sysCode, this.username, this.realName, this.phone, this.deptId, this.roleIdList, this.getOperateBy()); | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,32 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.user; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户删除bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class UserBatchDeleteBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 6811621712453725799L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@Size(min = 1, message = "用户ID不为空") | 
				
			||||||
 | 
						private List<Long> userIdList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,32 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.user; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.BaseOperateBO; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.Size; | 
				
			||||||
 | 
					import java.util.List; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户删除bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class UserDeleteBO extends BaseOperateBO { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    private static final long serialVersionUID = -6260789437671185007L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 系统编码 | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    @NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
					    private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * 用户ID | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    @Size(min = 1, message = "用户ID不为空") | 
				
			||||||
 | 
					    private List<Long> userIdList; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,31 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.user; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					import javax.validation.constraints.NotNull; | 
				
			||||||
 | 
					import java.io.Serializable; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户查询详情bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class UserDetailBO implements Serializable { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 8048715426913745373L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotNull(message = "用户ID不为空") | 
				
			||||||
 | 
						private Long userId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,60 @@ | 
				
			|||||||
 | 
					package com.sso.model.bo.user; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.sso.common.model.page.BasePageModel; | 
				
			||||||
 | 
					import lombok.Data; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.validation.constraints.NotBlank; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * 用户分页查询bo | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @author 程序员小强 | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					@Data | 
				
			||||||
 | 
					public class UserListPageBO extends BasePageModel { | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static final long serialVersionUID = 4627460201144477292L; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 系统编码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						@NotBlank(message = "系统编码不能为空") | 
				
			||||||
 | 
						private String sysCode; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户登录名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String usernameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 用户昵称 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String nickNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 真实姓名 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String realNameLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 手机号码 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private String phoneLike; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 所属部门ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long deptId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 角色ID | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Long roleId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** | 
				
			||||||
 | 
						 * 状态 0-正常;1-停用 | 
				
			||||||
 | 
						 */ | 
				
			||||||
 | 
						private Integer status; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show More
					Loading…
					
					
				
		Reference in new issue