Browse Source

提交代码

master
刘力 3 years ago
parent
commit
ef55486be1
  1. 87
      common/pom.xml
  2. 19
      common/src/main/java/com/canvas/web/service/IUplpadService.java
  3. 30
      common/src/main/java/com/canvas/web/service/impl/UploadServiceImpl.java
  4. 305
      common/src/main/java/com/canvas/web/utils/UploadUtils.java
  5. 52
      generator/pom.xml
  6. 18
      pom.xml
  7. 35
      quartz/pom.xml
  8. 43
      queue/pom.xml
  9. 1
      system/pom.xml
  10. 2
      system/src/main/java/com/canvas/web/AppRun.java
  11. 6
      system/src/main/java/com/canvas/web/modules/config/ConfigBeanConfiguration.java
  12. 13
      system/src/main/java/com/canvas/web/modules/config/SpringSecurityConfig.java
  13. 2
      system/src/main/java/com/canvas/web/modules/config/bean/LoginCode.java
  14. 2
      system/src/main/java/com/canvas/web/modules/config/bean/LoginCodeEnum.java
  15. 3
      system/src/main/java/com/canvas/web/modules/config/bean/LoginProperties.java
  16. 3
      system/src/main/java/com/canvas/web/modules/config/bean/SecurityProperties.java
  17. 14
      system/src/main/java/com/canvas/web/modules/controller/AuthorizationController.java
  18. 15
      system/src/main/java/com/canvas/web/modules/controller/OnlineController.java
  19. 2
      system/src/main/java/com/canvas/web/modules/security/JwtAccessDeniedHandler.java
  20. 2
      system/src/main/java/com/canvas/web/modules/security/JwtAuthenticationEntryPoint.java
  21. 3
      system/src/main/java/com/canvas/web/modules/security/SecurityProperties.java
  22. 6
      system/src/main/java/com/canvas/web/modules/security/TokenConfigurer.java
  23. 2
      system/src/main/java/com/canvas/web/modules/security/TokenProvider.java
  24. 9
      system/src/main/java/com/canvas/web/modules/service/OnlineUserService.java
  25. 2
      system/src/main/java/com/canvas/web/modules/service/UserCacheClean.java
  26. 14
      system/src/main/java/com/canvas/web/modules/service/UserDetailsServiceImpl.java
  27. 2
      system/src/main/java/com/canvas/web/modules/service/dto/AuthUserDto.java
  28. 4
      system/src/main/java/com/canvas/web/modules/service/dto/JwtUserDto.java
  29. 2
      system/src/main/java/com/canvas/web/modules/service/dto/OnlineUserDto.java
  30. 4
      system/src/main/java/com/canvas/web/modules/system/service/DataService.java
  31. 4
      system/src/main/java/com/canvas/web/modules/system/service/RoleService.java
  32. 6
      system/src/main/java/com/canvas/web/modules/system/service/UserService.java
  33. 2
      system/src/main/java/com/canvas/web/modules/system/service/dto/MenuDto.java
  34. 2
      system/src/main/java/com/canvas/web/modules/system/service/dto/RoleDto.java
  35. 2
      system/src/main/java/com/canvas/web/modules/system/service/dto/RoleSmallDto.java
  36. 2
      system/src/main/java/com/canvas/web/modules/system/service/dto/UserDto.java
  37. 2
      system/src/main/java/com/canvas/web/modules/system/service/dto/UserQueryCriteria.java
  38. 16
      system/src/main/resources/banner.txt
  39. 2
      system/src/main/resources/config/application-dev.yml
  40. 3
      system/src/main/resources/config/application.yml

87
common/pom.xml

