feat: 修改请求Token;添加文档

This commit is contained in:
bunny 2025-04-30 17:49:01 +08:00
parent c7e4b32674
commit 4fd45a1c8d
160 changed files with 579 additions and 384 deletions

View File

@ -38,8 +38,6 @@
## ✨ v4.0.0 重大更新
新分支` sysn_6.0.0`与上游【Pure Admin】合并
### 核心改进
- **全面重构**后端接口、实体类等重构前端重构部分j+优化操作体验
@ -94,6 +92,21 @@ http.authorizeHttpRequests(auth -> auth
);
```
### Maven工程结构
```mermaid
graph TD
父工程 -->|主项目| auth-api
父工程 -->|代码生成器| generator-code
auth-api -->|启动项、控制器| service
service -->|mapper| dao
service -->|包含domain、配置等| auth-core
dao -->|包含domain、配置等| auth-code
```
## 🛠️ 应用场景
### 1. 纯前端控制模式
@ -216,7 +229,10 @@ docker compose up -d
- [ ] 用户设置持久化存储到数据库
- [ ] 权限弹窗页面优化
- [ ] 后端文档注释完善
- [ ] 系统监控后端返回403停止请求
- [x] 系统监控后端返回403停止请求
- [ ] 优化用户配置权限逻辑,配置后热更新逻辑等
- [ ] 完善后端注释有需要添加ReadMe文档
- [ ] Redis中获取活跃用户
## 前后端接口规范

View File

@ -3,7 +3,7 @@ package cn.bunny.services.aop;
import cn.bunny.services.domain.common.constant.LocalDateTimeConstant;
import cn.bunny.services.domain.common.enums.JobEnums;
import cn.bunny.services.domain.system.log.entity.ScheduleExecuteLog;
import cn.bunny.services.domain.common.model.quartz.ScheduleExecuteLogJson;
import cn.bunny.services.domain.common.model.dto.quartz.ScheduleExecuteLogJson;
import cn.bunny.services.mapper.log.ScheduleExecuteLogMapper;
import com.alibaba.fastjson2.JSON;
import jakarta.annotation.Resource;

View File

@ -2,8 +2,8 @@ package cn.bunny.services.controller.configuration;
import cn.bunny.services.domain.system.configuration.dto.WebConfigurationDto;
import cn.bunny.services.domain.system.configuration.entity.WebConfiguration;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.configuration.ConfigurationService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -5,9 +5,9 @@ import cn.bunny.services.domain.system.email.dto.EmailTemplateDto;
import cn.bunny.services.domain.system.email.dto.EmailTemplateUpdateDto;
import cn.bunny.services.domain.system.email.entity.EmailTemplate;
import cn.bunny.services.domain.system.email.vo.EmailTemplateVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.configuration.EmailTemplateService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,9 +5,9 @@ import cn.bunny.services.domain.system.email.dto.EmailUsersDto;
import cn.bunny.services.domain.system.email.dto.EmailUsersUpdateDto;
import cn.bunny.services.domain.system.email.entity.EmailUsers;
import cn.bunny.services.domain.system.email.vo.EmailUsersVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.configuration.EmailUsersService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -6,9 +6,9 @@ import cn.bunny.services.domain.system.i18n.dto.I18nUpdateByFileDto;
import cn.bunny.services.domain.system.i18n.dto.I18nUpdateDto;
import cn.bunny.services.domain.system.i18n.entity.I18n;
import cn.bunny.services.domain.system.i18n.vo.I18nVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.configuration.I18nService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -4,8 +4,8 @@ import cn.bunny.services.domain.system.i18n.dto.I18nTypeAddDto;
import cn.bunny.services.domain.system.i18n.dto.I18nTypeDto;
import cn.bunny.services.domain.system.i18n.dto.I18nTypeUpdateDto;
import cn.bunny.services.domain.system.i18n.vo.I18nTypeVo;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.configuration.I18nTypeService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -5,9 +5,9 @@ import cn.bunny.services.domain.system.menuIcon.dto.MenuIconDto;
import cn.bunny.services.domain.system.menuIcon.dto.MenuIconUpdateDto;
import cn.bunny.services.domain.system.menuIcon.entity.MenuIcon;
import cn.bunny.services.domain.system.menuIcon.vo.MenuIconVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.configuration.MenuIconService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -3,9 +3,9 @@ package cn.bunny.services.controller.log;
import cn.bunny.services.domain.system.log.dto.ScheduleExecuteLogDto;
import cn.bunny.services.domain.system.log.entity.ScheduleExecuteLog;
import cn.bunny.services.domain.system.log.vo.ScheduleExecuteLogVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.log.ScheduleExecuteLogService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -4,9 +4,9 @@ import cn.bunny.services.domain.system.log.dto.UserLoginLogDto;
import cn.bunny.services.domain.system.log.entity.UserLoginLog;
import cn.bunny.services.domain.system.log.vo.UserLoginLogLocalVo;
import cn.bunny.services.domain.system.log.vo.UserLoginLogVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.log.UserLoginLogService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -7,9 +7,9 @@ import cn.bunny.services.domain.system.message.entity.Message;
import cn.bunny.services.domain.system.message.vo.MessageDetailVo;
import cn.bunny.services.domain.system.message.vo.MessageReceivedWithUserVo;
import cn.bunny.services.domain.system.message.vo.MessageVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.message.MessageService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -6,9 +6,9 @@ import cn.bunny.services.domain.system.message.dto.MessageUserDto;
import cn.bunny.services.domain.system.message.entity.Message;
import cn.bunny.services.domain.system.message.vo.MessageReceivedWithMessageVo;
import cn.bunny.services.domain.system.message.vo.MessageUserVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.message.MessageReceivedService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,9 +5,9 @@ import cn.bunny.services.domain.system.message.dto.MessageTypeDto;
import cn.bunny.services.domain.system.message.dto.MessageTypeUpdateDto;
import cn.bunny.services.domain.system.message.entity.MessageType;
import cn.bunny.services.domain.system.message.vo.MessageTypeVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.message.MessageTypeService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -1,9 +1,9 @@
package cn.bunny.services.controller.schedule;
import cn.bunny.services.aop.scanner.QuartzSchedulersScanner;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.system.quartz.dto.SchedulersAddDto;
import cn.bunny.services.domain.system.quartz.dto.SchedulersDto;
import cn.bunny.services.domain.system.quartz.dto.SchedulersUpdateDto;

View File

@ -5,9 +5,9 @@ import cn.bunny.services.domain.system.quartz.dto.SchedulersGroupDto;
import cn.bunny.services.domain.system.quartz.dto.SchedulersGroupUpdateDto;
import cn.bunny.services.domain.system.quartz.entity.SchedulersGroup;
import cn.bunny.services.domain.system.quartz.vo.SchedulersGroupVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.schedule.SchedulersGroupService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,9 +5,9 @@ import cn.bunny.services.domain.system.system.dto.dept.DeptDto;
import cn.bunny.services.domain.system.system.dto.dept.DeptUpdateDto;
import cn.bunny.services.domain.system.system.entity.Dept;
import cn.bunny.services.domain.system.system.vo.DeptVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.system.DeptService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -8,9 +8,9 @@ import cn.bunny.services.domain.system.files.dto.FilesUpdateDto;
import cn.bunny.services.domain.system.files.entity.Files;
import cn.bunny.services.domain.system.files.vo.FileInfoVo;
import cn.bunny.services.domain.system.files.vo.FilesVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.system.FilesService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -1,9 +1,9 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.aop.scanner.ControllerApiPermissionScanner;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.scanner.ScannerControllerInfoVo;
import cn.bunny.services.domain.system.system.dto.power.PermissionAddDto;
import cn.bunny.services.domain.system.system.dto.power.PermissionDto;

View File

@ -5,9 +5,9 @@ import cn.bunny.services.domain.system.system.dto.role.RoleDto;
import cn.bunny.services.domain.system.system.dto.role.RoleUpdateDto;
import cn.bunny.services.domain.system.system.entity.Role;
import cn.bunny.services.domain.system.system.vo.RoleVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.system.RoleService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -1,7 +1,7 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.domain.system.system.dto.AssignPowersToRoleDto;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.service.system.RolePermissionService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -4,8 +4,8 @@ import cn.bunny.services.domain.system.system.dto.router.RouterAddDto;
import cn.bunny.services.domain.system.system.dto.router.RouterUpdateDto;
import cn.bunny.services.domain.system.system.vo.router.RouterManageVo;
import cn.bunny.services.domain.system.system.vo.router.WebUserRouterVo;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.service.system.RouterService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.service.system.RouterRoleService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -1,10 +1,10 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.context.BaseContext;
import cn.bunny.services.domain.common.vo.LoginVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.LoginVo;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.system.system.dto.user.*;
import cn.bunny.services.domain.system.system.entity.AdminUser;
import cn.bunny.services.domain.system.system.vo.user.AdminUserVo;

View File

@ -1,7 +1,7 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.domain.system.system.dto.user.AssignRolesToUsersDto;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.service.system.UserRoleService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -4,6 +4,8 @@ server:
spring:
profiles:
active: @profiles.active@
# main:
# lazy-initialization: true
application:
name: bunny-service
servlet:
@ -76,6 +78,7 @@ spring:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
mybatis-plus:
mapper-locations: classpath:mapper/**/*.xml
global-config:

View File

@ -2,7 +2,7 @@ package cn.bunny.services.controller.configuration;
import cn.bunny.services.domain.system.configuration.dto.WebConfigurationDto;
import cn.bunny.services.domain.system.configuration.entity.WebConfiguration;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.utils.TokenUtilsTest;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.TypeReference;

View File

@ -4,8 +4,8 @@ import cn.bunny.services.domain.system.email.dto.EmailTemplateAddDto;
import cn.bunny.services.domain.system.email.dto.EmailTemplateUpdateDto;
import cn.bunny.services.domain.system.email.vo.EmailTemplateVo;
import cn.bunny.services.domain.common.enums.EmailTemplateEnums;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.utils.TokenUtilsTest;
import cn.hutool.crypto.digest.MD5;
import com.alibaba.fastjson2.JSON;

View File

@ -4,8 +4,8 @@ import cn.bunny.services.domain.system.log.dto.UserLoginLogDto;
import cn.bunny.services.domain.system.log.entity.UserLoginLog;
import cn.bunny.services.domain.system.log.vo.UserLoginLogLocalVo;
import cn.bunny.services.domain.system.log.vo.UserLoginLogVo;
import cn.bunny.services.domain.common.vo.result.PageResult;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.service.log.UserLoginLogService;
import cn.bunny.services.utils.TokenUtilsTest;
import com.alibaba.fastjson2.JSON;

View File

@ -1,7 +1,7 @@
package cn.bunny.services.utils;
import cn.bunny.services.domain.system.system.entity.AdminUser;
import cn.bunny.services.domain.common.vo.LoginVo;
import cn.bunny.services.domain.common.model.vo.LoginVo;
import cn.bunny.services.mapper.system.UserMapper;
import cn.bunny.services.utils.system.UserUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;

View File

@ -1,6 +1,6 @@
package impl;
import cn.bunny.services.domain.common.excel.I18nExcel;
import cn.bunny.services.domain.common.model.dto.excel.I18nExcel;
import cn.bunny.services.domain.system.i18n.entity.I18n;
import cn.bunny.services.mapper.configuration.I18nMapper;
import cn.bunny.services.utils.i8n.I18nUtil;

View File

@ -1,7 +1,7 @@
package cn.bunny.services.config.mail;
import cn.bunny.services.domain.common.model.email.EmailSend;
import cn.bunny.services.domain.common.model.email.EmailSendInit;
import cn.bunny.services.domain.common.model.dto.email.EmailSend;
import cn.bunny.services.domain.common.model.dto.email.EmailSendInit;
import jakarta.mail.MessagingException;
import jakarta.mail.internet.MimeMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;

View File

@ -1,8 +1,8 @@
package cn.bunny.services.config.minio;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.constant.MinioConstant;
import cn.bunny.services.domain.common.model.file.MinioFilePath;
import cn.bunny.services.domain.common.model.dto.file.MinioFilePath;
import cn.bunny.services.exception.AuthCustomerException;
import io.minio.*;
import io.minio.messages.DeleteError;

View File

@ -1,7 +1,7 @@
package cn.bunny.services.context;
import cn.bunny.services.domain.common.vo.LoginVo;
import cn.bunny.services.domain.common.model.vo.LoginVo;
public class BaseContext {
private static final ThreadLocal<Long> userId = new ThreadLocal<>();

View File

@ -14,8 +14,6 @@ public class RedisUserConstant {
private static final String ADMIN_LOGIN_INFO_PREFIX = "admin::login_info::";
private static final String ADMIN_EMAIL_CODE_PREFIX = "admin::email_code::";
private static final String USER_LOGIN_INFO_PREFIX = "user::login_info::";
private static final String USER_EMAIL_CODE_PREFIX = "user::email_code::";
public static String getAdminLoginInfoPrefix(String adminUser) {
return ADMIN_LOGIN_INFO_PREFIX + adminUser;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.model.email;
package cn.bunny.services.domain.common.model.dto.email;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.model.email;
package cn.bunny.services.domain.common.model.dto.email;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.excel;
package cn.bunny.services.domain.common.model.dto.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.excel;
package cn.bunny.services.domain.common.model.dto.excel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.excel;
package cn.bunny.services.domain.common.model.dto.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.model.file;
package cn.bunny.services.domain.common.model.dto.file;
import lombok.AllArgsConstructor;
import lombok.Builder;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.ip;
package cn.bunny.services.domain.common.model.dto.ip;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.model.quartz;
package cn.bunny.services.domain.common.model.dto.quartz;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;

View File

@ -0,0 +1,29 @@
package cn.bunny.services.domain.common.model.dto.security;
import cn.bunny.services.domain.common.model.vo.LoginVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Schema(name = "TokenInfo", title = "TokenInfo")
public class TokenInfo {
@Schema(name = "token", title = "令牌")
private String token;
@Schema(name = "username", title = "用户名")
private String username;
@Schema(name = "userId", title = "用户id")
private Long userId;
@Schema(name = "loginVo", title = "登录成功返回内容")
private LoginVo loginVo;
}

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.entity;
package cn.bunny.services.domain.common.model.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.entity;
package cn.bunny.services.domain.common.model.entity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.vo;
package cn.bunny.services.domain.common.model.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.vo;
package cn.bunny.services.domain.common.model.vo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.vo;
package cn.bunny.services.domain.common.model.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.vo.result;
package cn.bunny.services.domain.common.model.vo.result;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.vo.result;
package cn.bunny.services.domain.common.model.vo.result;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.common.vo.result;
package cn.bunny.services.domain.common.model.vo.result;
import lombok.Getter;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.email.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.email.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.email.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.email.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.files.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.EqualsAndHashCode;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.files.vo;
import cn.bunny.services.domain.common.vo.BaseVo;
import cn.bunny.services.domain.common.model.vo.BaseVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.files.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.i18n.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.i18n.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.i18n.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.i18n.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.log.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.log.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.log.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.log.vo;
import cn.bunny.services.domain.common.vo.BaseVo;
import cn.bunny.services.domain.common.model.vo.BaseVo;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.log.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.menuIcon.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.menuIcon.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.vo;
import cn.bunny.services.domain.common.vo.BaseVo;
import cn.bunny.services.domain.common.model.vo.BaseVo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.message.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.quartz.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.quartz.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.entity.router;
import cn.bunny.services.domain.common.entity.BaseEntity;
import cn.bunny.services.domain.common.model.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.views;
import cn.bunny.services.domain.common.entity.BaseUserEntity;
import cn.bunny.services.domain.common.model.entity.BaseUserEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.vo;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.vo.router;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.vo.router;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.vo.user;
import cn.bunny.services.domain.common.vo.BaseUserVo;
import cn.bunny.services.domain.common.model.vo.BaseUserVo;
import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.domain.system.system.vo.user;
import cn.bunny.services.domain.common.vo.BaseVo;
import cn.bunny.services.domain.common.model.vo.BaseVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.exception;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.ToString;

View File

@ -1,8 +1,8 @@
package cn.bunny.services.exception;
import cn.bunny.services.domain.common.vo.result.Result;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.context.BaseContext;
import lombok.extern.slf4j.Slf4j;
import org.mybatis.spring.MyBatisSystemException;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.utils;
import cn.bunny.services.domain.common.ip.IpEntity;
import cn.bunny.services.domain.common.model.dto.ip.IpEntity;
import jakarta.annotation.PostConstruct;
import jakarta.servlet.http.HttpServletRequest;
import lombok.extern.slf4j.Slf4j;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.utils;
import cn.bunny.services.domain.common.vo.result.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.ResultCodeEnum;
import cn.bunny.services.exception.AuthCustomerException;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jws;
@ -16,7 +16,7 @@ import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
public class JwtHelper {
public class JwtTokenUtil {
// JWT 秘钥
// static SecretKey key = new SecretKeySpec("Bunny-Java-Template".getBytes(), "AES");
private static final SecretKey key = Keys.hmacShaKeyFor("Bunny-Auth-Server-Private-SecretKey".getBytes(StandardCharsets.UTF_8));

Some files were not shown because too many files have changed in this diff Show More