🏷️ feat: 用戶相关实体类验证分组

This commit is contained in:
bunny 2025-05-22 13:59:35 +08:00
parent 7a735da331
commit 020672307e
37 changed files with 96 additions and 615 deletions

View File

@ -1,256 +0,0 @@
# Gitlab安装
完全笔记《安装GitLabel》 https://www.yuque.com/bunny-6ixda/bgxtva/wtw4x4r8kbvxwgac?singleDoc#
## Docker安装
- docker镜像
- https://hub.docker.com/r/gitlab/gitlab-ee/tags?name=17.9.6
- https://hub.docker.com/r/gitlab/gitlab-runner/tags?name=17.11.0
```bash
sudo apt-get remove docker docker-engine docker.io containerd runc
sudo apt update
sudo apt upgrade
sudo apt-get install ca-certificates curl gnupg lsb-release
# 添加Docker官方GPG密钥
sudo curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# 安装docker
sudo apt-get install docker-ce docker-ce-cli containerd.io
# 默认情况下只有root用户和docker组的用户才能运行Docker命令。我们可以将当前用户添加到docker组以避免每次使用Docker时都需要使用sudo设置完成后退出当前用户之后再进入既可
sudo usermod -aG docker $USER
# 运行docker
sudo systemctl start docker
# 安装工具
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# 重启docker
sudo service docker restart
# 重启终端生效
exit
```
配置镜像源
```bash
# 创建目录
sudo mkdir -p /etc/docker
# 写入配置文件
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker-0.unsee.tech",
"https://docker-cf.registry.cyou",
"https://docker.1panel.live"
]
}
EOF
# 重启docker服务
sudo systemctl daemon-reload && sudo systemctl restart docker
```
## 环境搭建
### 安装JDK21
```bash
# 安装JDK21
wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.deb
sudo dpkg -i jdk-21_linux-x64_bin.deb
java --version
```
### Maven 3.8.8安装
#### 安装
```bash
# 安装maven
wget https://archive.apache.org/dist/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz
sudo mkdir -p /opt/maven
sudo tar -xzf apache-maven-3.8.8-bin.tar.gz -C /opt/maven
sudo mv /opt/maven/apache-maven-3.8.8 /opt/maven/maven-3.8.8
# 修改镜像配置
cd /opt/maven/maven-3.8.8/conf
# 赋予权限修改
sudo chmod 666 settings.xml
# 编写配置
sudo vim /etc/profile
# 添加以下内容
# export PATH=$PATH:/opt/maven/maven-3.8.8/bin
# 刷新配置
source /etc/profile
mvn -V
```
#### maven的镜像
```xml
<mirror>
<id>aliyun</id>
<name>Aliyun Maven Mirror</name>
<url>https://maven.aliyun.com/repository/public</url>
<mirrorOf>central</mirrorOf>
</mirror>
```
## 安装Gitlab
```bash
# Ubuntu
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/focal/main/g/gitlab-ce/gitlab-ce_18.0.0-ce.0_amd64.deb
# dpkg
sudo dpkg -i gitlab-ce_18.0.0-ce.0_amd64.deb
```
### 编辑配置
```bash
# 编辑站点
sudo vim /etc/gitlab/gitlab.rb
```
修改下面内容
```bash
external_url 'http://192.168.95.134:3001'
```
应用配置
```bash
# 应用配置
sudo gitlab-ctl reconfigure
```
### 常用命令
```bash
# 服务控制
sudo gitlab-ctl start
sudo gitlab-ctl status
sudo gitlab-ctl stop
# 应用配置
sudo gitlab-ctl reconfigure
# 重启
sudo gitlab-ctl restart
```
### 查看密码
```bash
# 24 小时后自动删除
sudo cat /etc/gitlab/initial_root_password
```
## 安装Gitlab-Runner
```bash
# 需要 gitlab-runner-helper-images
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner-helper-images/gitlab-runner-helper-images_18.0.1-1_all.deb
sudo dpkg -i gitlab-runner-helper-images_18.0.1-1_all.deb
# 之后安装 gitlab-runner
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner/gitlab-runner_18.0.1-1_amd64.deb
sudo dpkg -i gitlab-runner_18.0.1-1_amd64.deb
```
### 先下载后安装
```bash
# Ubuntu
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner-helper-images/gitlab-runner-helper-images_18.0.1-1_all.deb
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner/gitlab-runner_18.0.1-1_amd64.deb
# dpkg
sudo dpkg -i gitlab-runner-helper-images_18.0.1-1_all.deb
sudo dpkg -i gitlab-runner_18.0.1-1_amd64.deb
```
### 配置Gitlab-Runner用户
> [!NOTE]
>
> 如果有需要清理缓存:`sudo rm -rf /opt/maven/maven-3.8.8/conf/builds/**`**
>
> gitlab-cehttps://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/focal/main/g/gitlab-ce/
>
> gitlab-runner-helper-imageshttps://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner-helper-images/
>
> gitlab-runnerhttps://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner/
```bash
sudo gitlab-runner uninstall
sudo gitlab-runner install --working-directory /home/gitlab-runner --user root
sudo systemctl restart gitlab-runner
```
### 检查 GitLab Runner 配置
```bash
sudo vim /etc/gitlab-runner/config.toml
```
修改文件
```bash
[[runners]]
name = "my-runner"
executor = "shell"
shell = "bash"
user = "gitlab-runner" # 确保用户有权限
working_directory = "/home/gitlab-runner"
```
### 检查 Maven 安装目录权限
```bash
sudo chmod 777 -R /opt/maven/maven-3.8.8
sudo chmod 777 -R /opt/maven/maven-3.8.8/
sudo chown -R gitlab-runner:gitlab-runner /opt/maven/maven-3.8.8/
```
## CI/CD脚本示例
如果构建出现`pending`情况大部分情况下,是文件写错了,要么是`Gitlab-Runner`标签没写对
```yml
stages:
- build
- build-docker
- deploy
variables:
CONTAINER_NAME: "bunny-auth-server"
DOCKER_TAG: "4.0.0"
build-job:
stage: build
script:
- echo "Compiling the code..."
- mvn clean package -DskipTests
- echo "Compile complete."
- docker pull openjdk:24-ea-17-jdk-oraclelinux9
- echo "docker pull complete."
- docker build -f Dockerfile -t $CONTAINER_NAME:$DOCKER_TAG .
- echo "Application successfully deployed."
deploy-job:
stage: deploy
environment: production
script:
- echo "Deploying application..."
- docker stop $CONTAINER_NAME || true
- docker rm $CONTAINER_NAME || true
- docker run -d -p 7070:7070 -p 8000:8000 --name $CONTAINER_NAME --restart always $CONTAINER_NAME:$DOCKER_TAG
- echo "Application successfully deployed."
```