@ -16,94 +16,7 @@
<hutool.version>5.3.4</hutool.version> <hutool.version>5.3.4</hutool.version>
</properties> </properties>
<!-- 依赖声明 -->
<dependencies> <dependencies>
<!-- Redis 起始依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis-reactive</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>20030203.000550</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!-- Excel依赖 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.0.5</version>
</dependency>
<!-- 文件上传 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.4</version>
</dependency>
<!-- 阿里短信SDK -->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>4.5.30</version>
</dependency>
<!-- 邮件发送起始依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<!-- thymeleaf 模板引擎依赖(如:模板邮件) -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!-- 极光推送 -->
<dependency>
<groupId>cn.jpush.api</groupId>
<artifactId>jpush-client</artifactId>
<version>3.5.5</version>
</dependency>
<!-- 文件压缩、解压缩 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>1.21</version>
</dependency>
<!-- 二维码生成依赖 -->
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>core</artifactId>
<version>3.4.1</version>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>javase</artifactId>
<version>3.4.1</version>
</dependency>
<!-- MySql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--工具包--> <!--工具包-->
<dependency> <dependency>
<groupId>cn.hutool</groupId> <groupId>cn.hutool</groupId>

19
common/src/main/java/com/canvas/web/service/IUplpadService.java

@ -1,19 +0,0 @@
package com.canvas.web.service;
import com.canvas.web.utils.JsonResult;
import javax.servlet.http.HttpServletRequest;
public interface IUplpadService {
/**
* 上传图片
*
* @param request 网络请求
* @param name 目录名
* @return
*/
JsonResult uploadImage(HttpServletRequest request, String name);
}

30
common/src/main/java/com/canvas/web/service/impl/UploadServiceImpl.java

@ -1,30 +0,0 @@
package com.canvas.web.service.impl;
import com.canvas.web.service.IUplpadService;
import com.canvas.web.utils.CommonUtils;
import com.canvas.web.utils.JsonResult;
import com.canvas.web.utils.UploadUtils;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
public class UploadServiceImpl implements IUplpadService {
/**
* 上传图片
*
* @param request 网络请求
* @param name 目录名
* @return
*/
@Override
public JsonResult uploadImage(HttpServletRequest request, String name) {
UploadUtils uploadUtils = new UploadUtils();
Map<String, Object> result = uploadUtils.uploadFile(request, name);
List<String> imageList = (List<String>) result.get("image");
String imageUrl = CommonUtils.getImageURL(imageList.get(0));
return JsonResult.success("上传成功", imageUrl);
}
}

305
common/src/main/java/com/canvas/web/utils/UploadUtils.java

