Merge remote-tracking branch 'origin/2.0.x' into dev

# Conflicts:
#	README.md
#	continew-admin-common/src/main/java/top/charles7c/cnadmin/common/base/BaseReq.java
#	continew-admin-common/src/main/java/top/charles7c/cnadmin/common/base/BaseServiceImpl.java
#	continew-admin-common/src/main/java/top/charles7c/cnadmin/common/handler/GlobalExceptionHandler.java
#	continew-admin-common/src/main/java/top/charles7c/cnadmin/common/util/ExceptionUtils.java
#	continew-admin-common/src/main/java/top/charles7c/cnadmin/common/util/helper/QueryHelper.java
#	continew-admin-monitor/src/main/java/top/charles7c/cnadmin/monitor/interceptor/LogInterceptor.java
#	continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/req/DeptReq.java
#	continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/req/MenuReq.java
#	continew-admin-system/src/main/java/top/charles7c/cnadmin/system/model/req/RoleReq.java
#	continew-admin-system/src/main/java/top/charles7c/cnadmin/system/service/impl/DeptServiceImpl.java
#	continew-admin-system/src/main/java/top/charles7c/cnadmin/system/service/impl/RoleServiceImpl.java
#	continew-admin-system/src/main/java/top/charles7c/cnadmin/system/service/impl/UserServiceImpl.java
#	continew-admin-ui/src/components/footer/index.vue
#	continew-admin-webapi/src/main/java/top/charles7c/cnadmin/webapi/controller/common/CommonController.java
#	continew-admin-webapi/src/main/java/top/charles7c/cnadmin/webapi/controller/system/UserCenterController.java
#	continew-admin-webapi/src/main/resources/config/application-dev.yml
#	continew-admin-webapi/src/main/resources/config/application-prod.yml
#	pom.xml
This commit is contained in:
2023-11-04 23:57:06 +08:00
79 changed files with 256 additions and 177 deletions

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.auth.model.query;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@@ -38,6 +39,7 @@ import cn.hutool.core.date.DatePattern;
@Schema(description = "在线用户查询条件")
public class OnlineUserQuery implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,9 +16,10 @@
package top.charles7c.cnadmin.auth.model.req;
import java.io.Serial;
import java.io.Serializable;
import javax.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
@@ -34,6 +35,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "账号登录信息")
public class AccountLoginReq implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.auth.model.resp;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;
@@ -32,6 +33,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "元数据信息")
public class MetaResp implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.auth.model.resp;
import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
@@ -33,6 +34,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "在线用户信息")
public class OnlineUserResp implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.auth.model.resp;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
@@ -36,6 +37,7 @@ import com.fasterxml.jackson.annotation.JsonInclude;
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class RouteResp implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.auth.model.resp;
import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
@@ -41,6 +42,7 @@ import top.charles7c.cnadmin.common.enums.GenderEnum;
@Schema(description = "用户信息")
public class UserInfoResp implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,8 @@
package top.charles7c.cnadmin.system.model.entity;
import java.io.Serial;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -33,6 +35,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@TableName("sys_dept")
public class DeptDO extends BaseDO {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,8 @@
package top.charles7c.cnadmin.system.model.entity;
import java.io.Serial;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -34,6 +36,7 @@ import top.charles7c.cnadmin.common.enums.MenuTypeEnum;
@TableName("sys_menu")
public class MenuDO extends BaseDO {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,8 @@
package top.charles7c.cnadmin.system.model.entity;
import java.io.Serial;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -34,6 +36,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@TableName("sys_role")
public class RoleDO extends BaseDO {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.entity;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;
@@ -34,6 +35,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
@TableName("sys_role_dept")
public class RoleDeptDO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.entity;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;
@@ -34,6 +35,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
@TableName("sys_role_menu")
public class RoleMenuDO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.entity;
import java.io.Serial;
import java.time.LocalDateTime;
import lombok.Data;
@@ -36,6 +37,7 @@ import top.charles7c.cnadmin.common.enums.GenderEnum;
@TableName("sys_user")
public class UserDO extends BaseDO {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.entity;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;
@@ -34,6 +35,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
@TableName("sys_user_role")
public class UserRoleDO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.query;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;
@@ -35,6 +36,7 @@ import top.charles7c.cnadmin.common.enums.QueryTypeEnum;
@Schema(description = "部门查询条件")
public class DeptQuery implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.query;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;
@@ -35,6 +36,7 @@ import top.charles7c.cnadmin.common.enums.QueryTypeEnum;
@Schema(description = "菜单查询条件")
public class MenuQuery implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.query;
import java.io.Serial;
import java.io.Serializable;
import lombok.Data;
@@ -34,6 +35,7 @@ import top.charles7c.cnadmin.common.annotation.Query;
@Schema(description = "角色查询条件")
public class RoleQuery implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.query;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@@ -41,6 +42,7 @@ import top.charles7c.cnadmin.common.enums.QueryTypeEnum;
@Schema(description = "用户查询条件")
public class UserQuery implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,10 +16,12 @@
package top.charles7c.cnadmin.system.model.req;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.io.Serial;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
@@ -42,6 +44,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@Schema(description = "创建或修改部门信息")
public class DeptReq extends BaseReq {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,10 +16,12 @@
package top.charles7c.cnadmin.system.model.req;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.io.Serial;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
@@ -42,6 +44,7 @@ import top.charles7c.cnadmin.common.enums.MenuTypeEnum;
@Schema(description = "创建或修改菜单信息")
public class MenuReq extends BaseReq {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,12 +16,13 @@
package top.charles7c.cnadmin.system.model.req;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
@@ -44,6 +45,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@Schema(description = "创建或修改角色信息")
public class RoleReq extends BaseReq {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,11 +16,12 @@
package top.charles7c.cnadmin.system.model.req;
import java.io.Serial;
import java.io.Serializable;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
@@ -39,6 +40,7 @@ import top.charles7c.cnadmin.common.enums.GenderEnum;
@Schema(description = "用户基础信息修改信息")
public class UserBasicInfoUpdateReq implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,10 +16,11 @@
package top.charles7c.cnadmin.system.model.req;
import java.io.Serial;
import java.io.Serializable;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
@@ -39,6 +40,7 @@ import top.charles7c.cnadmin.common.constant.RegexConsts;
@Schema(description = "用户邮箱修改信息")
public class UserEmailUpdateRequest implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,9 +16,10 @@
package top.charles7c.cnadmin.system.model.req;
import java.io.Serial;
import java.io.Serializable;
import javax.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
@@ -34,6 +35,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "用户密码修改信息")
public class UserPasswordUpdateReq implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,12 +16,13 @@
package top.charles7c.cnadmin.system.model.req;
import java.io.Serial;
import java.util.List;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
@@ -44,6 +45,7 @@ import top.charles7c.cnadmin.common.enums.GenderEnum;
@Schema(description = "创建或修改用户信息")
public class UserReq extends BaseReq {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,10 +16,11 @@
package top.charles7c.cnadmin.system.model.req;
import java.io.Serial;
import java.io.Serializable;
import java.util.List;
import javax.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;
@@ -35,6 +36,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "用户角色修改信息")
public class UserRoleUpdateReq implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import java.io.Serializable;
import lombok.Builder;
@@ -34,6 +35,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "头像信息")
public class AvatarResp implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,8 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import lombok.Data;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -39,6 +41,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@Schema(description = "部门详情信息")
public class DeptDetailResp extends BaseDetailResp {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,8 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import lombok.Data;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -35,6 +37,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@Schema(description = "部门信息")
public class DeptResp extends BaseResp {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,8 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import lombok.Data;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -41,6 +43,7 @@ import top.charles7c.cnadmin.common.enums.MenuTypeEnum;
@Schema(description = "菜单信息")
public class MenuResp extends BaseResp {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import java.util.List;
import lombok.Data;
@@ -41,6 +42,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@Schema(description = "角色详情信息")
public class RoleDetailResp extends BaseDetailResp {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,8 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import lombok.Data;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -34,6 +36,7 @@ import top.charles7c.cnadmin.common.enums.DisEnableStatusEnum;
@Schema(description = "角色信息")
public class RoleResp extends BaseResp {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
@@ -44,6 +45,7 @@ import top.charles7c.cnadmin.common.util.helper.LoginHelper;
@Schema(description = "用户详情信息")
public class UserDetailResp extends BaseDetailResp {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -16,6 +16,7 @@
package top.charles7c.cnadmin.system.model.resp;
import java.io.Serial;
import java.util.Objects;
import lombok.Data;
@@ -39,6 +40,7 @@ import top.charles7c.cnadmin.common.util.helper.LoginHelper;
@Schema(description = "用户信息")
public class UserResp extends BaseResp {
@Serial
private static final long serialVersionUID = 1L;
/**

View File

@@ -21,7 +21,7 @@ import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import lombok.RequiredArgsConstructor;
@@ -127,8 +127,7 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, DeptDO, DeptRes
@Override
public void fillDetail(Object detailObj) {
super.fillDetail(detailObj);
if (detailObj instanceof DeptDetailResp) {
DeptDetailResp detail = (DeptDetailResp)detailObj;
if (detailObj instanceof DeptDetailResp detail) {
if (Objects.equals(SysConsts.SUPER_PARENT_ID, detail.getParentId())) {
return;
}

View File

@@ -134,17 +134,16 @@ public class RoleServiceImpl extends BaseServiceImpl<RoleMapper, RoleDO, RoleRes
@Override
public void fillDetail(Object detailObj) {
super.fillDetail(detailObj);
if (detailObj instanceof RoleDetailResp) {
RoleDetailResp detailVO = (RoleDetailResp)detailObj;
Long roleId = detailVO.getId();
if (SysConsts.ADMIN_ROLE_CODE.equals(detailVO.getCode())) {
if (detailObj instanceof RoleDetailResp detail) {
Long roleId = detail.getId();
if (SysConsts.ADMIN_ROLE_CODE.equals(detail.getCode())) {
List<MenuResp> list = menuService.list(null, null);
List<Long> menuIds = list.stream().map(MenuResp::getId).collect(Collectors.toList());
detailVO.setMenuIds(menuIds);
detail.setMenuIds(menuIds);
} else {
detailVO.setMenuIds(roleMenuService.listMenuIdByRoleIds(CollUtil.newArrayList(roleId)));
detail.setMenuIds(roleMenuService.listMenuIdByRoleIds(CollUtil.newArrayList(roleId)));
}
detailVO.setDeptIds(roleDeptService.listDeptIdByRoleId(roleId));
detail.setDeptIds(roleDeptService.listDeptIdByRoleId(roleId));
}
}

View File

@@ -20,7 +20,7 @@ import java.io.File;
import java.time.LocalDateTime;
import java.util.*;
import javax.annotation.Resource;
import jakarta.annotation.Resource;
import lombok.RequiredArgsConstructor;
@@ -152,12 +152,12 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserRes
@Override
public void fillDetail(Object detailObj) {
super.fillDetail(detailObj);
if (detailObj instanceof UserDetailResp) {
UserDetailResp detailVO = (UserDetailResp)detailObj;
detailVO.setDeptName(ExceptionUtils.exToNull(() -> deptService.get(detailVO.getDeptId()).getName()));
List<Long> roleIdList = userRoleService.listRoleIdByUserId(detailVO.getId());
detailVO.setRoleIds(roleIdList);
detailVO.setRoleNames(String.join(StringConsts.CHINESE_COMMA, roleService.listNameByIds(roleIdList)));
if (detailObj instanceof UserDetailResp detail) {
UserDetailResp detail = (UserDetailResp)detailObj;
detail.setDeptName(ExceptionUtils.exToNull(() -> deptService.get(detail.getDeptId()).getName()));
List<Long> roleIdList = userRoleService.listRoleIdByUserId(detail.getId());
detail.setRoleIds(roleIdList);
detail.setRoleNames(String.join(StringConsts.CHINESE_COMMA, roleService.listNameByIds(roleIdList)));
}
}