ソースを参照

1.添加统一认证鉴权模块

1 1 ヶ月 前
コミット
5055a13955

+ 17 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/dao/SysRoleDao.java

@@ -0,0 +1,17 @@
+package top.imwork.uaa.dao;
+
+import top.imwork.commons.dao.base.BaseDao;
+import top.imwork.uaa.entity.SysRole;
+
+import java.util.List;
+
+/**
+ * 角色信息
+ *
+ * @author jiangxiaowei
+ * email: e-jiangxiaowei@outlook.com
+ * date: 2025-12-09 16:29:22
+ */
+public interface SysRoleDao extends BaseDao<SysRole> {
+    List<SysRole> getRolesByUserId(Long uid);
+}

+ 23 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/dao/SysUserDao.java

@@ -0,0 +1,23 @@
+package top.imwork.uaa.dao;
+
+import top.imwork.commons.dao.base.BaseDao;
+import top.imwork.uaa.entity.SysUser;
+
+import java.util.List;
+
+/**
+ * 用户信息
+ *
+ * @author jiangxiaowei
+ * email: e-jiangxiaowei@outlook.com
+ * date: 2025-12-09 16:29:22
+ */
+public interface SysUserDao extends BaseDao<SysUser> {
+    /**
+     * 根据用户账号查询用户信息
+     *
+     * @param account 账号
+     * @return List   用户信息列表
+     */
+    List<SysUser> getUserByAccount(String account);
+}

+ 275 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/entity/SysRole.java