@ -1,305 +0,0 @@
package com.canvas.web.utils;
import com.canvas.web.config.UploadFileConfig;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.*;
public class UploadUtils {
// 表单字段常量
public static final String FORM_FIELDS = "form_fields";
// 文件域常量
public static final String FILE_FIELDS = "file";
// 定义允许上传的文件扩展名
private Map<String, String> extMap = new HashMap<String, String>();
// 文件保存目录路径
private String uploadPath = UploadFileConfig.uploadFolder;
// 文件的目录名
private String dirName = "images";
// 上传临时路径
private static final String TEMP_PATH = "temp";
// 临时存相对路径
private String tempPath = uploadPath + TEMP_PATH;
// 单个文件最大上传大小(10M)
private long fileMaxSize = 1024 * 1024 * 10;
// 最大文件大小(100M)
private long maxSize = 1024 * 1024 * 100;
// 文件保存目录url
private String saveUrl;
// 文件最终的url包括文件名
private List<String> fileUrl = new ArrayList<>();
/**
* 构造函数
*/
public UploadUtils() {
// 其中images,flashs,medias,files,对应文件夹名称,对应dirName
// key文件夹名称
// value该文件夹内可以上传文件的后缀名
extMap.put("images", "gif,jpg,jpeg,png,bmp");
extMap.put("flashs", "swf,flv");
extMap.put("medias", "swf,flv,mp3,wav,wma,wmv,mid,avi,mpg,asf,rm,rmvb");
extMap.put("files", "doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2");
}
/**
* 文件上传
*
* @param request
* @return
*/
@SuppressWarnings("unchecked")
public Map<String, Object> uploadFile(HttpServletRequest request, String name) {
// 验证文件并返回错误信息
String error = this.validateFields(request, name);
// 初始化表单元素
Map<String, Object> fieldsMap = new HashMap<String, Object>();
if (error.equals("")) {
fieldsMap = this.initFields(request);
}
List<FileItem> fiList = (List<FileItem>) fieldsMap.get(UploadUtils.FILE_FIELDS);
if (fiList != null) {
for (FileItem item : fiList) {
// 上传文件并返回错误信息
error = this.saveFile(item);
}
}
// 返回结果
Map<String, Object> result = new HashMap<>();
result.put("error", error);
result.put("image", this.fileUrl);
return result;
}
/**
* 上传验证并初始化目录
*
* @param request
* @return
*/
private String validateFields(HttpServletRequest request, String name) {
String errorInfo = "";
// 获取内容类型
String contentType = request.getContentType();
int contentLength = request.getContentLength();
// 初始化上传路径不存在则创建
File uploadDir = new File(uploadPath);
// 目录不存在则创建
if (!uploadDir.exists()) {
uploadDir.mkdirs();
}
if (contentType == null || !contentType.startsWith("multipart")) {
// TODO
System.out.println("请求不包含multipart/form-data流");
errorInfo = "请求不包含multipart/form-data流";
} else if (maxSize < contentLength) {
// TODO
System.out.println("上传文件大小超出文件最大大小");
errorInfo = "上传文件大小超出文件最大大小[" + maxSize + "]";
} else if (!ServletFileUpload.isMultipartContent(request)) {
// TODO
errorInfo = "请选择文件";
} else if (!uploadDir.isDirectory()) {
// TODO
errorInfo = "上传目录[" + uploadPath + "]不存在";
} else if (!uploadDir.canWrite()) {
// TODO
errorInfo = "上传目录[" + uploadPath + "]没有写权限";
} else if (!extMap.containsKey(dirName)) {
// TODO
errorInfo = "目录名不正确";
} else {
// 上传路径
uploadPath += dirName + "/" + name + "/";
// 保存目录Url
saveUrl = dirName + "/" + name + "/";
// 创建一级目录
File saveDirFile = new File(uploadPath);
if (!saveDirFile.exists()) {
saveDirFile.mkdirs();
}
// 创建二级目录(格式年月日)
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String ymd = sdf.format(new Date());
uploadPath += ymd + "/";
saveUrl += ymd + "/";
File dirFile = new File(uploadPath);
if (!dirFile.exists()) {
dirFile.mkdirs();
}
// 创建上传临时目录
File file = new File(tempPath);
if (!file.exists()) {
file.mkdirs();
}
}
return errorInfo;
}
/**
* 处理上传内容
*
* @return
*/
// @SuppressWarnings("unchecked")
private Map<String, Object> initFields(HttpServletRequest request) {
// 存储表单字段和非表单字段
Map<String, Object> map = new HashMap<String, Object>();
// 第一步判断request
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
// 第二步解析request
if (isMultipart) {
// 设置环境:创建一个DiskFileItemFactory工厂
DiskFileItemFactory factory = new DiskFileItemFactory();
// 阀值,超过这个值才会写到临时目录,否则在内存中
factory.setSizeThreshold(1024 * 1024 * 10);
// 设置上传文件的临时目录
factory.setRepository(new File(tempPath));
// 核心操作类:创建一个文件上传解析器
ServletFileUpload upload = new ServletFileUpload(factory);
// 设置文件名称编码(解决上传"文件名"的中文乱码)
upload.setHeaderEncoding("UTF-8");
// 限制单个文件上传大小
upload.setFileSizeMax(fileMaxSize);
// 限制总上传文件大小
upload.setSizeMax(maxSize);
// 使用ServletFileUpload解析器解析上传数据解析结果返回的是一个List<FileItem>集合每一个FileItem对应一个Form表单的输入项
List<FileItem> items = null;
try {
items = upload.parseRequest(request);
} catch (FileUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 第3步处理uploaded items
if (items != null && items.size() > 0) {
Iterator<FileItem> iter = items.iterator();
// 文件域对象
List<FileItem> list = new ArrayList<FileItem>();
// 表单字段
Map<String, String> fields = new HashMap<String, String>();
while (iter.hasNext()) {
FileItem item = iter.next();
// 处理所有表单元素和文件域表单元素
if (item.isFormField()) {
// 如果fileitem中封装的是普通输入项的数据输出名
String name = item.getFieldName();// 普通输入项数据的名
String value = item.getString();
fields.put(name, value);
} else {
//如果fileitem中封装的是上传文件得到上传的文件名称
// 文件域表单元素
list.add(item);
}
}
map.put(FORM_FIELDS, fields);
map.put(FILE_FIELDS, list);
}
}
return map;
}
/**
* 保存文件
*
* @param item
* @return
*/
private String saveFile(FileItem item) {
String error = "";
String fileName = item.getName();
String fileExt = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();
if (item.getSize() > maxSize) { // 检查文件大小
// TODO
error = "上传文件大小超过限制";
} else if (!Arrays.<String>asList(extMap.get(dirName).split(",")).contains(fileExt)) {// 检查扩展名
error = "上传文件扩展名是不允许的扩展名。\n只允许" + extMap.get(dirName) + "格式。";
} else {
// 存储文件重命名
SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");
String newFileName = df.format(new Date()) + new Random().nextInt(1000) + "." + fileExt;
// 新增值文件数组
String filePath = saveUrl + newFileName;
fileUrl.add(filePath);
// 写入文件
try {
File uploadedFile = new File(uploadPath, newFileName);
item.write(uploadedFile);
} catch (IOException e) {
e.printStackTrace();
System.out.println("上传失败了!!!");
} catch (Exception e) {
e.printStackTrace();
}
}
return error;
}
/**
* *********************get/set方法*********************************
*/
public String getSaveUrl() {
return saveUrl;
}
public String getUploadPath() {
return uploadPath;
}
public long getMaxSize() {
return maxSize;
}
public void setMaxSize(long maxSize) {
this.maxSize = maxSize;
}
public Map<String, String> getExtMap() {
return extMap;
}
public void setExtMap(Map<String, String> extMap) {
this.extMap = extMap;
}
public String getDirName() {
return dirName;
}
public void setDirName(String dirName) {
this.dirName = dirName;
}
public String getTempPath() {
return tempPath;
}
public void setTempPath(String tempPath) {
this.tempPath = tempPath;
}
public List getFileUrl() {
return fileUrl;
}
public void setFileUrl(List fileUrl) {
this.fileUrl = fileUrl;
}
}

52
generator/pom.xml

@ -1,52 +0,0 @@
<?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>
<artifactId>yxk_canvasScreen</artifactId>
<groupId>com.canvas.web</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>generator</artifactId>
<name>代码生成</name>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<!-- 依赖声明 -->
<dependencies>
<!-- 基础依赖 -->
<dependency>
<groupId>com.canvas.web</groupId>
<artifactId>common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<!-- MySql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--mybatis-plus 代码自动生成 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.2.0</version>
</dependency>
<!-- freemarker模板引擎依赖 -->
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
</project>

18
pom.xml

@ -10,11 +10,8 @@
<packaging>pom</packaging> <packaging>pom</packaging>
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
<modules> <modules>
<module>common</module>
<module>generator</module>
<module>quartz</module>
<module>queue</module>
<module>system</module> <module>system</module>
<module>common</module>
</modules> </modules>
<name>多媒体后台管理系统</name> <name>多媒体后台管理系统</name>
@ -235,17 +232,6 @@
</dependency> </dependency>
</dependencies> </dependencies>
<build>
<plugins>
<!-- 打包时跳过测试 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</project> </project>

35
quartz/pom.xml

@ -1,35 +0,0 @@
<?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>
<artifactId>yxk_canvasScreen</artifactId>
<groupId>com.canvas.web</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>quartz</artifactId>
<name>定时任务</name>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<!-- 依赖声明 -->
<dependencies>
<!-- 基础依赖 -->
<dependency>
<groupId>com.canvas.web</groupId>
<artifactId>common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
</project>

43
queue/pom.xml

@ -1,43 +0,0 @@
<?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>
<artifactId>yxk_canvasScreen</artifactId>
<groupId>com.canvas.web</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>queue</artifactId>
<name>消息队列</name>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<!-- 依赖声明 -->
<dependencies>
<!-- 基础依赖 -->
<dependency>
<groupId>com.canvas.web</groupId>
<artifactId>common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-activemq</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
</project>

1
system/pom.xml

@ -19,6 +19,7 @@
</properties> </properties>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>com.canvas.web</groupId> <groupId>com.canvas.web</groupId>
<artifactId>common</artifactId> <artifactId>common</artifactId>

2
system/src/main/java/AppRun.java → system/src/main/java/com/canvas/web/AppRun.java

@ -1,3 +1,5 @@
package com.canvas.web;
import com.canvas.web.annotation.rest.AnonymousGetMapping; import com.canvas.web.annotation.rest.AnonymousGetMapping;
import com.canvas.web.utils.SpringContextHolder; import com.canvas.web.utils.SpringContextHolder;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;

6
system/src/main/java/modules/security/config/ConfigBeanConfiguration.java → system/src/main/java/com/canvas/web/modules/config/ConfigBeanConfiguration.java

@ -1,8 +1,8 @@
package modules.security.config;
package com.canvas.web.modules.config;
import modules.security.config.bean.LoginProperties;
import modules.security.config.bean.SecurityProperties;
import com.canvas.web.modules.config.bean.SecurityProperties;
import com.canvas.web.modules.config.bean.LoginProperties;
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;

13
system/src/main/java/modules/security/config/SpringSecurityConfig.java → system/src/main/java/com/canvas/web/modules/config/SpringSecurityConfig.java

@ -1,11 +1,12 @@
package modules.security.config;
package com.canvas.web.modules.config;
import com.canvas.web.modules.security.JwtAccessDeniedHandler;
import com.canvas.web.modules.security.JwtAuthenticationEntryPoint;
import com.canvas.web.modules.security.SecurityProperties;
import com.canvas.web.modules.security.TokenProvider;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import modules.security.security.JwtAccessDeniedHandler;
import modules.security.security.JwtAuthenticationEntryPoint;
import modules.security.security.SecurityProperties;
import modules.security.security.TokenProvider;
import modules.security.service.UserCacheClean;
import com.canvas.web.modules.service.UserCacheClean;
import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;

2
system/src/main/java/modules/security/config/bean/LoginCode.java → system/src/main/java/com/canvas/web/modules/config/bean/LoginCode.java

@ -1,4 +1,4 @@
package modules.security.config.bean;
package com.canvas.web.modules.config.bean;
import lombok.Data; import lombok.Data;

2
system/src/main/java/modules/security/config/bean/LoginCodeEnum.java → system/src/main/java/com/canvas/web/modules/config/bean/LoginCodeEnum.java

@ -1,4 +1,4 @@
package modules.security.config.bean;
package com.canvas.web.modules.config.bean;
//验证码配置枚举 //验证码配置枚举
public enum LoginCodeEnum { public enum LoginCodeEnum {

3
system/src/main/java/modules/security/config/bean/LoginProperties.java → system/src/main/java/com/canvas/web/modules/config/bean/LoginProperties.java

@ -1,7 +1,6 @@
package modules.security.config.bean;
package com.canvas.web.modules.config.bean;
import com.canvas.web.exception.BaseException; import com.canvas.web.exception.BaseException;
import com.canvas.web.exception.user.UserException;
import com.canvas.web.utils.StringUtils; import com.canvas.web.utils.StringUtils;
import com.wf.captcha.*; import com.wf.captcha.*;
import com.wf.captcha.base.Captcha; import com.wf.captcha.base.Captcha;

3
system/src/main/java/modules/security/security/SecurityProperties.java → system/src/main/java/com/canvas/web/modules/config/bean/SecurityProperties.java

@ -1,10 +1,11 @@
package modules.security.security;
package com.canvas.web.modules.config.bean;
import lombok.Data; import lombok.Data;
@Data @Data
public class SecurityProperties { public class SecurityProperties {
/** /**
* Request Headers:Authorization * Request Headers:Authorization
*/ */

14
system/src/main/java/modules/security/controller/AuthorizationController.java → system/src/main/java/com/canvas/web/modules/controller/AuthorizationController.java

@ -1,9 +1,12 @@
package modules.security.controller;
package com.canvas.web.modules.controller;
import com.canvas.web.annotation.rest.AnonymousPostMapping; import com.canvas.web.annotation.rest.AnonymousPostMapping;
import com.canvas.web.config.RsaProperties; import com.canvas.web.config.RsaProperties;
import com.canvas.web.exception.BaseException; import com.canvas.web.exception.BaseException;
import com.canvas.web.modules.security.TokenProvider;
import com.canvas.web.modules.service.OnlineUserService;
import com.canvas.web.modules.service.dto.AuthUserDto;
import com.canvas.web.utils.RedisUtils; import com.canvas.web.utils.RedisUtils;
import com.canvas.web.utils.RsaUtils; import com.canvas.web.utils.RsaUtils;
import com.canvas.web.utils.StringUtils; import com.canvas.web.utils.StringUtils;
@ -11,12 +14,9 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import modules.security.config.bean.LoginProperties;
import modules.security.config.bean.SecurityProperties;
import modules.security.security.TokenProvider;
import modules.security.service.OnlineUserService;
import modules.security.service.dto.AuthUserDto;
import modules.security.service.dto.JwtUserDto;
import com.canvas.web.modules.config.bean.LoginProperties;
import com.canvas.web.modules.config.bean.SecurityProperties;
import com.canvas.web.modules.service.dto.JwtUserDto;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;

15
system/src/main/java/com/canvas/web/modules/controller/OnlineController.java

@ -0,0 +1,15 @@
package com.canvas.web.modules.controller;
import com.canvas.web.modules.service.OnlineUserService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequiredArgsConstructor
@RequestMapping("/auth/online")
public class OnlineController {
private final OnlineUserService onlineUserService;
}

2
system/src/main/java/modules/security/security/JwtAccessDeniedHandler.java → system/src/main/java/com/canvas/web/modules/security/JwtAccessDeniedHandler.java

@ -1,4 +1,4 @@
package modules.security.security;
package com.canvas.web.modules.security;
import org.springframework.security.access.AccessDeniedException; import org.springframework.security.access.AccessDeniedException;
import org.springframework.security.web.access.AccessDeniedHandler; import org.springframework.security.web.access.AccessDeniedHandler;

2
system/src/main/java/modules/security/security/JwtAuthenticationEntryPoint.java → system/src/main/java/com/canvas/web/modules/security/JwtAuthenticationEntryPoint.java

@ -1,4 +1,4 @@
package modules.security.security;
package com.canvas.web.modules.security;
import org.springframework.security.core.AuthenticationException; import org.springframework.security.core.AuthenticationException;

3
system/src/main/java/modules/security/config/bean/SecurityProperties.java → system/src/main/java/com/canvas/web/modules/security/SecurityProperties.java

@ -1,11 +1,10 @@
package modules.security.config.bean;
package com.canvas.web.modules.security;
import lombok.Data; import lombok.Data;
@Data @Data
public class SecurityProperties { public class SecurityProperties {
/** /**
* Request Headers:Authorization * Request Headers:Authorization
*/ */

6
system/src/main/java/modules/security/security/TokenConfigurer.java → system/src/main/java/com/canvas/web/modules/security/TokenConfigurer.java

@ -1,8 +1,8 @@
package modules.security.security;
package com.canvas.web.modules.security;
import com.canvas.web.modules.service.OnlineUserService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import modules.security.service.OnlineUserService;
import modules.security.service.UserCacheClean;
import com.canvas.web.modules.service.UserCacheClean;
import org.springframework.security.config.annotation.SecurityConfigurerAdapter; import org.springframework.security.config.annotation.SecurityConfigurerAdapter;
import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.web.DefaultSecurityFilterChain; import org.springframework.security.web.DefaultSecurityFilterChain;

2
system/src/main/java/modules/security/security/TokenProvider.java → system/src/main/java/com/canvas/web/modules/security/TokenProvider.java

@ -1,4 +1,4 @@
package modules.security.security;
package com.canvas.web.modules.security;
import cn.hutool.core.date.DateField; import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;

9
system/src/main/java/modules/security/service/OnlineUserService.java → system/src/main/java/com/canvas/web/modules/service/OnlineUserService.java

@ -1,15 +1,14 @@
package modules.security.service;
package com.canvas.web.modules.service;
import com.canvas.web.utils.RedisUtils; import com.canvas.web.utils.RedisUtils;
import com.canvas.web.utils.StringUtils; import com.canvas.web.utils.StringUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import modules.security.config.bean.SecurityProperties;
import modules.security.service.dto.JwtUserDto;
import modules.security.service.dto.OnlineUserDto;
import com.canvas.web.modules.config.bean.SecurityProperties;
import com.canvas.web.modules.service.dto.JwtUserDto;
import com.canvas.web.modules.service.dto.OnlineUserDto;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.Date;
@Service @Service

2
system/src/main/java/modules/security/service/UserCacheClean.java → system/src/main/java/com/canvas/web/modules/service/UserCacheClean.java

@ -1,4 +1,4 @@
package modules.security.service;
package com.canvas.web.modules.service;

14
system/src/main/java/modules/security/service/UserDetailsServiceImpl.java → system/src/main/java/com/canvas/web/modules/service/UserDetailsServiceImpl.java

@ -1,14 +1,14 @@
package modules.security.service;
package com.canvas.web.modules.service;
import com.canvas.web.exception.BaseException; import com.canvas.web.exception.BaseException;
import com.canvas.web.modules.service.dto.JwtUserDto;
import com.canvas.web.modules.system.service.UserService;
import com.canvas.web.modules.system.service.dto.UserDto;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import modules.security.config.bean.LoginProperties;
import modules.security.service.dto.JwtUserDto;
import modules.system.service.DataService;
import modules.system.service.RoleService;
import modules.system.service.UserService;
import com.canvas.web.modules.config.bean.LoginProperties;
import com.canvas.web.modules.system.service.DataService;
import com.canvas.web.modules.system.service.RoleService;
import modules.system.service.dto.UserDto;
import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

2
system/src/main/java/modules/security/service/dto/AuthUserDto.java → system/src/main/java/com/canvas/web/modules/service/dto/AuthUserDto.java

@ -1,4 +1,4 @@
package modules.security.service.dto;
package com.canvas.web.modules.service.dto;
import lombok.Getter; import lombok.Getter;

4
system/src/main/java/modules/security/service/dto/JwtUserDto.java → system/src/main/java/com/canvas/web/modules/service/dto/JwtUserDto.java

@ -1,10 +1,10 @@
package modules.security.service.dto;
package com.canvas.web.modules.service.dto;
import com.canvas.web.modules.system.service.dto.UserDto;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Getter; import lombok.Getter;
import modules.system.service.dto.UserDto;
import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetails;

2
system/src/main/java/modules/security/service/dto/OnlineUserDto.java → system/src/main/java/com/canvas/web/modules/service/dto/OnlineUserDto.java

@ -1,4 +1,4 @@
package modules.security.service.dto;
package com.canvas.web.modules.service.dto;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

4
system/src/main/java/modules/system/service/DataService.java → system/src/main/java/com/canvas/web/modules/system/service/DataService.java

@ -1,6 +1,6 @@
package modules.system.service;
package com.canvas.web.modules.system.service;
import modules.system.service.dto.UserDto;
import com.canvas.web.modules.system.service.dto.UserDto;
import java.util.List; import java.util.List;

4
system/src/main/java/modules/system/service/RoleService.java → system/src/main/java/com/canvas/web/modules/system/service/RoleService.java

@ -1,6 +1,6 @@
package modules.system.service;
package com.canvas.web.modules.system.service;
import modules.system.service.dto.UserDto;
import com.canvas.web.modules.system.service.dto.UserDto;
import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.GrantedAuthority;
import java.util.List; import java.util.List;

6
system/src/main/java/modules/system/service/UserService.java → system/src/main/java/com/canvas/web/modules/system/service/UserService.java

@ -1,7 +1,7 @@
package modules.system.service;
package com.canvas.web.modules.system.service;
import modules.system.service.dto.UserDto;
import modules.system.service.dto.UserQueryCriteria;
import com.canvas.web.modules.system.service.dto.UserDto;
import com.canvas.web.modules.system.service.dto.UserQueryCriteria;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;

2
system/src/main/java/modules/system/service/dto/MenuDto.java → system/src/main/java/com/canvas/web/modules/system/service/dto/MenuDto.java

@ -1,4 +1,4 @@
package modules.system.service.dto;
package com.canvas.web.modules.system.service.dto;
import com.canvas.web.base.BaseDTO; import com.canvas.web.base.BaseDTO;
import lombok.Getter; import lombok.Getter;

2
system/src/main/java/modules/system/service/dto/RoleDto.java → system/src/main/java/com/canvas/web/modules/system/service/dto/RoleDto.java

@ -1,4 +1,4 @@
package modules.system.service.dto;
package com.canvas.web.modules.system.service.dto;
import com.canvas.web.base.BaseDTO; import com.canvas.web.base.BaseDTO;
import lombok.Getter; import lombok.Getter;

2
system/src/main/java/modules/system/service/dto/RoleSmallDto.java → system/src/main/java/com/canvas/web/modules/system/service/dto/RoleSmallDto.java

@ -1,4 +1,4 @@
package modules.system.service.dto;
package com.canvas.web.modules.system.service.dto;
import lombok.Data; import lombok.Data;

2
system/src/main/java/modules/system/service/dto/UserDto.java → system/src/main/java/com/canvas/web/modules/system/service/dto/UserDto.java

@ -1,4 +1,4 @@
package modules.system.service.dto;
package com.canvas.web.modules.system.service.dto;
import com.canvas.web.base.BaseDTO; import com.canvas.web.base.BaseDTO;

2
system/src/main/java/modules/system/service/dto/UserQueryCriteria.java → system/src/main/java/com/canvas/web/modules/system/service/dto/UserQueryCriteria.java

@ -1,4 +1,4 @@
package modules.system.service.dto;
package com.canvas.web.modules.system.service.dto;
import com.canvas.web.annotation.Query; import com.canvas.web.annotation.Query;
import lombok.Data; import lombok.Data;

16
system/src/main/resources/banner.txt

@ -0,0 +1,16 @@
$$$$$$$\ $$$$$$\ $$$$$$$\ $$\ $$\ $$$$$$\ $$$$$$$\ $$$$$$$\ $$\ $$\ $$$$$$\ $$$$$$\ $$$$$$\ $$$$$$$\
$$ _____|\____$$\ $$ __$$\\$$\ $$ |\____$$\ $$ _____|$$$$$$\ $$ _____|\$$\ $$ |$$ __$$\ $$ __$$\ $$ __$$\ $$ __$$\
$$ / $$$$$$$ |$$ | $$ |\$$\$$ / $$$$$$$ |\$$$$$$\ \______|\$$$$$$\ \$$\$$ / $$ | \__|$$$$$$$$ |$$$$$$$$ |$$ | $$ |
$$ | $$ __$$ |$$ | $$ | \$$$ / $$ __$$ | \____$$\ \____$$\ \$$$ / $$ | $$ ____|$$ ____|$$ | $$ |
\$$$$$$$\\$$$$$$$ |$$ | $$ | \$ / \$$$$$$$ |$$$$$$$ | $$$$$$$ | \$ / $$ | \$$$$$$$\ \$$$$$$$\ $$ | $$ |
\_______|\_______|\__| \__| \_/ \_______|\_______/ \_______/ \_/ \__| \_______| \_______|\__| \__|
:: Spring Boot :: (v2.6.1.RELEASE)

2
system/src/main/resources/config/application-dev.yml

@ -3,7 +3,7 @@ spring:
druid: druid:
db-type: com.alibaba.druid.pool.DruidDataSource db-type: com.alibaba.druid.pool.DruidDataSource
driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy
url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.99.207}:${DB_PORT:3306}/${DB_NAME:yxkadmin}?serverTimezone=Asia/Shanghai&characterEncoding=utf-8&useSSL=false
url: jdbc:log4jdbc:mysql://${DB_HOST:192.168.99.207}:${DB_PORT:3306}/${DB_NAME:yxk_canvasscreen}?serverTimezone=Asia/Shanghai&characterEncoding=utf-8&useSSL=false
username: ${DB_USER:root} username: ${DB_USER:root}
password: ${DB_PWD:ftzn83560792} password: ${DB_PWD:ftzn83560792}
# 初始连接数 # 初始连接数

3
system/src/main/resources/config/application.yml

@ -20,9 +20,6 @@ spring:
properties: properties:
hibernate: hibernate:
ddl-auto: none ddl-auto: none
#dialect: org.hibernate.dialect.MySQL5InnoDBDialect
# naming:
# physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
open-in-view: true open-in-view: true

Loading…
Cancel
Save