View File

@ -1,12 +1,11 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.aop.annotation.PermissionTag;
import cn.bunny.services.domain.common.ValidationGroups;
import cn.bunny.services.domain.common.enums.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.system.dto.dept.DeptAddDto;
import cn.bunny.services.domain.system.dto.dept.DeptDto;
import cn.bunny.services.domain.system.dto.dept.DeptUpdateDto;
import cn.bunny.services.domain.system.dto.DeptDto;
import cn.bunny.services.domain.system.entity.Dept;
import cn.bunny.services.domain.system.vo.DeptVo;
import cn.bunny.services.service.system.DeptService;
@ -15,7 +14,7 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@ -54,15 +53,15 @@ public class DeptController {
@Operation(summary = "添加部门", description = "添加部门")
@PermissionTag(permission = "dept:add")
@PostMapping()
public Result<String> addDept(@Valid @RequestBody DeptAddDto dto) {
deptService.addDept(dto);
public Result<String> createDept(@Validated(ValidationGroups.Add.class) @RequestBody DeptDto dto) {
deptService.createDept(dto);
return Result.success(ResultCodeEnum.CREATE_SUCCESS);
}
@Operation(summary = "更新部门", description = "更新部门")
@PermissionTag(permission = "dept:update")
@PutMapping()
public Result<String> updateDept(@Valid @RequestBody DeptUpdateDto dto) {
public Result<String> updateDept(@Validated(ValidationGroups.Update.class) @RequestBody DeptDto dto) {
deptService.updateDept(dto);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS);
}

View File

@ -2,14 +2,13 @@ package cn.bunny.services.controller.system;
import cn.bunny.services.aop.annotation.PermissionTag;
import cn.bunny.services.aop.scanner.ControllerApiPermissionScanner;
import cn.bunny.services.domain.common.ValidationGroups;
import cn.bunny.services.domain.common.enums.ResultCodeEnum;
import cn.bunny.services.domain.common.model.dto.scanner.ScannerControllerInfoVo;
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.system.dto.power.PermissionAddDto;
import cn.bunny.services.domain.system.dto.power.PermissionDto;
import cn.bunny.services.domain.system.dto.power.PermissionUpdateBatchByParentIdDto;
import cn.bunny.services.domain.system.dto.power.PermissionUpdateDto;
import cn.bunny.services.domain.system.dto.PermissionDto;
import cn.bunny.services.domain.system.dto.PermissionUpdateBatchByParentIdDto;
import cn.bunny.services.domain.system.entity.Permission;
import cn.bunny.services.domain.system.vo.PermissionVo;
import cn.bunny.services.service.system.PermissionService;
@ -20,6 +19,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -59,15 +59,15 @@ public class PermissionController {
@Operation(summary = "添加权限", description = "添加权限")
@PermissionTag(permission = "permission::add")
@PostMapping()
public Result<String> addPermission(@Valid @RequestBody PermissionAddDto dto) {
permissionService.addPermission(dto);
public Result<String> createPermission(@Validated(ValidationGroups.Add.class) @RequestBody PermissionDto dto) {
permissionService.createPermission(dto);
return Result.success(ResultCodeEnum.CREATE_SUCCESS);
}
@Operation(summary = "更新权限", description = "更新权限")
@PermissionTag(permission = "permission::update")
@PutMapping()
public Result<String> updatePermission(@Valid @RequestBody PermissionUpdateDto dto) {
public Result<String> updatePermission(@Validated(ValidationGroups.Update.class) @RequestBody PermissionDto dto) {
permissionService.updatePermission(dto);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS);
}
@ -120,7 +120,7 @@ public class PermissionController {
@Operation(summary = "批量修改权", description = "批量修改权")
@PermissionTag(permission = "permission::update")
@PatchMapping("update/permissions/batch")
public Result<String> updatePermissionBatch(@RequestBody List<PermissionUpdateDto> list) {
public Result<String> updatePermissionBatch(@RequestBody List<PermissionDto> list) {
permissionService.updatePermissionBatch(list);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS);
}

View File

@ -1,12 +1,11 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.aop.annotation.PermissionTag;
import cn.bunny.services.domain.common.ValidationGroups;
import cn.bunny.services.domain.common.enums.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.system.dto.role.RoleAddDto;
import cn.bunny.services.domain.system.dto.role.RoleDto;
import cn.bunny.services.domain.system.dto.role.RoleUpdateDto;
import cn.bunny.services.domain.system.dto.RoleDto;
import cn.bunny.services.domain.system.entity.Role;
import cn.bunny.services.domain.system.vo.RoleVo;
import cn.bunny.services.service.system.RoleService;
@ -15,8 +14,8 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -56,7 +55,7 @@ public class RoleController {
@Operation(summary = "添加角色", description = "添加角色")
@PermissionTag(permission = "role:add")
@PostMapping()
public Result<Object> addRole(@Valid @RequestBody RoleAddDto dto) {
public Result<Object> addRole(@Validated(ValidationGroups.Add.class) @RequestBody RoleDto dto) {
roleService.addRole(dto);
return Result.success(ResultCodeEnum.CREATE_SUCCESS);
}
@ -64,7 +63,7 @@ public class RoleController {
@Operation(summary = "更新角色", description = "更新角色")
@PermissionTag(permission = "role:update")
@PutMapping()
public Result<Object> updateRole(@Valid @RequestBody RoleUpdateDto dto) {
public Result<Object> updateRole(@Validated(ValidationGroups.Update.class) @RequestBody RoleDto dto) {
roleService.updateRole(dto);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS);
}

View File

@ -1,17 +1,17 @@
package cn.bunny.services.controller.system;
import cn.bunny.services.aop.annotation.PermissionTag;
import cn.bunny.services.domain.common.ValidationGroups;
import cn.bunny.services.domain.common.enums.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.Result;
import cn.bunny.services.domain.system.dto.router.RouterAddDto;
import cn.bunny.services.domain.system.dto.router.RouterUpdateDto;
import cn.bunny.services.domain.system.dto.RouterDto;
import cn.bunny.services.domain.system.vo.router.RouterManageVo;
import cn.bunny.services.domain.system.vo.router.WebUserRouterVo;
import cn.bunny.services.service.system.RouterService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@ -52,15 +52,15 @@ public class RouterController {
@Operation(summary = "添加路由菜单", description = "添加路由菜单")
@PermissionTag(permission = "router:add")
@PostMapping()
public Result<String> addRouter(@Valid @RequestBody RouterAddDto dto) {
routerService.addRouter(dto);
public Result<String> createRouter(@Validated({ValidationGroups.Add.class}) @RequestBody RouterDto dto) {
routerService.createRouter(dto);
return Result.success(ResultCodeEnum.CREATE_SUCCESS);
}
@Operation(summary = "更新路由菜单", description = "更新路由菜单")
@PermissionTag(permission = "router:update")
@PutMapping()
public Result<String> updateRouter(@Valid @RequestBody RouterUpdateDto dto) {
public Result<String> updateRouter(@Validated({ValidationGroups.Update.class}) @RequestBody RouterDto dto) {
routerService.updateRouter(dto);
return Result.success(ResultCodeEnum.UPDATE_SUCCESS);
}

View File

@ -49,8 +49,8 @@ public class UserController {
@Operation(summary = "添加用户", description = "添加用户信息")
@PermissionTag(permission = "user:add")
@PostMapping()
public Result<Object> addUserByAdmin(@Valid @RequestBody AdminUserAddDto dto) {
userService.addUserByAdmin(dto);
public Result<Object> createUserByAdmin(@Valid @RequestBody AdminUserAddDto dto) {
userService.createUserByAdmin(dto);
return Result.success(ResultCodeEnum.CREATE_SUCCESS);
}

View File

@ -5,14 +5,12 @@ import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "I18nTypeDto对象", title = "多语言类型", description = "多语言类型")
public class I18nTypeDto {

View File

@ -5,7 +5,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -15,7 +14,6 @@ import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "MessageDto对象", title = "消息分页查询", description = "消息分页查询")
public class MessageDto {

View File

@ -1,5 +1,6 @@
package cn.bunny.services.domain.system.dto.dept;
package cn.bunny.services.domain.system.dto;
import cn.bunny.services.domain.common.ValidationGroups;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
@ -15,24 +16,22 @@ import java.util.List;
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "DeptUpdateDto对象", title = "更新部门", description = "更新部门")
public class DeptUpdateDto {
@Schema(name = "DeptDto对象", title = "部门分页查询", description = "部门分页查询")
public class DeptDto {
@Schema(name = "id", title = "主键")
@NotNull(message = "id不能为空")
@NotNull(message = "id不能为空", groups = {ValidationGroups.Update.class})
private Long id;
@Schema(name = "parentId", title = "父级id")
private Long parentId;
@Schema(name = "managerId", title = "管理者")
@NotNull(message = "管理者不能为空")
@NotEmpty(message = "管理者不能为空")
@NotEmpty(message = "管理者不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private List<String> manager;
@Schema(name = "deptName", title = "部门名称")
@NotBlank(message = "部门名称不能为空")
@NotNull(message = "部门名称不能为空")
@NotBlank(message = "部门名称不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private String deptName;
@Schema(name = "summary", title = "部门简介")

View File

@ -1,5 +1,6 @@
package cn.bunny.services.domain.system.dto.power;
package cn.bunny.services.domain.system.dto;
import cn.bunny.services.domain.common.ValidationGroups;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
@ -12,24 +13,22 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "PowerUpdateDto对象", title = "更新权限", description = "权限管理")
public class PermissionUpdateDto {
@Schema(name = "PowerDto对象", title = "权限分页查询", description = "权限管理")
public class PermissionDto {
@Schema(name = "id", title = "主键")
@NotNull(message = "id不能为空")
@NotNull(message = "id不能为空", groups = {ValidationGroups.Update.class})
private Long id;
@Schema(name = "parentId", title = "父级id")
private Long parentId;
@Schema(name = "parentId", title = "权限编码")
@NotBlank(message = "权限编码 不能为空")
@NotNull(message = "权限编码 不能为空")
@NotBlank(message = "权限编码 不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private String powerCode;
@Schema(name = "powerName", title = "权限名称")
@NotBlank(message = "权限名称 不能为空")
@NotNull(message = "权限名称 不能为空")
@NotBlank(message = "权限名称 不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private String powerName;
@Schema(name = "requestUrl", title = "请求路径")
@ -39,3 +38,4 @@ public class PermissionUpdateDto {
private String requestMethod;
}

View File

@ -1,4 +1,4 @@
package cn.bunny.services.domain.system.dto.power;
package cn.bunny.services.domain.system.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
@ -18,7 +18,6 @@ import java.util.List;
public class PermissionUpdateBatchByParentIdDto {
@Schema(name = "id", title = "主键")
@NotNull(message = "id不能为空")
@NotEmpty(message = "id不能为空")
private List<Long> ids;

View File

@ -1,5 +1,6 @@
package cn.bunny.services.domain.system.dto.role;
package cn.bunny.services.domain.system.dto;
import cn.bunny.services.domain.common.ValidationGroups;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
@ -12,21 +13,20 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "RoleUpdateDto对象", title = "更新角色", description = "角色管理")
public class RoleUpdateDto {
@Schema(name = "RoleDto对象", title = "角色分页查询", description = "角色管理")
public class RoleDto {
@Schema(name = "id", title = "主键")
@NotNull(message = "id不能为空")
@NotNull(message = "id不能为空", groups = {ValidationGroups.Update.class})
private Long id;
@Schema(name = "roleCode", title = "角色代码")
@NotBlank(message = "roleCode 不能为空")
@NotNull(message = "roleCode 不能为空")
@NotBlank(message = "roleCode 不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private String roleCode;
@Schema(name = "description", title = "描述")
@NotBlank(message = "description 不能为空")
@NotNull(message = "description 不能为空")
@NotBlank(message = "description 不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private String description;
}

View File

@ -1,5 +1,6 @@
package cn.bunny.services.domain.system.dto.router;
package cn.bunny.services.domain.system.dto;
import cn.bunny.services.domain.common.ValidationGroups;
import cn.bunny.services.domain.system.entity.router.RouterMeta;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
@ -14,17 +15,21 @@ import lombok.NoArgsConstructor;
@NoArgsConstructor
@Builder
@Schema(name = "RouterManageDto对象", title = "添加路由", description = "添加路由")
public class RouterAddDto {
public class RouterDto {
@Schema(name = "id", title = "唯一标识")
@NotNull(message = "id不能为空", groups = {ValidationGroups.Update.class})
private Long id;
@Schema(name = "parentId", title = "父级id")
private Long parentId;
@Schema(name = "path", title = "在项目中路径")
@NotBlank(message = "路由路径不能为空")
@NotBlank(message = "路由路径不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private String path;
@Schema(name = "routeName", title = "路由名称")
@NotBlank(message = "路由名称不能为空")
@NotBlank(message = "路由名称不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private String routeName;
@Schema(name = "redirect", title = "路由重定向")
@ -34,7 +39,7 @@ public class RouterAddDto {
private String component;
@Schema(name = "menuType", title = "菜单类型")
@NotNull(message = "菜单类型不能为空")
@NotNull(message = "菜单类型不能为空", groups = {ValidationGroups.Add.class, ValidationGroups.Update.class})
private Integer menuType;
@Schema(name = "meta", title = "菜单meta")

View File

@ -1,38 +0,0 @@
package cn.bunny.services.domain.system.dto.dept;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "DeptAddDto对象", title = "添加部门", description = "添加部门")
public class DeptAddDto {
@Schema(name = "parentId", title = "父级id")
private String parentId;
@Schema(name = "managerId", title = "管理者")
@NotNull(message = "管理者不能为空")
@NotEmpty(message = "管理者不能为空")
private List<String> manager;
@Schema(name = "deptName", title = "部门名称")
@NotBlank(message = "部门名称不能为空")
@NotNull(message = "部门名称不能为空")
private String deptName;
@Schema(name = "summary", title = "部门简介")
private String summary;
}

View File

@ -1,23 +0,0 @@
package cn.bunny.services.domain.system.dto.dept;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "DeptDto对象", title = "部门分页查询", description = "部门分页查询")
public class DeptDto {
@Schema(name = "deptName", title = "部门名称")
private String deptName;
@Schema(name = "summary", title = "部门简介")
private String summary;
}

View File

@ -1,41 +0,0 @@
package cn.bunny.services.domain.system.dto.power;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "PowerAddDto对象", title = "添加权限", description = "权限管理")
public class PermissionAddDto {
@Schema(name = "id", title = "主键")
private Long id;
@Schema(name = "parentId", title = "父级id")
private Long parentId;
@Schema(name = "parentId", title = "权限编码")
@NotBlank(message = "权限编码 不能为空")
@NotNull(message = "权限编码 不能为空")
private String powerCode;
@Schema(name = "powerName", title = "权限名称")
@NotBlank(message = "权限名称 不能为空")
@NotNull(message = "权限名称 不能为空")
private String powerName;
@Schema(name = "requestUrl", title = "请求路径")
private String requestUrl;
@Schema(name = "requestMethod", title = "请求方法")
private String requestMethod;
}

View File

@ -1,29 +0,0 @@
package cn.bunny.services.domain.system.dto.power;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "PowerDto对象", title = "权限分页查询", description = "权限管理")
public class PermissionDto {
@Schema(name = "parentId", title = "权限编码")
private String powerCode;
@Schema(name = "powerName", title = "权限名称")
private String powerName;
@Schema(name = "requestUrl", title = "请求路径")
private String requestUrl;
@Schema(name = "requestMethod", title = "请求方法")
private String requestMethod;
}

View File

@ -1,30 +0,0 @@
package cn.bunny.services.domain.system.dto.role;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "RoleAddDto对象", title = "添加角色", description = "角色管理")
public class RoleAddDto {
@Schema(name = "roleCode", title = "角色代码")
@NotBlank(message = "roleCode 不能为空")
@NotNull(message = "roleCode 不能为空")
private String roleCode;
@Schema(name = "description", title = "描述")
@NotBlank(message = "description 不能为空")
@NotNull(message = "description 不能为空")
private String description;
}

View File

@ -1,23 +0,0 @@
package cn.bunny.services.domain.system.dto.role;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "RoleDto对象", title = "角色分页查询", description = "角色管理")
public class RoleDto {
@Schema(name = "roleCode", title = "角色代码")
private String roleCode;
@Schema(name = "description", title = "描述")
private String description;
}

View File

@ -1,49 +0,0 @@
package cn.bunny.services.domain.system.dto.router;
import cn.bunny.services.domain.system.entity.router.RouterMeta;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Schema(name = "RouterManageDto对象", title = "更新路由", description = "更新路由")
public class RouterUpdateDto {
@Schema(name = "id", title = "唯一标识")
@NotNull(message = "id不能为空")
private Long id;
@Schema(name = "parentId", title = "父级id")
private Long parentId;
@Schema(name = "path", title = "在项目中路径")
@NotBlank(message = "路由路径不能为空")
private String path;
@Schema(name = "routeName", title = "路由名称")
@NotBlank(message = "路由名称不能为空")
private String routeName;
@Schema(name = "redirect", title = "路由重定向")
private String redirect;
@Schema(name = "component", title = "组件位置")
private String component;
@Schema(name = "menuType", title = "菜单类型")
@NotNull(message = "菜单类型不能为空")
private Integer menuType;
@Schema(name = "meta", title = "菜单meta")
private RouterMeta meta;
}

View File

@ -16,17 +16,14 @@ public class AdminUserAddDto {
@Schema(name = "username", title = "用户名")
@NotBlank(message = "用户名不能为空")
@NotNull(message = "用户名不能为空")
private String username;
@Schema(name = "nickname", title = "昵称")
@NotBlank(message = "昵称不能为空")
@NotNull(message = "昵称不能为空")
private String nickname;
@Schema(name = "email", title = "邮箱")
@NotBlank(message = "邮箱不能为空")
@NotNull(message = "邮箱不能为空")
private String email;
@Schema(name = "phone", title = "手机号")
@ -34,7 +31,6 @@ public class AdminUserAddDto {
@Schema(name = "password", title = "密码")
@NotBlank(message = "密码不能为空")
@NotNull(message = "密码不能为空")
private String password = "123456";
@Schema(name = "avatar", title = "头像")

View File

@ -3,7 +3,6 @@ package cn.bunny.services.domain.system.dto.user;
import cn.bunny.services.domain.common.constant.UserConstant;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -16,12 +15,10 @@ public class AdminUserUpdateByLocalUserDto {
@Schema(name = "nickname", title = "昵称")
@NotBlank(message = "昵称不能为空")
@NotNull(message = "昵称不能为空")
private String nickname;
@Schema(name = "email", title = "邮箱")
@NotBlank(message = "邮箱不能为空")
@NotNull(message = "邮箱不能为空")
private String email;
@Schema(name = "avatar", title = "头像")

View File

@ -2,7 +2,6 @@ package cn.bunny.services.domain.system.dto.user;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.AllArgsConstructor;
import lombok.Data;
@ -16,12 +15,10 @@ public class LoginDto {
@Schema(name = "username", title = "用户名")
@NotBlank(message = "用户名不能为空")
@NotNull(message = "用户名不能为空")
private String username;
@Schema(name = "password", title = "密码")
@NotBlank(message = "密码不能为空")
@NotNull(message = "密码不能为空")
@Pattern(regexp = "^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)]|[()])+$)(?!^.*[\\u4E00-\\u9FA5].*$)([^(0-9a-zA-Z)]|[()]|[a-z]|[A-Z]|[0-9]){8,18}$",
message = "密码格式应为8-18位数字、字母、符号的任意两种组合")
private String password;
@ -31,7 +28,6 @@ public class LoginDto {
@Schema(name = "type", title = "登录类型")
@NotBlank(message = "登录类型不能为空")
@NotNull(message = "登录类型能为空")
private String type = "default";
@Schema(name = "readMeDay", title = "记住我的天数")

View File

@ -2,7 +2,6 @@ package cn.bunny.services.domain.system.dto.user;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -15,7 +14,6 @@ public class RefreshTokenDto {
@Schema(name = "refreshToken", title = "请求刷新token")
@NotBlank(message = "请求刷新token不能为空")
@NotNull(message = "请求刷新token不能为空")
private String refreshToken;
@Schema(name = "readMeDay", title = "记住我天数")

View File

@ -1,6 +1,6 @@
package cn.bunny.services.mapper.system;
import cn.bunny.services.domain.system.dto.dept.DeptDto;
import cn.bunny.services.domain.system.dto.DeptDto;
import cn.bunny.services.domain.system.entity.Dept;
import cn.bunny.services.domain.system.vo.DeptVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.mapper.system;
import cn.bunny.services.domain.system.dto.power.PermissionDto;
import cn.bunny.services.domain.system.dto.PermissionDto;
import cn.bunny.services.domain.system.entity.Permission;
import cn.bunny.services.domain.system.vo.PermissionVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@ -1,6 +1,6 @@
package cn.bunny.services.mapper.system;
import cn.bunny.services.domain.system.dto.role.RoleDto;
import cn.bunny.services.domain.system.dto.RoleDto;
import cn.bunny.services.domain.system.entity.Role;
import cn.bunny.services.domain.system.vo.RoleVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@ -1,9 +1,7 @@
package cn.bunny.services.service.system;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.system.dto.dept.DeptAddDto;
import cn.bunny.services.domain.system.dto.dept.DeptDto;
import cn.bunny.services.domain.system.dto.dept.DeptUpdateDto;
import cn.bunny.services.domain.system.dto.DeptDto;
import cn.bunny.services.domain.system.entity.Dept;
import cn.bunny.services.domain.system.vo.DeptVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -33,14 +31,14 @@ public interface DeptService extends IService<Dept> {
*
* @param dto 添加表单
*/
void addDept(DeptAddDto dto);
void createDept(DeptDto dto);
/**
* * 更新部门
*
* @param dto 更新表单
*/
void updateDept(DeptUpdateDto dto);
void updateDept(DeptDto dto);
/**
* * 删除|批量删除部门类型

View File

@ -1,10 +1,8 @@
package cn.bunny.services.service.system;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.system.dto.power.PermissionAddDto;
import cn.bunny.services.domain.system.dto.power.PermissionDto;
import cn.bunny.services.domain.system.dto.power.PermissionUpdateBatchByParentIdDto;
import cn.bunny.services.domain.system.dto.power.PermissionUpdateDto;
import cn.bunny.services.domain.system.dto.PermissionDto;
import cn.bunny.services.domain.system.dto.PermissionUpdateBatchByParentIdDto;
import cn.bunny.services.domain.system.entity.Permission;
import cn.bunny.services.domain.system.vo.PermissionVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -36,14 +34,14 @@ public interface PermissionService extends IService<Permission> {
*
* @param dto 添加表单
*/
void addPermission(PermissionAddDto dto);
void createPermission(PermissionDto dto);
/**
* * 更新权限
*
* @param dto 更新表单
*/
void updatePermission(PermissionUpdateDto dto);
void updatePermission(PermissionDto dto);
/**
* * 删除|批量删除权限类型
@ -87,5 +85,5 @@ public interface PermissionService extends IService<Permission> {
*
* @param list 权限数组
*/
void updatePermissionBatch(List<PermissionUpdateDto> list);
void updatePermissionBatch(List<PermissionDto> list);
}

View File

@ -1,9 +1,7 @@
package cn.bunny.services.service.system;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.system.dto.role.RoleAddDto;
import cn.bunny.services.domain.system.dto.role.RoleDto;
import cn.bunny.services.domain.system.dto.role.RoleUpdateDto;
import cn.bunny.services.domain.system.dto.RoleDto;
import cn.bunny.services.domain.system.entity.Role;
import cn.bunny.services.domain.system.vo.RoleVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -35,14 +33,14 @@ public interface RoleService extends IService<Role> {
*
* @param dto 添加表单
*/
void addRole(RoleAddDto dto);
void addRole(RoleDto dto);
/**
* * 更新角色
*
* @param dto 更新表单
*/
void updateRole(RoleUpdateDto dto);
void updateRole(RoleDto dto);
/**
* * 删除|批量删除角色类型

View File

@ -1,7 +1,6 @@
package cn.bunny.services.service.system;
import cn.bunny.services.domain.system.dto.router.RouterAddDto;
import cn.bunny.services.domain.system.dto.router.RouterUpdateDto;
import cn.bunny.services.domain.system.dto.RouterDto;
import cn.bunny.services.domain.system.entity.router.Router;
import cn.bunny.services.domain.system.vo.router.RouterManageVo;
import cn.bunny.services.domain.system.vo.router.WebUserRouterVo;
@ -37,14 +36,14 @@ public interface RouterService extends IService<Router> {
*
* @param dto 添加菜单表单
*/
void addRouter(RouterAddDto dto);
void createRouter(RouterDto dto);
/**
* * 更新路由菜单
*
* @param dto 更新表单
*/
void updateRouter(RouterUpdateDto dto);
void updateRouter(RouterDto dto);
/**
* * 删除路由菜单

View File

@ -34,7 +34,7 @@ public interface UserService extends IService<AdminUser> {
*
* @param dto 添加表单
*/
void addUserByAdmin(AdminUserAddDto dto);
void createUserByAdmin(AdminUserAddDto dto);
/**
* * 更新用户信息

View File

@ -2,9 +2,7 @@ package cn.bunny.services.service.system.impl;
import cn.bunny.services.domain.common.enums.ResultCodeEnum;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.system.dto.dept.DeptAddDto;
import cn.bunny.services.domain.system.dto.dept.DeptDto;
import cn.bunny.services.domain.system.dto.dept.DeptUpdateDto;
import cn.bunny.services.domain.system.dto.DeptDto;
import cn.bunny.services.domain.system.entity.Dept;
import cn.bunny.services.domain.system.vo.DeptVo;
import cn.bunny.services.exception.AuthCustomerException;
@ -81,7 +79,7 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De
*/
@Override
@CacheEvict(cacheNames = CACHE_NAMES, key = "'deptList'", beforeInvocation = true)
public void addDept(DeptAddDto dto) {
public void createDept(DeptDto dto) {
// 整理管理者人员
String mangerList = dto.getManager().stream().map(String::trim).collect(Collectors.joining(","));
@ -100,7 +98,7 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements De
*/
@Override
@CacheEvict(cacheNames = CACHE_NAMES, key = "'deptList'", beforeInvocation = true)
public void updateDept(DeptUpdateDto dto) {
public void updateDept(DeptDto dto) {
if (dto.getId().equals(dto.getParentId())) throw new AuthCustomerException(ResultCodeEnum.ILLEGAL_DATA_REQUEST);
// 将管理员用户逗号分隔

View File

@ -9,10 +9,8 @@ import cn.bunny.services.domain.common.constant.FileType;
import cn.bunny.services.domain.common.enums.ResultCodeEnum;
import cn.bunny.services.domain.common.model.dto.excel.PermissionExcel;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.system.dto.power.PermissionAddDto;
import cn.bunny.services.domain.system.dto.power.PermissionDto;
import cn.bunny.services.domain.system.dto.power.PermissionUpdateBatchByParentIdDto;
import cn.bunny.services.domain.system.dto.power.PermissionUpdateDto;
import cn.bunny.services.domain.system.dto.PermissionDto;
import cn.bunny.services.domain.system.dto.PermissionUpdateBatchByParentIdDto;
import cn.bunny.services.domain.system.entity.Permission;
import cn.bunny.services.domain.system.vo.PermissionVo;
import cn.bunny.services.exception.AuthCustomerException;
@ -130,7 +128,7 @@ public class PermissionServiceImpl extends ServiceImpl<PermissionMapper, Permiss
@Caching(evict = {
@CacheEvict(cacheNames = CACHE_NAMES, key = "'permissionList'", beforeInvocation = true),
})
public void addPermission(PermissionAddDto dto) {
public void createPermission(PermissionDto dto) {
Permission permission = new Permission();
BeanUtils.copyProperties(dto, permission);
save(permission);
@ -145,7 +143,7 @@ public class PermissionServiceImpl extends ServiceImpl<PermissionMapper, Permiss
@Caching(evict = {
@CacheEvict(cacheNames = CACHE_NAMES, key = "'permissionList'", beforeInvocation = true),
})
public void updatePermission(PermissionUpdateDto dto) {
public void updatePermission(PermissionDto dto) {
Long id = dto.getId();
List<Permission> permissionList = list(Wrappers.<Permission>lambdaQuery().eq(Permission::getId, id));
if (permissionList.isEmpty()) throw new AuthCustomerException(ResultCodeEnum.DATA_NOT_EXIST);
@ -302,7 +300,7 @@ public class PermissionServiceImpl extends ServiceImpl<PermissionMapper, Permiss
* @param list 权限数组
*/
@Override
public void updatePermissionBatch(List<PermissionUpdateDto> list) {
public void updatePermissionBatch(List<PermissionDto> list) {
List<Permission> permissionList = list.stream()
.map(permissionUpdateDto -> {
Permission permission = new Permission();
@ -313,7 +311,7 @@ public class PermissionServiceImpl extends ServiceImpl<PermissionMapper, Permiss
// 删除缓存中所有这个权限关联的用户角色和权限信息
List<Long> ids = list.stream().map(PermissionUpdateDto::getId).toList();
List<Long> ids = list.stream().map(PermissionDto::getId).toList();
applicationEventPublisher.publishEvent(new UpdateUserinfoByPermissionIdsEvent(this, ids));
}
}

View File

@ -5,9 +5,7 @@ import cn.bunny.services.core.event.listener.excel.RoleExcelListener;
import cn.bunny.services.domain.common.enums.ResultCodeEnum;
import cn.bunny.services.domain.common.model.dto.excel.RoleExcel;
import cn.bunny.services.domain.common.model.vo.result.PageResult;
import cn.bunny.services.domain.system.dto.role.RoleAddDto;
import cn.bunny.services.domain.system.dto.role.RoleDto;
import cn.bunny.services.domain.system.dto.role.RoleUpdateDto;
import cn.bunny.services.domain.system.dto.RoleDto;
import cn.bunny.services.domain.system.entity.Role;
import cn.bunny.services.domain.system.vo.RoleVo;
import cn.bunny.services.exception.AuthCustomerException;
@ -171,7 +169,7 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements Ro
@Caching(evict = {
@CacheEvict(cacheNames = CACHE_NAMES, key = "'roleList'", beforeInvocation = true),
})
public void addRole(RoleAddDto dto) {
public void addRole(RoleDto dto) {
Role role = new Role();
BeanUtils.copyProperties(dto, role);
save(role);
@ -207,7 +205,7 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements Ro
@Caching(evict = {
@CacheEvict(cacheNames = CACHE_NAMES, key = "'roleList'", beforeInvocation = true),
})
public void updateRole(RoleUpdateDto dto) {
public void updateRole(RoleDto dto) {
// 查询更新的角色是否存在
Long roleId = dto.getId();
List<Role> roleList = list(Wrappers.<Role>lambdaQuery().eq(Role::getId, roleId));

View File

@ -2,8 +2,7 @@ package cn.bunny.services.service.system.impl;
import cn.bunny.services.core.utils.RouterServiceHelper;
import cn.bunny.services.domain.common.enums.ResultCodeEnum;
import cn.bunny.services.domain.system.dto.router.RouterAddDto;
import cn.bunny.services.domain.system.dto.router.RouterUpdateDto;
import cn.bunny.services.domain.system.dto.RouterDto;
import cn.bunny.services.domain.system.entity.router.Router;
import cn.bunny.services.domain.system.entity.router.RouterMeta;
import cn.bunny.services.domain.system.entity.router.RouterMetaTransition;
@ -134,7 +133,7 @@ public class RouterServiceImpl extends ServiceImpl<RouterMapper, Router> impleme
*/
@Override
@CacheEvict(cacheNames = CACHE_NAMES, key = "'routerList'", beforeInvocation = true)
public void addRouter(RouterAddDto dto) {
public void createRouter(RouterDto dto) {
// 添加路由
Router router = new Router();
BeanUtils.copyProperties(dto, router);
@ -159,7 +158,7 @@ public class RouterServiceImpl extends ServiceImpl<RouterMapper, Router> impleme
*/
@Override
@CacheEvict(cacheNames = CACHE_NAMES, key = "'routerList'", beforeInvocation = true)
public void updateRouter(RouterUpdateDto dto) {
public void updateRouter(RouterDto dto) {
// 更新路由
Router router = new Router();
BeanUtils.copyProperties(dto, router);

View File

@ -234,7 +234,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, AdminUser> implemen
* @param dto 用户信息添加
*/
@Override
public void addUserByAdmin(AdminUserAddDto dto) {
public void createUserByAdmin(AdminUserAddDto dto) {
// 对密码加密
String encodePassword = passwordEncoder.encode(dto.getPassword());