@@ -0,0 +1,275 @@
+package top.imwork.uaa.entity;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * 角色信息
+ *
+ * @author jiangxiaowei
+ * email: e-jiangxiaowei@outlook.com
+ * date: 2025-12-09 16:29:22
+ */
+@TableName("sys_role")
+public class SysRole implements Serializable {
+    @Serial
+    private static final long serialVersionUID = 1L;
+    /**
+     * id
+     */
+    @TableId
+    private Long id;
+    /**
+     * 父级角色
+     */
+    private Long parentId;
+    /**
+     * 角色分组 父级角色组id
+     */
+    private String parentIds;
+    /**
+     * 角色名称
+     */
+    private String roleName;
+    /**
+     * 角色类型0普通角色1普通管理员2区域管理员3平台管理员5系统管理员9超级管理员
+     */
+    private String roleType;
+    /**
+     * 角色描述
+     */
+    private String roleDesc;
+    /**
+     * 角色级别
+     */
+    private String roleLevel;
+    /**
+     * 是否系统数据0否1是
+     */
+    private Integer isSys;
+    /**
+     * 启用0否1是
+     */
+    private Integer enabled;
+    /**
+     * 排序
+     */
+    private Long sort;
+    /**
+     * 状态:对问题在某一时刻进展情况的数学描述,默认0
+     */
+    private Integer state;
+    /**
+     * 状态字符类型
+     */
+    private String status;
+    /**
+     * 是否删除默认0.未删除,1已删除
+     */
+    private String delFlag;
+    /**
+     * 创建人
+     */
+    private String creator;
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+    /**
+     * 修改人
+     */
+    private String modifier;
+    /**
+     * 修改时间
+     */
+    private Date updateTime;
+    /**
+     * 备注
+     */
+    private String remark;
+
+    @Override
+    public String toString() {
+        return "SysRole{" +
+                "id=" + id +
+                ", parentId=" + parentId +
+                ", parentIds='" + parentIds + '\'' +
+                ", roleName='" + roleName + '\'' +
+                ", roleType='" + roleType + '\'' +
+                ", roleDesc='" + roleDesc + '\'' +
+                ", roleLevel='" + roleLevel + '\'' +
+                ", isSys=" + isSys +
+                ", enabled=" + enabled +
+                ", sort=" + sort +
+                ", state=" + state +
+                ", status='" + status + '\'' +
+                ", delFlag='" + delFlag + '\'' +
+                ", creator='" + creator + '\'' +
+                ", createTime=" + createTime +
+                ", modifier='" + modifier + '\'' +
+                ", updateTime=" + updateTime +
+                ", remark='" + remark + '\'' +
+                '}';
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (o == null || getClass() != o.getClass()) return false;
+        SysRole sysRole = (SysRole) o;
+        return Objects.equals(id, sysRole.id) && Objects.equals(parentId, sysRole.parentId) && Objects.equals(parentIds, sysRole.parentIds) && Objects.equals(roleName, sysRole.roleName) && Objects.equals(roleType, sysRole.roleType) && Objects.equals(roleDesc, sysRole.roleDesc) && Objects.equals(roleLevel, sysRole.roleLevel) && Objects.equals(isSys, sysRole.isSys) && Objects.equals(enabled, sysRole.enabled) && Objects.equals(sort, sysRole.sort) && Objects.equals(state, sysRole.state) && Objects.equals(status, sysRole.status) && Objects.equals(delFlag, sysRole.delFlag) && Objects.equals(creator, sysRole.creator) && Objects.equals(createTime, sysRole.createTime) && Objects.equals(modifier, sysRole.modifier) && Objects.equals(updateTime, sysRole.updateTime) && Objects.equals(remark, sysRole.remark);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, parentId, parentIds, roleName, roleType, roleDesc, roleLevel, isSys, enabled, sort, state, status, delFlag, creator, createTime, modifier, updateTime, remark);
+    }
+
+    public String getRoleDesc() {
+        return roleDesc;
+    }
+
+    public void setRoleDesc(String roleDesc) {
+        this.roleDesc = roleDesc;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getParentId() {
+        return parentId;
+    }
+
+    public void setParentId(Long parentId) {
+        this.parentId = parentId;
+    }
+
+    public String getParentIds() {
+        return parentIds;
+    }
+
+    public void setParentIds(String parentIds) {
+        this.parentIds = parentIds;
+    }
+
+    public String getRoleName() {
+        return roleName;
+    }
+
+    public void setRoleName(String roleName) {
+        this.roleName = roleName;
+    }
+
+    public String getRoleType() {
+        return roleType;
+    }
+
+    public void setRoleType(String roleType) {
+        this.roleType = roleType;
+    }
+
+    public String getRoleLevel() {
+        return roleLevel;
+    }
+
+    public void setRoleLevel(String roleLevel) {
+        this.roleLevel = roleLevel;
+    }
+
+    public Integer getIsSys() {
+        return isSys;
+    }
+
+    public void setIsSys(Integer isSys) {
+        this.isSys = isSys;
+    }
+
+    public Integer getEnabled() {
+        return enabled;
+    }
+
+    public void setEnabled(Integer enabled) {
+        this.enabled = enabled;
+    }
+
+    public Long getSort() {
+        return sort;
+    }
+
+    public void setSort(Long sort) {
+        this.sort = sort;
+    }
+
+    public Integer getState() {
+        return state;
+    }
+
+    public void setState(Integer state) {
+        this.state = state;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getDelFlag() {
+        return delFlag;
+    }
+
+    public void setDelFlag(String delFlag) {
+        this.delFlag = delFlag;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+}

+ 470 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/entity/SysUser.java

@@ -0,0 +1,470 @@
+package top.imwork.uaa.entity;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * 用户信息
+ *
+ * @author jiangxiaowei
+ * email: e-jiangxiaowei@outlook.com
+ * date: 2025-12-09 16:29:22
+ */
+@TableName("sys_user")
+public class SysUser implements Serializable {
+    @Serial
+    private static final long serialVersionUID = 1L;
+    /**
+     * 用户id
+     */
+    @TableId
+    private Long id;
+    /**
+     * 登录账号
+     */
+    private String loginName;
+    /**
+     * 登录密码
+     */
+    private String loginPassword;
+    /**
+     * 二次登录密码
+     */
+    private String secondLoginPassword;
+    /**
+     * 用户实名
+     */
+    private String userName;
+    /**
+     * 用户名拼音
+     */
+    private String userNamePinyin;
+    /**
+     * 用户姓名拼音缩写
+     */
+    private String userNameSpell;
+    /**
+     * 用户性别:0-男,1-女,2-保密
+     */
+    private String userGender;
+    /**
+     * 用户身份证
+     */
+    private String userIdCard;
+    /**
+     * 用户默认邮件地址
+     */
+    private String userEmail;
+    /**
+     * 用户默认手机号
+     */
+    private String userMobilPhone;
+    /**
+     * 用户默认地址
+     */
+    private String userAddress;
+    /**
+     * 用户详情
+     */
+    private String userDesc;
+    /**
+     * 用户类型 0为系统默认用户 ,1普通管理员,2为系统管理员,9超级管理员
+     */
+    private String userType;
+    /**
+     * 用户状态,默认为0,1代表无效,2是被锁定,3暂停使用
+     */
+    private String userStatus;
+    /**
+     * 用户头像 存储头像记录id
+     */
+    private String userAvatarId;
+    /**
+     * 用户昵称
+     */
+    private String userNickName;
+    /**
+     * 盐
+     */
+    private String salt;
+    /**
+     * 区分工号内外网.0.内网1.外网9.通用
+     */
+    private String dncnet;
+    /**
+     * 允许密码输入错误次数
+     */
+    private Integer allowedErrorTimes;
+    /**
+     * 登录错误次数
+     */
+    private Integer loginErrorTimes;
+    /**
+     * 是否支持单不同IP地址登录同一用户,0为不支持,1为支持
+     */
+    private String isDifferentIpLogin;
+    /**
+     * 最后登录时间
+     */
+    private Date lastLoginTime;
+    /**
+     * 启用0否1是
+     */
+    private Integer enabled;
+    /**
+     * 默认排序
+     */
+    private Long sort;
+    /**
+     * 系统层级状态的数学表述(默认0正常 1删除 2受限操作)
+     */
+    private Integer state;
+    /**
+     * 系统层级状态(默认0正常 1删除 2受限操作)
+     */
+    private String status;
+    /**
+     * 是否刪除(默认0 未删除 1已删除)
+     */
+    private String delFlag;
+    /**
+     * 创建人
+     */
+    private String creator;
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+    /**
+     * 修改人
+     */
+    private String modifier;
+    /**
+     * 修改时间
+     */
+    private Date updateTime;
+    /**
+     * 备注
+     */
+    private String remark;
+
+    @Override
+    public String toString() {
+        return "SysUser{" +
+                "id=" + id +
+                ", loginName='" + loginName + '\'' +
+                ", loginPassword='" + loginPassword + '\'' +
+                ", secondLoginPassword='" + secondLoginPassword + '\'' +
+                ", userName='" + userName + '\'' +
+                ", userNamePinyin='" + userNamePinyin + '\'' +
+                ", userNameSpell='" + userNameSpell + '\'' +
+                ", userGender='" + userGender + '\'' +
+                ", userIdCard='" + userIdCard + '\'' +
+                ", userEmail='" + userEmail + '\'' +
+                ", userMobilPhone='" + userMobilPhone + '\'' +
+                ", userAddress='" + userAddress + '\'' +
+                ", userDesc='" + userDesc + '\'' +
+                ", userType='" + userType + '\'' +
+                ", userStatus='" + userStatus + '\'' +
+                ", userAvatarId='" + userAvatarId + '\'' +
+                ", userNickName='" + userNickName + '\'' +
+                ", salt='" + salt + '\'' +
+                ", dncnet='" + dncnet + '\'' +
+                ", allowedErrorTimes=" + allowedErrorTimes +
+                ", loginErrorTimes=" + loginErrorTimes +
+                ", isDifferentIpLogin='" + isDifferentIpLogin + '\'' +
+                ", lastLoginTime=" + lastLoginTime +
+                ", enabled=" + enabled +
+                ", sort=" + sort +
+                ", state=" + state +
+                ", status='" + status + '\'' +
+                ", delFlag='" + delFlag + '\'' +
+                ", creator='" + creator + '\'' +
+                ", createTime=" + createTime +
+                ", modifier='" + modifier + '\'' +
+                ", updateTime=" + updateTime +
+                ", remark='" + remark + '\'' +
+                '}';
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (o == null || getClass() != o.getClass()) return false;
+        SysUser sysUser = (SysUser) o;
+        return Objects.equals(id, sysUser.id) && Objects.equals(loginName, sysUser.loginName) && Objects.equals(loginPassword, sysUser.loginPassword) && Objects.equals(secondLoginPassword, sysUser.secondLoginPassword) && Objects.equals(userName, sysUser.userName) && Objects.equals(userNamePinyin, sysUser.userNamePinyin) && Objects.equals(userNameSpell, sysUser.userNameSpell) && Objects.equals(userGender, sysUser.userGender) && Objects.equals(userIdCard, sysUser.userIdCard) && Objects.equals(userEmail, sysUser.userEmail) && Objects.equals(userMobilPhone, sysUser.userMobilPhone) && Objects.equals(userAddress, sysUser.userAddress) && Objects.equals(userDesc, sysUser.userDesc) && Objects.equals(userType, sysUser.userType) && Objects.equals(userStatus, sysUser.userStatus) && Objects.equals(userAvatarId, sysUser.userAvatarId) && Objects.equals(userNickName, sysUser.userNickName) && Objects.equals(salt, sysUser.salt) && Objects.equals(dncnet, sysUser.dncnet) && Objects.equals(allowedErrorTimes, sysUser.allowedErrorTimes) && Objects.equals(loginErrorTimes, sysUser.loginErrorTimes) && Objects.equals(isDifferentIpLogin, sysUser.isDifferentIpLogin) && Objects.equals(lastLoginTime, sysUser.lastLoginTime) && Objects.equals(enabled, sysUser.enabled) && Objects.equals(sort, sysUser.sort) && Objects.equals(state, sysUser.state) && Objects.equals(status, sysUser.status) && Objects.equals(delFlag, sysUser.delFlag) && Objects.equals(creator, sysUser.creator) && Objects.equals(createTime, sysUser.createTime) && Objects.equals(modifier, sysUser.modifier) && Objects.equals(updateTime, sysUser.updateTime) && Objects.equals(remark, sysUser.remark);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, loginName, loginPassword, secondLoginPassword, userName, userNamePinyin, userNameSpell, userGender, userIdCard, userEmail, userMobilPhone, userAddress, userDesc, userType, userStatus, userAvatarId, userNickName, salt, dncnet, allowedErrorTimes, loginErrorTimes, isDifferentIpLogin, lastLoginTime, enabled, sort, state, status, delFlag, creator, createTime, modifier, updateTime, remark);
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getLoginName() {
+        return loginName;
+    }
+
+    public void setLoginName(String loginName) {
+        this.loginName = loginName;
+    }
+
+    public String getLoginPassword() {
+        return loginPassword;
+    }
+
+    public void setLoginPassword(String loginPassword) {
+        this.loginPassword = loginPassword;
+    }
+
+    public String getSecondLoginPassword() {
+        return secondLoginPassword;
+    }
+
+    public void setSecondLoginPassword(String secondLoginPassword) {
+        this.secondLoginPassword = secondLoginPassword;
+    }
+
+    public String getUserNamePinyin() {
+        return userNamePinyin;
+    }
+
+    public void setUserNamePinyin(String userNamePinyin) {
+        this.userNamePinyin = userNamePinyin;
+    }
+
+    public String getUserNameSpell() {
+        return userNameSpell;
+    }
+
+    public void setUserNameSpell(String userNameSpell) {
+        this.userNameSpell = userNameSpell;
+    }
+
+    public String getUserGender() {
+        return userGender;
+    }
+
+    public void setUserGender(String userGender) {
+        this.userGender = userGender;
+    }
+
+    public String getUserIdCard() {
+        return userIdCard;
+    }
+
+    public void setUserIdCard(String userIdCard) {
+        this.userIdCard = userIdCard;
+    }
+
+    public String getUserEmail() {
+        return userEmail;
+    }
+
+    public void setUserEmail(String userEmail) {
+        this.userEmail = userEmail;
+    }
+
+    public String getUserMobilPhone() {
+        return userMobilPhone;
+    }
+
+    public void setUserMobilPhone(String userMobilPhone) {
+        this.userMobilPhone = userMobilPhone;
+    }
+
+    public String getUserAddress() {
+        return userAddress;
+    }
+
+    public void setUserAddress(String userAddress) {
+        this.userAddress = userAddress;
+    }
+
+    public String getUserDesc() {
+        return userDesc;
+    }
+
+    public void setUserDesc(String userDesc) {
+        this.userDesc = userDesc;
+    }
+
+    public String getUserType() {
+        return userType;
+    }
+
+    public void setUserType(String userType) {
+        this.userType = userType;
+    }
+
+    public String getUserStatus() {
+        return userStatus;
+    }
+
+    public void setUserStatus(String userStatus) {
+        this.userStatus = userStatus;
+    }
+
+    public String getUserAvatarId() {
+        return userAvatarId;
+    }
+
+    public void setUserAvatarId(String userAvatarId) {
+        this.userAvatarId = userAvatarId;
+    }
+
+    public String getUserNickName() {
+        return userNickName;
+    }
+
+    public void setUserNickName(String userNickName) {
+        this.userNickName = userNickName;
+    }
+
+    public String getSalt() {
+        return salt;
+    }
+
+    public void setSalt(String salt) {
+        this.salt = salt;
+    }
+
+    public String getDncnet() {
+        return dncnet;
+    }
+
+    public void setDncnet(String dncnet) {
+        this.dncnet = dncnet;
+    }
+
+    public Integer getAllowedErrorTimes() {
+        return allowedErrorTimes;
+    }
+
+    public void setAllowedErrorTimes(Integer allowedErrorTimes) {
+        this.allowedErrorTimes = allowedErrorTimes;
+    }
+
+    public Integer getLoginErrorTimes() {
+        return loginErrorTimes;
+    }
+
+    public void setLoginErrorTimes(Integer loginErrorTimes) {
+        this.loginErrorTimes = loginErrorTimes;
+    }
+
+    public String getIsDifferentIpLogin() {
+        return isDifferentIpLogin;
+    }
+
+    public void setIsDifferentIpLogin(String isDifferentIpLogin) {
+        this.isDifferentIpLogin = isDifferentIpLogin;
+    }
+
+    public Date getLastLoginTime() {
+        return lastLoginTime;
+    }
+
+    public void setLastLoginTime(Date lastLoginTime) {
+        this.lastLoginTime = lastLoginTime;
+    }
+
+    public Integer getEnabled() {
+        return enabled;
+    }
+
+    public void setEnabled(Integer enabled) {
+        this.enabled = enabled;
+    }
+
+    public Long getSort() {
+        return sort;
+    }
+
+    public void setSort(Long sort) {
+        this.sort = sort;
+    }
+
+    public Integer getState() {
+        return state;
+    }
+
+    public void setState(Integer state) {
+        this.state = state;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getDelFlag() {
+        return delFlag;
+    }
+
+    public void setDelFlag(String delFlag) {
+        this.delFlag = delFlag;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+}

+ 12 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/service/ISysRoleService.java

@@ -0,0 +1,12 @@
+package top.imwork.uaa.service;
+
+/**
+ * 角色信息
+ *
+ * @author jiangxiaowei
+ * email: e-jiangxiaowei@outlook.com
+ * date: 2025-12-09 16:29:22
+ */
+public interface ISysRoleService{
+}
+

+ 13 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/service/ISysUserService.java

@@ -0,0 +1,13 @@
+package top.imwork.uaa.service;
+
+/**
+ * 用户信息
+ *
+ * @author jiangxiaowei
+ * email: e-jiangxiaowei@outlook.com
+ * date: 2025-12-09 16:29:22
+ */
+public interface ISysUserService{
+
+}
+

+ 14 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/service/impl/SysRoleServiceImpl.java

@@ -0,0 +1,14 @@
+package top.imwork.uaa.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import jakarta.annotation.Resource;
+import org.springframework.stereotype.Service;
+import top.imwork.uaa.dao.SysRoleDao;
+import top.imwork.uaa.entity.SysRole;
+import top.imwork.uaa.service.ISysRoleService;
+
+@Service("sysRoleService")
+public class SysRoleServiceImpl extends ServiceImpl<SysRoleDao, SysRole> implements ISysRoleService {
+    @Resource
+    private SysRoleDao sysRoleDao;
+}

+ 15 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/service/impl/SysUserServiceImpl.java

@@ -0,0 +1,15 @@
+package top.imwork.uaa.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import jakarta.annotation.Resource;
+import org.springframework.stereotype.Service;
+import top.imwork.uaa.dao.SysUserDao;
+import top.imwork.uaa.entity.SysUser;
+import top.imwork.uaa.service.ISysUserService;
+
+@Service("sysUserService")
+public class SysUserServiceImpl extends ServiceImpl<SysUserDao, SysUser> implements ISysUserService {
+    @Resource
+    private SysUserDao sysUserDao;
+
+}

+ 18 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/utils/UaaUtils.java

@@ -0,0 +1,18 @@
+package top.imwork.uaa.utils;
+
+/**
+ * Copyright (C), 2015-2022
+ * FileName: UaaUtils
+ * Author<作者姓名>:   jiangxiaowei
+ * CreateTime<创建时间>:   2022/6/22 17:22
+ * UpdateTime<修改时间>:   2022/6/22 17:22
+ * Description〈功能简述〉:
+ * History<历史描述>:
+ * Since<版本号>: 1.0.0
+ */
+public final class UaaUtils {
+    private UaaUtils() {
+        throw new IllegalStateException("Utility class");
+    }
+
+}

+ 63 - 0
imwork-iaas/imwork-uaa-service/src/main/java/top/imwork/uaa/vo/LoginParamVO.java

@@ -0,0 +1,63 @@
+package top.imwork.uaa.vo;
+
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
+
+import java.io.Serializable;
+
+/**
+ * Copyright (C), 2015-2020
+ * FileName: LoginParam
+ * Author:   imwork
+ * Date:     2020/5/11 0011 22:30
+ * Description: 登录参数接收
+ * History:
+ * <author>          <time>          <version>          <desc>
+ * 作者姓名           修改时间           版本号              描述
+ */
+public class LoginParamVO implements Serializable {
+
+    @NotBlank(message = "用户姓名不能为空!")
+    @NotNull(message = "用户姓名不能为空!")
+    private String username;
+
+    @NotBlank(message = "密码不能为空!")
+    @NotNull(message = "密码不能为空!")
+    private String password;
+
+    private String clientId;
+
+    private String clientSecret;
+
+    public String getUsername() {
+        return username;
+    }
+
+    public void setUsername(String username) {
+        this.username = username;
+    }
+
+    public String getPassword() {
+        return password;
+    }
+
+    public void setPassword(String password) {
+        this.password = password;
+    }
+
+    public String getClientId() {
+        return clientId;
+    }
+
+    public void setClientId(String clientId) {
+        this.clientId = clientId;
+    }
+
+    public String getClientSecret() {
+        return clientSecret;
+    }
+
+    public void setClientSecret(String clientSecret) {
+        this.clientSecret = clientSecret;
+    }
+}

+ 76 - 0
imwork-iaas/imwork-uaa-service/src/main/resources/mapper/SysRoleDao.xml

@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="top.imwork.uaa.dao.SysRoleDao">
+    <resultMap type="top.imwork.uaa.entity.SysRole" id="BaseResultMap">
+            <result property="id" column="id"/>
+            <result property="parentId" column="parent_id"/>
+            <result property="parentIds" column="parent_ids"/>
+            <result property="roleName" column="role_name"/>
+            <result property="roleType" column="role_type"/>
+            <result property="roleDesc" column="role_desc"/>
+            <result property="roleLevel" column="role_level"/>
+            <result property="isSys" column="is_sys"/>
+            <result property="enabled" column="enabled"/>
+            <result property="sort" column="sort"/>
+            <result property="state" column="state"/>
+            <result property="status" column="status"/>
+            <result property="delFlag" column="del_flag"/>
+            <result property="creator" column="creator"/>
+            <result property="createTime" column="create_time"/>
+            <result property="modifier" column="modifier"/>
+            <result property="updateTime" column="update_time"/>
+            <result property="remark" column="remark"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,
+        parent_id,
+        parent_ids,
+        role_name,
+        role_type,
+        role_desc,
+        role_level,
+        is_sys,
+        enabled,
+        sort,
+        state,
+        status,
+        del_flag,
+        creator,
+        create_time,
+        modifier,
+        update_time,
+        remark
+    </sql>
+
+    <!--根据ids批量删除-->
+    <update id="deleteByIds" parameterType="ArrayList">
+        update sys_role
+        set del_flag = 'Y'
+        where id in
+        <foreach item="ids" collection="array" open="(" separator=","  close=")">
+            #{ids}
+        </foreach>
+    </update>
+
+    <!--根据id查询信息-->
+    <select id="info" resultMap="BaseResultMap" parameterType="long">
+        select *
+        from sys_role
+        where 1 = 1
+        and id = #{id}
+    </select>
+
+    <!--分页查询-->
+    <select id="queryPage" resultType="top.imwork.window.silos.entity.SysRole">
+        select *
+        from sys_role ${ew.customSqlSegment}
+    </select>
+
+    <select id="getRolesByUserId" resultMap="BaseResultMap" parameterType="long">
+        select * from sys_role sr
+        where sr.id in
+              (select sur.role_id from sys_user_role sur where sur.user_id = #{uid,jdbcType=BIGINT}) and sr.del_flag = '0'
+    </select>
+</mapper>

+ 107 - 0
imwork-iaas/imwork-uaa-service/src/main/resources/mapper/SysUserDao.xml

@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="top.imwork.uaa.dao.SysUserDao">
+    <resultMap type="top.imwork.uaa.entity.SysUser" id="BaseResultMap">
+            <result property="id" column="id"/>
+            <result property="loginName" column="login_name"/>
+            <result property="loginPassword" column="login_password"/>
+            <result property="secondLoginPassword" column="second_login_password"/>
+            <result property="userName" column="user_name"/>
+            <result property="userNamePinyin" column="user_name_pinyin"/>
+            <result property="userNameSpell" column="user_name_spell"/>
+            <result property="userGender" column="user_gender"/>
+            <result property="userIdCard" column="user_id_card"/>
+            <result property="userEmail" column="user_email"/>
+            <result property="userMobilPhone" column="user_mobil_phone"/>
+            <result property="userAddress" column="user_address"/>
+            <result property="userDesc" column="user_desc"/>
+            <result property="userType" column="user_type"/>
+            <result property="userStatus" column="user_status"/>
+            <result property="userAvatarId" column="user_avatar_id"/>
+            <result property="userNickName" column="user_nick_name"/>
+            <result property="salt" column="salt"/>
+            <result property="dncnet" column="dncnet"/>
+            <result property="allowedErrorTimes" column="allowed_error_times"/>
+            <result property="loginErrorTimes" column="login_error_times"/>
+            <result property="isDifferentIpLogin" column="is_different_ip_login"/>
+            <result property="lastLoginTime" column="last_login_time"/>
+            <result property="enabled" column="enabled"/>
+            <result property="sort" column="sort"/>
+            <result property="state" column="state"/>
+            <result property="status" column="status"/>
+            <result property="delFlag" column="del_flag"/>
+            <result property="creator" column="creator"/>
+            <result property="createTime" column="create_time"/>
+            <result property="modifier" column="modifier"/>
+            <result property="updateTime" column="update_time"/>
+            <result property="remark" column="remark"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,
+        login_name,
+        login_password,
+        second_login_password,
+        user_name,
+        user_name_pinyin,
+        user_name_spell,
+        user_gender,
+        user_id_card,
+        user_email,
+        user_mobil_phone,
+        user_address,
+        user_desc,
+        user_type,
+        user_status,
+        user_avatar_id,
+        user_nick_name,
+        salt,
+        dncnet,
+        allowed_error_times,
+        login_error_times,
+        is_different_ip_login,
+        last_login_time,
+        enabled,
+        sort,
+        state,
+        status,
+        del_flag,
+        creator,
+        create_time,
+        modifier,
+        update_time,
+        remark
+    </sql>
+
+    <!--根据ids批量删除-->
+    <update id="deleteByIds" parameterType="ArrayList">
+        update sys_user
+        set del_flag = 'Y'
+        where id in
+        <foreach item="ids" collection="array" open="(" separator=","  close=")">
+            #{ids}
+        </foreach>
+    </update>
+
+    <!--根据id查询信息-->
+    <select id="info" resultMap="BaseResultMap" parameterType="long">
+        select *
+        from sys_user
+        where 1 = 1
+        and id = #{id}
+    </select>
+
+    <!--分页查询-->
+    <select id="queryPage" resultType="top.imwork.window.silos.entity.SysUser">
+        select *
+        from sys_user ${ew.customSqlSegment}
+    </select>
+    <select id="getUserByAccount" resultMap="BaseResultMap" parameterType="string">
+        select *
+        from sys_user
+        where 1 = 1
+          and (login_name = #{account,jdbcType=VARCHAR} or user_email = #{account,jdbcType=VARCHAR} or
+               user_mobil_phone = #{account,jdbcType=VARCHAR})
+    </select>
+</mapper>