🚧 用户登录相关

This commit is contained in:
bunny 2025-07-21 08:11:50 +08:00
parent 7f46d6e60e
commit d062aa1bae
118 changed files with 620 additions and 236 deletions

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1,33 +1,22 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import org.springframework.security.core.CredentialsContainer;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.Set;
@Getter
@Setter
@Accessors(chain = true)
@TableName("sys_user")
@Schema(name = "User-用户信息实体类", title = "用户信息", description = "用户信息的实体类对象")
public class UserEntity implements UserDetails, CredentialsContainer {
@Schema(name = "id", title = "唯一标识")
@TableId(value = "id", type = IdType.ASSIGN_ID)
@JsonFormat(shape = JsonFormat.Shape.STRING)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
// 💡 根据自己需求看是否需要自定义用户信息
public class UserEntity extends BaseEntity /* implements UserDetails, CredentialsContainer */ {
@Schema(name = "username", title = "用户名")
private String username;
@ -47,9 +36,6 @@ public class UserEntity implements UserDetails, CredentialsContainer {
@Schema(name = "avatar", title = "头像")
private String avatar;
@Schema(name = "sex", title = "0:女 1:男")
private Integer sex;
@Schema(name = "summary", title = "个人描述")
private String summary;
@ -60,10 +46,7 @@ public class UserEntity implements UserDetails, CredentialsContainer {
private String ipRegion;
@Schema(name = "status", title = "1:禁用 0:正常")
private Integer status;
@Schema(name = "isDeleted", title = "是否删除")
private Integer isDeleted;
private Boolean status;
@Schema(name = "salt", title = "密码盐值")
private String salt;
@ -92,36 +75,20 @@ public class UserEntity implements UserDetails, CredentialsContainer {
@Schema(name = "postId", title = "所属岗位ID")
private Long postId;
@Schema(name = "createTime", title = "创建时间")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createTime;
@Schema(name = "isDeleted", title = "是否删除")
private Integer isDeleted;
@Schema(name = "updateTime", title = "更新时间")
@TableField(fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateTime;
// @TableField(exist = false)
// private Set<? extends GrantedAuthority> authorities;
//
// @Override
// public void eraseCredentials() {
// this.password = null;
// }
//
// @Override
// public Set<? extends GrantedAuthority> getAuthorities() {
// return this.authorities;
// }
@Schema(name = "createUser", title = "创建用户")
@TableField(fill = FieldFill.INSERT)
@JsonFormat(shape = JsonFormat.Shape.STRING)
@JsonSerialize(using = ToStringSerializer.class)
private Long createUser;
@Schema(name = "updateUser", title = "操作用户")
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(shape = JsonFormat.Shape.STRING)
@JsonSerialize(using = ToStringSerializer.class)
private Long updateUser;
@TableField(exist = false)
private Set<? extends GrantedAuthority> authorities;
@Override
public void eraseCredentials() {
this.password = null;
}
@Override
public Set<? extends GrantedAuthority> getAuthorities() {
return this.authorities;
}
}
}

View File

@ -1,4 +1,4 @@
package com.auth.dao.base.entity.base;
package com.auth.dao.base.entity;
import com.auth.common.model.common.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;

View File

@ -1 +0,0 @@
package com.auth.dao.base.entity;

View File

@ -1,7 +1,7 @@
package com.auth.dao.base.mapper.v1;
import com.auth.dao.base.entity.base.AuthLogEntity;
import com.auth.dao.base.entity.AuthLogEntity;
import com.auth.model.base.dto.AuthLogDto;
import com.auth.model.base.vo.AuthLogVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.DeptDto;
import com.auth.model.base.vo.DeptVo;
import com.auth.dao.base.entity.base.DeptEntity;
import com.auth.dao.base.entity.DeptEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.DictDto;
import com.auth.model.base.vo.DictVo;
import com.auth.dao.base.entity.base.DictEntity;
import com.auth.dao.base.entity.DictEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.EmailConfigDto;
import com.auth.model.base.vo.EmailConfigVo;
import com.auth.dao.base.entity.base.EmailConfigEntity;
import com.auth.dao.base.entity.EmailConfigEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.EmailTemplateDto;
import com.auth.model.base.vo.EmailTemplateVo;
import com.auth.dao.base.entity.base.EmailTemplateEntity;
import com.auth.dao.base.entity.EmailTemplateEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.FileDto;
import com.auth.model.base.vo.FileVo;
import com.auth.dao.base.entity.base.FileEntity;
import com.auth.dao.base.entity.FileEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.LoginLogDto;
import com.auth.model.base.vo.LoginLogVo;
import com.auth.dao.base.entity.base.LoginLogEntity;
import com.auth.dao.base.entity.LoginLogEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.MenuDto;
import com.auth.model.base.vo.MenuVo;
import com.auth.dao.base.entity.base.MenuEntity;
import com.auth.dao.base.entity.MenuEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.MenuRoleDto;
import com.auth.model.base.vo.MenuRoleVo;
import com.auth.dao.base.entity.base.MenuRoleEntity;
import com.auth.dao.base.entity.MenuRoleEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.OperationLogDto;
import com.auth.model.base.vo.OperationLogVo;
import com.auth.dao.base.entity.base.OperationLogEntity;
import com.auth.dao.base.entity.OperationLogEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.PermissionDto;
import com.auth.model.base.vo.PermissionVo;
import com.auth.dao.base.entity.base.PermissionEntity;
import com.auth.dao.base.entity.PermissionEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.RoleDataScopeDto;
import com.auth.model.base.vo.RoleDataScopeVo;
import com.auth.dao.base.entity.base.RoleDataScopeEntity;
import com.auth.dao.base.entity.RoleDataScopeEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.RoleDto;
import com.auth.model.base.vo.RoleVo;
import com.auth.dao.base.entity.base.RoleEntity;
import com.auth.dao.base.entity.RoleEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.RolePermissionDto;
import com.auth.model.base.vo.RolePermissionVo;
import com.auth.dao.base.entity.base.RolePermissionEntity;
import com.auth.dao.base.entity.RolePermissionEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.UserDeptDto;
import com.auth.model.base.vo.UserDeptVo;
import com.auth.dao.base.entity.base.UserDeptEntity;
import com.auth.dao.base.entity.UserDeptEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -1,10 +1,11 @@
package com.auth.dao.base.mapper.v1;
import com.auth.dao.base.entity.PermissionEntity;
import com.auth.dao.base.entity.RoleEntity;
import com.auth.dao.base.entity.UserEntity;
import com.auth.dao.base.view.UserRolePermission;
import com.auth.model.base.dto.UserDto;
import com.auth.model.base.vo.UserVo;
import com.auth.dao.base.entity.base.PermissionEntity;
import com.auth.dao.base.entity.base.RoleEntity;
import com.auth.dao.base.entity.base.UserEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -34,12 +35,12 @@ public interface UserMapper extends BaseMapper<UserEntity> {
IPage<UserVo> selectListByPage(@Param("page") Page<UserEntity> pageParams, @Param("dto") UserDto dto);
/**
* 根据用户名查询用户信息
* 根据用户id查询用户角色和权限信息
*
* @param username 用户名
* @param userId 用户Id
* @return 用户实体类
*/
UserEntity selectByUsername(String username);
List<UserRolePermission> selectUserRolePermissionByUsername(Long userId);
/**
* 根据用户id查找该用户的角色内容
@ -56,4 +57,12 @@ public interface UserMapper extends BaseMapper<UserEntity> {
* @return 权限列表
*/
List<PermissionEntity> selectPermissionByUserId(Long userId);
/**
* 根据用户名查询用户信息
*
* @param username 用户名
* @return 用户实体类
*/
UserEntity selectByUsername(String username);
}

View File

@ -2,7 +2,7 @@ package com.auth.dao.base.mapper.v1;
import com.auth.model.base.dto.UserRoleDto;
import com.auth.model.base.vo.UserRoleVo;
import com.auth.dao.base.entity.base.UserRoleEntity;
import com.auth.dao.base.entity.UserRoleEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -0,0 +1,65 @@
package com.auth.dao.base.view;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.util.Date;
@Getter
@Setter
@Accessors(chain = true)
@TableName("v_user_role_permission")
@Schema(name = "UserRolePermission-用户角色权限信息实体类", title = "用户角色权限信息", description = "用户角色权限信息的实体类对象")
public class UserRolePermission {
// 用户角色关联信息
private Long userId;
// 角色权限关联信息
private Long roleId;
private Long permissionId;
// 权限信息
private String permissionCode;
private String permissionName;
private String permissionType;
private String url;
private String method;
private Integer permissionLevel;
private String permissionPath;
private Integer permissionOrderNum;
private Integer permissionStatus;
private String permissionRemark;
// 用户信息
private String username;
private String nickname;
private String email;
private String phone;
private String salt;
private String password;
private String avatar;
private Integer gender;
private Date birthday;
private String introduction;
private String lastLoginIp;
private Date lastLoginTime;
private String lastLoginRegion;
private Integer status;
private Long deptId;
private Long postId;
private Boolean isDeleted;
// 角色信息
private String roleCode;
private String roleName;
private String roleType;
private String roleDataScope;
private Integer roleOrderNum;
private Integer roleStatus;
private String roleRemark;
}

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.AuthLogMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.AuthLogEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.AuthLogEntity">
<id column="id" property="id"/>
<id column="event_type" property="eventType"/>
<id column="username" property="username"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.DeptMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.DeptEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.DeptEntity">
<id column="id" property="id"/>
<id column="parent_id" property="parentId"/>
<id column="manager" property="manager"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.DictMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.DictEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.DictEntity">
<id column="id" property="id"/>
<id column="dict_type" property="dictType"/>
<id column="dict_code" property="dictCode"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.EmailConfigMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.EmailConfigEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.EmailConfigEntity">
<id column="id" property="id"/>
<id column="config_name" property="configName"/>
<id column="email" property="email"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.EmailTemplateMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.EmailTemplateEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.EmailTemplateEntity">
<id column="id" property="id"/>
<id column="template_name" property="templateName"/>
<id column="email_user" property="emailUser"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.FileMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.FileEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.FileEntity">
<id column="id" property="id"/>
<id column="file_uid" property="fileUid"/>
<id column="original_name" property="originalName"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.LoginLogMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.LoginLogEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.LoginLogEntity">
<id column="id" property="id"/>
<id column="user_id" property="userId"/>
<id column="username" property="username"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.MenuMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.MenuEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.MenuEntity">
<id column="id" property="id"/>
<id column="parent_id" property="parentId"/>
<id column="menu_path" property="menuPath"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.MenuRoleMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.MenuRoleEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.MenuRoleEntity">
<id column="id" property="id"/>
<id column="role_id" property="roleId"/>
<id column="menu_id" property="menuId"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.OperationLogMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.OperationLogEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.OperationLogEntity">
<id column="id" property="id"/>
<id column="module" property="module"/>
<id column="operation_type" property="operationType"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.PermissionMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.PermissionEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.PermissionEntity">
<id column="id" property="id"/>
<id column="parent_id" property="parentId"/>
<id column="power_code" property="powerCode"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.RoleDataScopeMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.RoleDataScopeEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.RoleDataScopeEntity">
<id column="id" property="id"/>
<id column="role_id" property="roleId"/>
<id column="dept_id" property="deptId"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.RoleMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.RoleEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.RoleEntity">
<id column="id" property="id"/>
<id column="role_code" property="roleCode"/>
<id column="description" property="description"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.RolePermissionMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.RolePermissionEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.RolePermissionEntity">
<id column="id" property="id"/>
<id column="role_id" property="roleId"/>
<id column="power_id" property="powerId"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.UserDeptMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.UserDeptEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.UserDeptEntity">
<id column="id" property="id"/>
<id column="user_id" property="userId"/>
<id column="dept_id" property="deptId"/>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.UserMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.UserEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.UserEntity">
<id column="id" property="id"/>
<id column="username" property="username"/>
<id column="nickname" property="nickname"/>
@ -117,16 +117,17 @@
</where>
</select>
<!-- 根据用户名查询用户信息 -->
<select id="selectByUsername" resultType="com.auth.dao.base.entity.base.UserEntity">
select
<include refid="Base_Column_List"/>
from sys_user
where username = #{username} and is_deleted = 0 and status = 0
<!-- 根据用户id查询用户角色和权限信息 -->
<select id="selectUserRolePermissionByUsername" resultType="com.auth.dao.base.view.UserRolePermission">
select *
from v_user_role_permission vurp
where vurp.user_id = #{userId}
and vurp.is_deleteds = 0
and vurp.status = 0
</select>
<!-- 根据用户id查找该用户的角色内容 -->
<select id="selectRolesByUserId" resultType="com.auth.dao.base.entity.base.RoleEntity">
<select id="selectRolesByUserId" resultType="com.auth.dao.base.entity.RoleEntity">
SELECT tr.*
FROM t_user_role tur
JOIN t_role tr ON tur.role_id = tr.id
@ -138,7 +139,7 @@
</select>
<!-- 根据用户id查找当前用户的权限 -->
<select id="selectPermissionByUserId" resultType="com.auth.dao.base.entity.base.PermissionEntity">
<select id="selectPermissionByUserId" resultType="com.auth.dao.base.entity.PermissionEntity">
SELECT DISTINCT p.*
FROM sys_permission p
JOIN sys_role_permission rp ON p.id = rp.permission_id
@ -146,4 +147,12 @@
WHERE ur.user_id = #{userId}
</select>
<!-- 根据用户名查询用户信息 -->
<select id="selectByUsername" resultType="com.auth.dao.base.entity.UserEntity">
select
<include refid="Base_Column_List"/>
from sys_user
where username = #{username} and is_deleted = 0 and status = 0
</select>
</mapper>

View File

@ -3,7 +3,7 @@
<mapper namespace="com.auth.dao.base.mapper.v1.UserRoleMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.base.UserRoleEntity">
<resultMap id="BaseResultMap" type="com.auth.dao.base.entity.UserRoleEntity">
<id column="id" property="id"/>
<id column="user_id" property="userId"/>
<id column="role_id" property="roleId"/>

View File

@ -0,0 +1,31 @@
package com.auth.module.security.controller;
import com.auth.common.model.common.result.Result;
import com.auth.model.base.dto.LoginDto;
import com.auth.model.base.vo.LoginVo;
import com.auth.module.security.service.LoginService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Tag(name = "登录接口")
@RestController
@RequestMapping("/api")
@RequiredArgsConstructor
public class LoginController {
private final LoginService loginService;
@Operation(summary = "用户登录", description = "用户登录")
@PostMapping("login")
public Result<LoginVo> login(@RequestBody LoginDto loginDto) {
LoginVo vo = loginService.login(loginDto);
return Result.success(vo);
}
}

View File

@ -2,7 +2,7 @@ package com.auth.module.security.event;
import com.alibaba.fastjson2.JSON;
import com.auth.common.context.BaseContext;
import com.auth.dao.base.entity.base.AuthLogEntity;
import com.auth.dao.base.entity.AuthLogEntity;
import com.auth.dao.base.mapper.v1.AuthLogMapper;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;

View File

@ -64,11 +64,9 @@ public class JwtAuthenticationFilter extends OncePerRequestFilter {
filterChain.doFilter(request, response);
} catch (AuthenticSecurityException e) {
// 直接处理认证异常不再调用filterChain.doFilter()
securityAuthenticationEntryPoint.commence(
request,
response,
new MyAuthenticationException(e.getMessage(), e)
);
MyAuthenticationException myAuthenticationException = new MyAuthenticationException(e.getMessage(), e);
securityAuthenticationEntryPoint.commence(request, response, myAuthenticationException);
} catch (RuntimeException e) {
MyAuthenticationException myAuthenticationException = new MyAuthenticationException("Authentication failed", e);
securityAuthenticationEntryPoint.commence(request, response, myAuthenticationException);

View File

@ -33,8 +33,7 @@ public class JwtTokenProvider {
* @param username 用户名
* @return 令牌Token
*/
public String createToken(Long userId, String username,
List<String> roles, List<String> permissions) {
public String createToken(Long userId, String username, List<String> roles, List<String> permissions) {
SecretKey key = getSecretKey();
// return JwtTokenUtil.createToken(userId, username, subject, key, expired);
return JwtTokenUtil.createToken(userId, username, roles, permissions, subject, key, expired);

View File

@ -1,69 +1,19 @@
package com.auth.module.security.service;
import com.auth.dao.base.entity.base.PermissionEntity;
import com.auth.dao.base.entity.base.RoleEntity;
import com.auth.dao.base.entity.base.UserEntity;
import com.auth.dao.base.mapper.v1.UserMapper;
import lombok.RequiredArgsConstructor;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
import com.auth.dao.base.view.UserRolePermission;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@Service
@Transactional
@RequiredArgsConstructor
public class DbUserDetailService implements UserDetailsService {
private final UserMapper userMapper;
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
// 查询当前用户
UserEntity userEntity = userMapper.selectByUsername(username);
// 判断当前用户是否存在
if (userEntity == null) {
throw new UsernameNotFoundException("用户不存在");
}
Long userId = userEntity.getId();
List<String> list = new ArrayList<>();
// 设置用户角色
List<String> roles = findUserRolesByUserId(userId);
// 设置用户权限
List<String> permissions = findPermissionByUserId(userId);
list.addAll(roles);
list.addAll(permissions);
Set<SimpleGrantedAuthority> authorities = list.stream().map(SimpleGrantedAuthority::new)
.collect(Collectors.toSet());
// 设置用户权限
userEntity.setAuthorities(authorities);
// 返回时将用户密码置为空
userEntity.setPassword(null);
return userEntity;
}
public interface DbUserDetailService extends UserDetailsService {
/**
* 根据用户id查找该用户的角色内容
*
* @param userId 用户id
* @param userRolePermissionList 用户角色权限列表
* @return 当前用户的角色信息
*/
public List<String> findUserRolesByUserId(Long userId) {
List<RoleEntity> roleList = userMapper.selectRolesByUserId(userId);
return roleList.stream().map(RoleEntity::getRoleCode).toList();
}
List<String> findUserRolesByUserId(List<UserRolePermission> userRolePermissionList);
/**
* 根据用户id查找该用户的权限内容
@ -71,8 +21,6 @@ public class DbUserDetailService implements UserDetailsService {
* @param userId 用户id
* @return 当前用户的权限信息
*/
public List<String> findPermissionByUserId(Long userId) {
List<PermissionEntity> permissionList = userMapper.selectPermissionByUserId(userId);
return permissionList.stream().map(PermissionEntity::getPermissionCode).toList();
}
List<String> findPermissionByUserId(List<UserRolePermission> userRolePermissionList);
}

View File

@ -0,0 +1,18 @@
package com.auth.module.security.service;
import com.auth.dao.base.entity.UserEntity;
import com.auth.model.base.dto.LoginDto;
import com.auth.model.base.vo.LoginVo;
import com.baomidou.mybatisplus.extension.service.IService;
public interface LoginService extends IService<UserEntity> {
/**
* 用户登录
*
* @param loginDto LoginRequest登录参数
* @return 登录成功返回内容
*/
LoginVo login(LoginDto loginDto);
}

View File

@ -0,0 +1,114 @@
package com.auth.module.security.service.impl;
import com.auth.dao.base.entity.UserEntity;
import com.auth.dao.base.mapper.v1.UserMapper;
import com.auth.dao.base.view.UserRolePermission;
import com.auth.module.security.service.DbUserDetailService;
import lombok.RequiredArgsConstructor;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.authentication.jaas.JaasGrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.security.Principal;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service
@Transactional
@RequiredArgsConstructor
public class DbUserDetailServiceImpl implements DbUserDetailService {
private final UserMapper userMapper;
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
// 查询当前用户
UserEntity userEntity = userMapper.selectByUsername(username);
// 判断当前用户是否存在
if (userEntity == null) {
throw new UsernameNotFoundException("用户不存在");
}
Long userId = userEntity.getId();
List<UserRolePermission> userRolePermissionList = userMapper.selectUserRolePermissionByUsername(userId);
Map<String, List<UserRolePermission>> roleCodeMap = userRolePermissionList.stream().collect(Collectors.groupingBy(UserRolePermission::getRoleCode));
List<JaasGrantedAuthority> jaasGrantedAuthorities = new ArrayList<>();
roleCodeMap.forEach((s, permissionCode) -> {
List<SimpleGrantedAuthority> permissions = getPermissionByRoleCode(s, roleCodeMap).stream().map(SimpleGrantedAuthority::new).toList();
UsernamePasswordAuthenticationToken usernamePasswordAuthenticationToken = new UsernamePasswordAuthenticationToken(s, null, permissions);
JaasGrantedAuthority jaasGrantedAuthority = new JaasGrantedAuthority(s, (Principal) usernamePasswordAuthenticationToken.getPrincipal());
jaasGrantedAuthorities.add(jaasGrantedAuthority);
});
List<String> roles = findUserRolesByUserId(userRolePermissionList);
// List<String> list = new ArrayList<>();
// // 设置用户角色
// List<String> roles = findUserRolesByUserId(userRolePermissionList);
// // 设置用户权限
// List<String> permissions = findPermissionByUserId(userRolePermissionList);
// list.addAll(roles);
// list.addAll(permissions);
// Set<SimpleGrantedAuthority> authorities = list.stream()
// .map(SimpleGrantedAuthority::new)
// .collect(Collectors.toSet());
// 设置用户权限
// userEntity.setAuthorities(authorities);
// // 返回时将用户密码置为空
// userEntity.setPassword(null);
// return userEntity;
return User.builder()
.username(username)
.password(userEntity.getPassword())
.roles(roles.toArray(String[]::new))
.authorities(jaasGrantedAuthorities)
.disabled(userEntity.getStatus())
.build();
}
/**
* 根据角色码获取当前角色权限
*
* @param userRolePermissionList 用户角色权限关系列表
* @return 权限Code
*/
private List<String> getPermissionByRoleCode(String roleCode, Map<String, List<UserRolePermission>> userRolePermissionList) {
return userRolePermissionList.get(roleCode)
.stream().map(UserRolePermission::getPermissionCode)
.toList();
}
/**
* 根据用户id查找该用户的角色内容
*
* @param userRolePermissionList 用户角色权限列表
* @return 当前用户的角色信息
*/
@Override
public List<String> findUserRolesByUserId(List<UserRolePermission> userRolePermissionList) {
return userRolePermissionList.stream().map(UserRolePermission::getRoleCode).toList();
}
/**
* 根据用户id查找该用户的权限内容
*
* @param userRolePermissionList 用户角色权限列表
* @return 当前用户的权限信息
*/
@Override
public List<String> findPermissionByUserId(List<UserRolePermission> userRolePermissionList) {
return userRolePermissionList.stream().map(UserRolePermission::getPermissionCode).toList();
}
}

View File

@ -1,4 +1,4 @@
package com.auth.module.security.service;
package com.auth.module.security.service.impl;
// @Service
// @RequiredArgsConstructor

View File

@ -0,0 +1,92 @@
package com.auth.module.security.service.impl;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.common.model.enums.LoginEnums;
import com.auth.dao.base.entity.PermissionEntity;
import com.auth.dao.base.entity.RoleEntity;
import com.auth.dao.base.entity.UserEntity;
import com.auth.dao.base.mapper.v1.UserMapper;
import com.auth.model.base.dto.LoginDto;
import com.auth.model.base.vo.LoginVo;
import com.auth.module.security.provider.JwtTokenProvider;
import com.auth.module.security.service.LoginService;
import com.auth.module.security.service.strategy.DefaultLoginStrategy;
import com.auth.module.security.service.strategy.LoginContext;
import com.auth.module.security.service.strategy.LoginStrategy;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@Service
@RequiredArgsConstructor
public class LoginServiceImpl extends ServiceImpl<UserMapper, UserEntity> implements LoginService {
private final JwtTokenProvider jwtTokenProvider;
private final DbUserDetailServiceImpl dbUserDetailServiceImpl;
private final UserMapper userMapper;
private final PasswordEncoder passwordEncoder;
/**
* 用户登录
*
* @param loginDto LoginRequest登录参数
* @return 登录成功返回内容
*/
@Override
public LoginVo login(LoginDto loginDto) {
// 初始化所有策略可扩展
HashMap<String, LoginStrategy> loginStrategyHashMap = new HashMap<>();
// 默认的登录方式
loginStrategyHashMap.put(LoginEnums.default_STRATEGY.getValue(), new DefaultLoginStrategy(userMapper));
// 使用登录上下文调用登录策略
LoginContext loginContext = new LoginContext(loginStrategyHashMap);
UserEntity user = loginContext.executeStrategy(loginDto);
// 验证登录逻辑
if (user == null) throw new UsernameNotFoundException(ResultCodeEnum.USER_IS_EMPTY.getMessage());
// 数据库密码
String dbPassword = user.getPassword();
String password = loginDto.getPassword();
if (!passwordEncoder.matches(password, dbPassword)) {
throw new UsernameNotFoundException(ResultCodeEnum.LOGIN_ERROR.getMessage());
}
// 登录结束后的操作
loginContext.loginAfter(loginDto, user);
// 设置用户创建用户id 更新用户id
Long userId = user.getId();
user.setCreateUser(userId);
user.setUpdateUser(userId);
updateById(user);
List<String> roles = baseMapper.selectRolesByUserId(userId).stream().map(RoleEntity::getRoleCode).toList();
List<String> permission = baseMapper.selectPermissionByUserId(userId).stream().map(PermissionEntity::getPermissionCode).toList();
String token = jwtTokenProvider.createToken(userId, user.getUsername(), roles, permission);
// 过期时间
Long expiresInSeconds = jwtTokenProvider.expired;
long expirationMillis = System.currentTimeMillis() + (expiresInSeconds * 1000);
Date date = new Date(expirationMillis);
// 构建用户返回对象
LoginVo loginVo = new LoginVo();
BeanUtils.copyProperties(user, loginVo);
loginVo.setToken(token);
loginVo.setReadMeDay(expirationMillis);
loginVo.setExpires(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date));
return loginVo;
}
}

View File

@ -0,0 +1,46 @@
package com.auth.module.security.service.strategy;
import com.auth.dao.base.entity.UserEntity;
import com.auth.dao.base.mapper.v1.UserMapper;
import com.auth.model.base.dto.LoginDto;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
/**
* 使用用户名登录
*/
public class DefaultLoginStrategy implements LoginStrategy {
private final UserMapper userMapper;
public DefaultLoginStrategy(UserMapper userMapper) {
this.userMapper = userMapper;
}
/**
* 登录鉴定方法
* 默认登录方式使用用户名查询用户
*
* @param loginDto 登录参数
* @return 鉴定身份验证
*/
@Override
public UserEntity authenticate(LoginDto loginDto) {
String username = loginDto.getUsername();
// 查询用户相关内容
LambdaQueryWrapper<UserEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(UserEntity::getUsername, username);
return userMapper.selectOne(queryWrapper);
}
/**
* 登录完成后的内容
*
* @param loginDto 登录参数
* @param adminUser 用户
*/
@Override
public void authenticateAfter(LoginDto loginDto, UserEntity adminUser) {
}
}

View File

@ -0,0 +1,51 @@
package com.auth.module.security.service.strategy;
import com.auth.dao.base.entity.UserEntity;
import com.auth.model.base.dto.LoginDto;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import java.util.Map;
/**
* 登录策略上下文
*/
public class LoginContext {
private final Map<String, LoginStrategy> strategies;
public LoginContext(Map<String, LoginStrategy> strategies) {
this.strategies = strategies;
}
/**
* 执行登录策略
* 根据情况判断 type 是否为空
*
* @param loginDto 登录参数
* @return 用户
*/
public UserEntity executeStrategy(LoginDto loginDto) {
String type = loginDto.getType();
LoginStrategy strategy = strategies.get(type);
if (strategy == null) {
throw new UsernameNotFoundException("不支持登录类型: " + type);
}
return strategy.authenticate(loginDto);
}
/**
* 登录完成后的内容
*
* @param loginDto 登录参数
*/
public void loginAfter(LoginDto loginDto, UserEntity adminUser) {
String type = loginDto.getType();
LoginStrategy strategy = strategies.get(type);
strategy.authenticateAfter(loginDto, adminUser);
}
}

View File

@ -0,0 +1,27 @@
package com.auth.module.security.service.strategy;
import com.auth.dao.base.entity.UserEntity;
import com.auth.model.base.dto.LoginDto;
/**
* 登录策略
*/
public interface LoginStrategy {
/**
* 登录鉴定方法
*
* @param loginDto 登录参数
* @return 鉴定身份验证
*/
UserEntity authenticate(LoginDto loginDto);
/**
* 登录完成后的内容
*
* @param loginDto 登录参数
* @param adminUser {@link UserEntity}
*/
void authenticateAfter(LoginDto loginDto, UserEntity adminUser);
}

View File

@ -26,5 +26,10 @@
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.dromara.x-file-storage</groupId>
<artifactId>x-file-storage-spring</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -3,7 +3,7 @@ package com.auth.service.base.controller;
import com.auth.common.model.common.result.PageResult;
import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.dao.base.entity.base.AuthLogEntity;
import com.auth.dao.base.entity.AuthLogEntity;
import com.auth.model.base.dto.AuthLogDto;
import com.auth.model.base.vo.AuthLogVo;
import com.auth.service.base.service.AuthLogService;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.DeptDto;
import com.auth.model.base.vo.DeptVo;
import com.auth.dao.base.entity.base.DeptEntity;
import com.auth.dao.base.entity.DeptEntity;
import com.auth.service.base.service.DeptService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.DictDto;
import com.auth.model.base.vo.DictVo;
import com.auth.dao.base.entity.base.DictEntity;
import com.auth.dao.base.entity.DictEntity;
import com.auth.service.base.service.DictService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.EmailConfigDto;
import com.auth.model.base.vo.EmailConfigVo;
import com.auth.dao.base.entity.base.EmailConfigEntity;
import com.auth.dao.base.entity.EmailConfigEntity;
import com.auth.service.base.service.EmailConfigService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.EmailTemplateDto;
import com.auth.model.base.vo.EmailTemplateVo;
import com.auth.dao.base.entity.base.EmailTemplateEntity;
import com.auth.dao.base.entity.EmailTemplateEntity;
import com.auth.service.base.service.EmailTemplateService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.FileDto;
import com.auth.model.base.vo.FileVo;
import com.auth.dao.base.entity.base.FileEntity;
import com.auth.dao.base.entity.FileEntity;
import com.auth.service.base.service.FileService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.LoginLogDto;
import com.auth.model.base.vo.LoginLogVo;
import com.auth.dao.base.entity.base.LoginLogEntity;
import com.auth.dao.base.entity.LoginLogEntity;
import com.auth.service.base.service.LoginLogService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.MenuDto;
import com.auth.model.base.vo.MenuVo;
import com.auth.dao.base.entity.base.MenuEntity;
import com.auth.dao.base.entity.MenuEntity;
import com.auth.service.base.service.MenuService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.MenuRoleDto;
import com.auth.model.base.vo.MenuRoleVo;
import com.auth.dao.base.entity.base.MenuRoleEntity;
import com.auth.dao.base.entity.MenuRoleEntity;
import com.auth.service.base.service.MenuRoleService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.OperationLogDto;
import com.auth.model.base.vo.OperationLogVo;
import com.auth.dao.base.entity.base.OperationLogEntity;
import com.auth.dao.base.entity.OperationLogEntity;
import com.auth.service.base.service.OperationLogService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.PermissionDto;
import com.auth.model.base.vo.PermissionVo;
import com.auth.dao.base.entity.base.PermissionEntity;
import com.auth.dao.base.entity.PermissionEntity;
import com.auth.service.base.service.PermissionService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.RoleDto;
import com.auth.model.base.vo.RoleVo;
import com.auth.dao.base.entity.base.RoleEntity;
import com.auth.dao.base.entity.RoleEntity;
import com.auth.service.base.service.RoleService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.RoleDataScopeDto;
import com.auth.model.base.vo.RoleDataScopeVo;
import com.auth.dao.base.entity.base.RoleDataScopeEntity;
import com.auth.dao.base.entity.RoleDataScopeEntity;
import com.auth.service.base.service.RoleDataScopeService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.RolePermissionDto;
import com.auth.model.base.vo.RolePermissionVo;
import com.auth.dao.base.entity.base.RolePermissionEntity;
import com.auth.dao.base.entity.RolePermissionEntity;
import com.auth.service.base.service.RolePermissionService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.UserDto;
import com.auth.model.base.vo.UserVo;
import com.auth.dao.base.entity.base.UserEntity;
import com.auth.dao.base.entity.UserEntity;
import com.auth.service.base.service.UserService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.UserDeptDto;
import com.auth.model.base.vo.UserDeptVo;
import com.auth.dao.base.entity.base.UserDeptEntity;
import com.auth.dao.base.entity.UserDeptEntity;
import com.auth.service.base.service.UserDeptService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -5,7 +5,7 @@ import com.auth.common.model.common.result.Result;
import com.auth.common.model.common.result.ResultCodeEnum;
import com.auth.model.base.dto.UserRoleDto;
import com.auth.model.base.vo.UserRoleVo;
import com.auth.dao.base.entity.base.UserRoleEntity;
import com.auth.dao.base.entity.UserRoleEntity;
import com.auth.service.base.service.UserRoleService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;

View File

@ -1,7 +1,7 @@
package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.dao.base.entity.base.AuthLogEntity;
import com.auth.dao.base.entity.AuthLogEntity;
import com.auth.model.base.dto.AuthLogDto;
import com.auth.model.base.vo.AuthLogVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.DeptDto;
import com.auth.model.base.vo.DeptVo;
import com.auth.dao.base.entity.base.DeptEntity;
import com.auth.dao.base.entity.DeptEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.DictDto;
import com.auth.model.base.vo.DictVo;
import com.auth.dao.base.entity.base.DictEntity;
import com.auth.dao.base.entity.DictEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.EmailConfigDto;
import com.auth.model.base.vo.EmailConfigVo;
import com.auth.dao.base.entity.base.EmailConfigEntity;
import com.auth.dao.base.entity.EmailConfigEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.EmailTemplateDto;
import com.auth.model.base.vo.EmailTemplateVo;
import com.auth.dao.base.entity.base.EmailTemplateEntity;
import com.auth.dao.base.entity.EmailTemplateEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.FileDto;
import com.auth.model.base.vo.FileVo;
import com.auth.dao.base.entity.base.FileEntity;
import com.auth.dao.base.entity.FileEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.LoginLogDto;
import com.auth.model.base.vo.LoginLogVo;
import com.auth.dao.base.entity.base.LoginLogEntity;
import com.auth.dao.base.entity.LoginLogEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.MenuRoleDto;
import com.auth.model.base.vo.MenuRoleVo;
import com.auth.dao.base.entity.base.MenuRoleEntity;
import com.auth.dao.base.entity.MenuRoleEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.MenuDto;
import com.auth.model.base.vo.MenuVo;
import com.auth.dao.base.entity.base.MenuEntity;
import com.auth.dao.base.entity.MenuEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.OperationLogDto;
import com.auth.model.base.vo.OperationLogVo;
import com.auth.dao.base.entity.base.OperationLogEntity;
import com.auth.dao.base.entity.OperationLogEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.PermissionDto;
import com.auth.model.base.vo.PermissionVo;
import com.auth.dao.base.entity.base.PermissionEntity;
import com.auth.dao.base.entity.PermissionEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.RoleDataScopeDto;
import com.auth.model.base.vo.RoleDataScopeVo;
import com.auth.dao.base.entity.base.RoleDataScopeEntity;
import com.auth.dao.base.entity.RoleDataScopeEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.RolePermissionDto;
import com.auth.model.base.vo.RolePermissionVo;
import com.auth.dao.base.entity.base.RolePermissionEntity;
import com.auth.dao.base.entity.RolePermissionEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.RoleDto;
import com.auth.model.base.vo.RoleVo;
import com.auth.dao.base.entity.base.RoleEntity;
import com.auth.dao.base.entity.RoleEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.UserDeptDto;
import com.auth.model.base.vo.UserDeptVo;
import com.auth.dao.base.entity.base.UserDeptEntity;
import com.auth.dao.base.entity.UserDeptEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.UserRoleDto;
import com.auth.model.base.vo.UserRoleVo;
import com.auth.dao.base.entity.base.UserRoleEntity;
import com.auth.dao.base.entity.UserRoleEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@ -3,7 +3,7 @@ package com.auth.service.base.service;
import com.auth.common.model.common.result.PageResult;
import com.auth.model.base.dto.UserDto;
import com.auth.model.base.vo.UserVo;
import com.auth.dao.base.entity.base.UserEntity;
import com.auth.dao.base.entity.UserEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

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