From 5f398d6fcd6d3f7f8f53295b4a6786b70dc69762 Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Sat, 16 Aug 2025 19:03:15 +0800 Subject: [PATCH] =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/bonus/system/api/domain/SysRole.java | 31 ++++++ .../com/bonus/system/api/domain/SysUser.java | 102 ++++++++++++++---- .../system/controller/SysRoleController.java | 2 +- .../system/controller/SysUserController.java | 49 ++++++--- .../com/bonus/system/domain/vo/SelectVo.java | 26 +++++ .../bonus/system/mapper/SysUserMapper.java | 3 + .../bonus/system/service/ISysUserService.java | 3 +- .../impl/PasswordValidatorServiceImpl.java | 12 +-- .../service/impl/SysDeptServiceImpl.java | 5 +- .../service/impl/SysMenuServiceImpl.java | 4 +- .../service/impl/SysRoleServiceImpl.java | 4 +- .../service/impl/SysUserServiceImpl.java | 32 ++++-- .../resources/mapper/system/SysRoleMapper.xml | 30 ++++-- .../resources/mapper/system/SysUserMapper.xml | 86 +++++++++++---- 14 files changed, 304 insertions(+), 85 deletions(-) create mode 100644 bonus-modules/bonus-system/src/main/java/com/bonus/system/domain/vo/SelectVo.java diff --git a/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysRole.java b/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysRole.java index 83570b2..9872b70 100644 --- a/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysRole.java +++ b/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysRole.java @@ -76,6 +76,13 @@ public class SysRole extends BaseEntity /**是否内置,0内置,1非内置*/ private String isBuiltIn; + /**角色级别*/ + private String roleLevel; + /**角色级别描述*/ + private String roleLevelTips; + /**角色级别名称*/ + private String roleLevelName; + public SysRole() { @@ -266,4 +273,28 @@ public class SysRole extends BaseEntity public void setIsBuiltIn(String isBuiltIn) { this.isBuiltIn = isBuiltIn; } + + public String getRoleLevel() { + return roleLevel; + } + + public void setRoleLevel(String roleLevel) { + this.roleLevel = roleLevel; + } + + public String getRoleLevelTips() { + return roleLevelTips; + } + + public void setRoleLevelTips(String roleLevelTips) { + this.roleLevelTips = roleLevelTips; + } + + public String getRoleLevelName() { + return roleLevelName; + } + + public void setRoleLevelName(String roleLevelName) { + this.roleLevelName = roleLevelName; + } } diff --git a/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java b/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java index 1e3f978..943e0b9 100644 --- a/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java +++ b/bonus-api/bonus-api-system/src/main/java/com/bonus/system/api/domain/SysUser.java @@ -30,49 +30,49 @@ public class SysUser extends BaseEntity { /** * 用户ID */ - @Excel(name = "用户序号", type = Type.EXPORT, cellType = ColumnType.NUMERIC, prompt = "用户编号") +// @Excel(name = "用户序号", type = Type.EXPORT, cellType = ColumnType.NUMERIC, prompt = "用户编号") private Long userId; /** * 部门ID */ - @Excel(name = "部门编号", type = Type.IMPORT) +// @Excel(name = "部门编号", type = Type.IMPORT) private Long deptId; /** * 公司ID */ - @Excel(name = "公司编号", type = Type.IMPORT) +// @Excel(name = "公司编号", type = Type.IMPORT) private Long companyId; /** * 用户账号 */ - @Excel(name = "登录名称") + @Excel(name = "登录账号") private String userName; /** * 用户昵称 */ - @Excel(name = "用户名称") + @Excel(name = "姓名") private String nickName; /** * 用户邮箱 */ - @Excel(name = "用户邮箱") +// @Excel(name = "用户邮箱") private String email; /** * 手机号码 */ - @Excel(name = "手机号码", cellType = ColumnType.TEXT) +// @Excel(name = "手机号码", cellType = ColumnType.TEXT) private String phonenumber; /** * 用户性别 */ - @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") +// @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") private String sex; /** @@ -85,11 +85,10 @@ public class SysUser extends BaseEntity { */ private String password; - /** - * 帐号状态(0正常 1停用) - */ - @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用") - private String status; + @Excel(name = "角色") + private String roleName; + + /** * 删除标志(0代表存在 2代表删除) @@ -99,22 +98,22 @@ public class SysUser extends BaseEntity { /** * 最后登录IP */ - @Excel(name = "最后登录IP", type = Type.EXPORT) +// @Excel(name = "最后登录IP", type = Type.EXPORT) private String loginIp; /** * 最后登录时间 */ - @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT) +// @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT) private Date loginDate; /** * 部门对象 */ - @Excels({ - @Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT), - @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT) - }) +// @Excels({ +// @Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT), +// @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT) +// }) private SysDept dept; /** @@ -140,11 +139,11 @@ public class SysUser extends BaseEntity { /** * 登录权限 */ - private String loginType; + private String loginType = "0"; /** * 审批状态 */ - private String approvalStatus; + private String approvalStatus = "1"; /** * 长期和临时用户标识 */ @@ -153,6 +152,27 @@ public class SysUser extends BaseEntity { /**是否内置,0内置,1非内置*/ private String isBuiltIn = "1"; + /**角色等级*/ + @Excel(name = "角色级别") + private String roleLevel; + + /**绑定id*/ + private Long bandId; + + /**1 公司 2 分公司 3 项目部 4分包商 5施工人员*/ + private String permissionType; + /**权限范围*/ + @Excel(name = "权限范围") + private String permissionRange; + + /** + * 帐号状态(0正常 1停用) + */ + @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用") + private String status; + + /**角色名称*/ + public SysUser() { } @@ -387,4 +407,44 @@ public class SysUser extends BaseEntity { public void setIsBuiltIn(String isBuiltIn) { this.isBuiltIn = isBuiltIn; } + + public String getRoleLevel() { + return roleLevel; + } + + public void setRoleLevel(String roleLevel) { + this.roleLevel = roleLevel; + } + + public Long getBandId() { + return bandId; + } + + public void setBandId(Long bandId) { + this.bandId = bandId; + } + + public String getPermissionType() { + return permissionType; + } + + public void setPermissionType(String permissionType) { + this.permissionType = permissionType; + } + + public String getPermissionRange() { + return permissionRange; + } + + public void setPermissionRange(String permissionRange) { + this.permissionRange = permissionRange; + } + + public String getRoleName() { + return roleName; + } + + public void setRoleName(String roleName) { + this.roleName = roleName; + } } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysRoleController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysRoleController.java index 93096d9..4e0d1a6 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysRoleController.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysRoleController.java @@ -126,7 +126,7 @@ public class SysRoleController extends BaseController @SysLog(title = "角色管理", businessType = OperaType.UPDATE,logType = 0,module = "系统管理->角色管理",details = "修改角色") public AjaxResult edit(@Validated @RequestBody SysRole role) { try{ - roleService.checkRoleAllowed(role); +// roleService.checkRoleAllowed(role); roleService.checkRoleDataScope(role.getRoleId()); if (!roleService.checkRoleNameUnique(role)) { return error("修改角色'" + role.getRoleName() + "'失败,角色名称已存在"); diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java index b974f07..3f0f351 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/controller/SysUserController.java @@ -22,6 +22,7 @@ import com.bonus.system.api.model.LoginUser; import com.bonus.system.domain.UserPasswordHistory; import com.bonus.system.service.*; import com.bonus.system.warning.WebSocketHandler; +import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.ArrayUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; @@ -33,6 +34,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; /** * 用户信息 @@ -140,10 +142,10 @@ public class SysUserController extends BaseController { if (StringUtils.isNull(sysUser)) { return R.fail("用户名或密码错误"); } - SysDept sysDept = deptService.selectActiveDeptById(sysUser.getCompanyId()); + /*SysDept sysDept = deptService.selectActiveDeptById(sysUser.getCompanyId()); if (StringUtils.isNull(sysDept)) { return R.fail("用户所在公司停用或注销"); - } + }*/ // 角色集合 Set roles = permissionService.getRolePermission(sysUser); // 权限集合 @@ -166,10 +168,10 @@ public class SysUserController extends BaseController { if (StringUtils.isNull(sysUser)) { return R.fail("用户名或密码错误"); } - SysDept sysDept = deptService.selectActiveDeptById(sysUser.getCompanyId()); + /*SysDept sysDept = deptService.selectActiveDeptById(sysUser.getCompanyId()); if (StringUtils.isNull(sysDept)) { return R.fail("用户所在公司停用或注销"); - } + }*/ // 角色集合 Set roles = permissionService.getRolePermission(sysUser); // 权限集合 @@ -302,9 +304,9 @@ public class SysUserController extends BaseController { @SysLog(title = "用户管理", businessType = OperaType.INSERT, logType = 0, module = "系统管理->用户管理", details = "新增用户信息") public AjaxResult add(@Validated @RequestBody SysUser user) { try { - deptService.checkDeptDataScope(user.getDeptId()); - roleService.checkRoleDataScope(user.getRoleIds()); - if (!userService.checkUserNameUnique(user)) { +// deptService.checkDeptDataScope(user.getDeptId()); +// roleService.checkRoleDataScope(user.getRoleIds()); + /*if (!userService.checkUserNameUnique(user)) { return error("新增用户'" + user.getUserName() + "'失败,登录账号已存在"); } else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) { return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在"); @@ -312,18 +314,23 @@ public class SysUserController extends BaseController { return error("新增用户'" + user.getUserName() + "'失败,邮箱账号已存在"); } else if (Objects.equals(user.getIsBuiltIn(), "0")){ return error("内置用户不允许添加"); - } + }*/ /*String pwd = ValidateUtils.isPwd(user.getPassword()); if (StringUtils.isNotEmpty(pwd)) { return error("新增用户'" + user.getUserName() + "'失败," + pwd); }*/ + if (StringUtils.isNotEmpty(user.getUserName()) && !userService.checkPhoneUnique(user)) { + return error("新增用户失败,登录账号已存在"); + } + // 设置默认密码 + user.setPassword("HDsbd@123456"); AjaxResult ajaxResult = passwordValidatorService.validatePassword(-100L, user.getUserName(), "", user.getPassword()); if (ajaxResult.isError()) { return ajaxResult; } user.setCreateBy(SecurityUtils.getUsername()); user.setPassword(SecurityUtils.encryptPassword(user.getPassword())); - + user.setRoleIds(Stream.of(user.getRoleId()).toArray(Long[]::new)); return toAjax(userService.insertUser(user)); } catch (Exception e) { logger.error(e.toString(), e); @@ -339,20 +346,22 @@ public class SysUserController extends BaseController { @SysLog(title = "用户管理", businessType = OperaType.UPDATE, logType = 0, module = "系统管理->用户管理", details = "修改用户信息") public AjaxResult edit(@Validated @RequestBody SysUser user) { try { - userService.checkUserAllowed(user); - userService.checkUserDataScope(user.getUserId()); - deptService.checkDeptDataScope(user.getDeptId()); - roleService.checkRoleDataScope(user.getRoleIds()); +// userService.checkUserAllowed(user); +// userService.checkUserDataScope(user.getUserId()); +// deptService.checkDeptDataScope(user.getDeptId()); +// roleService.checkRoleDataScope(user.getRoleIds()); if (!userService.checkUserNameUnique(user)) { - return error("修改用户'" + user.getUserName() + "'失败,登录账号已存在"); - } else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) { + return error("修改用户失败,登录账号已存在"); + } + /*else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) { return error("修改用户'" + user.getUserName() + "'失败,手机号码已存在"); } else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) { return error("修改用户'" + user.getUserName() + "'失败,邮箱账号已存在"); }else if (Objects.equals(user.getIsBuiltIn(), "0")){ return error("内置用户不允许修改"); - } + }*/ user.setUpdateBy(SecurityUtils.getUsername()); + user.setRoleIds(Stream.of(user.getRoleId()).toArray(Long[]::new)); return toAjax(userService.updateUser(user)); } catch (Exception e) { logger.error(e.toString(), e); @@ -569,10 +578,16 @@ public class SysUserController extends BaseController { @PostMapping("/confirmPassword") public AjaxResult confirmPassword(@RequestBody SysUser user) { - Long userId = SecurityUtils.getUserId(); + Long userId = Optional.ofNullable(user.getUserId()).orElse(SecurityUtils.getUserId()); user.setUserId(userId); SysUser sysUser = userService.selectUserById(user.getUserId()); boolean b = SecurityUtils.matchesPassword(user.getPassword(), sysUser.getPassword()); return b? success():error("密码错误"); } + + @ApiOperation(value = "获取角色下拉选") + @PostMapping("/getRoleList") + public AjaxResult getRoleList(@RequestBody SysRole role) { + return userService.getRoleList(role); + } } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/domain/vo/SelectVo.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/domain/vo/SelectVo.java new file mode 100644 index 0000000..5383977 --- /dev/null +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/domain/vo/SelectVo.java @@ -0,0 +1,26 @@ +package com.bonus.system.domain.vo; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.Data; + +/** + * @className:SelectVo + * @author:cwchen + * @date:2025-08-16-13:40 + * @version:1.0 + * @description:下拉选-vo + */ +@Data +public class SelectVo { + + /**id*/ + private Long value; + /**名称*/ + private String name; + /**角色级别名称*/ + @JsonInclude(JsonInclude.Include.NON_NULL) + private String level; + /**角色级别类型*/ + @JsonInclude(JsonInclude.Include.NON_NULL) + private String levelType; +} diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java index cfbac2c..66fd84e 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/mapper/SysUserMapper.java @@ -1,6 +1,7 @@ package com.bonus.system.mapper; import com.bonus.system.api.domain.SysUser; +import com.bonus.system.domain.vo.SelectVo; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -155,4 +156,6 @@ public interface SysUserMapper { Integer approvalStatus(Long userId); int systemUpdateUser(SysUser user); + + List getRoleList(int type); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java index 7e50d00..612deb2 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/ISysUserService.java @@ -2,6 +2,7 @@ package com.bonus.system.service; import com.bonus.common.core.domain.R; import com.bonus.common.core.web.domain.AjaxResult; +import com.bonus.system.api.domain.SysRole; import com.bonus.system.api.domain.SysUser; import org.apache.poi.ss.formula.functions.T; import org.aspectj.weaver.loadtime.Aj; @@ -237,5 +238,5 @@ public interface ISysUserService { public AjaxResult systemUpdateUser(SysUser user); - + AjaxResult getRoleList(SysRole role); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/PasswordValidatorServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/PasswordValidatorServiceImpl.java index 17953a3..a8d3f5d 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/PasswordValidatorServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/PasswordValidatorServiceImpl.java @@ -43,14 +43,14 @@ public class PasswordValidatorServiceImpl implements PasswordValidatorService { } // 3. 检查常见弱密码 - if (containsWeakPassword(newPassword.toLowerCase())) { + /*if (containsWeakPassword(newPassword.toLowerCase())) { return AjaxResult.error("密码包含常见的弱密码片段!"); - } + }*/ // 4. 检查连续字符 - if (systemConfig.getPasswordConfig().isRestrictConsecutiveChars() && containsConsecutiveCharacters(newPassword.toLowerCase(), systemConfig.getPasswordConfig().getMaxConsecutiveChars())) { + /*if (systemConfig.getPasswordConfig().isRestrictConsecutiveChars() && containsConsecutiveCharacters(newPassword.toLowerCase(), systemConfig.getPasswordConfig().getMaxConsecutiveChars())) { return AjaxResult.error("密码不能包含超过" + systemConfig.getPasswordConfig().getMaxConsecutiveChars() + "位连续字符!"); - } + }*/ // 5. 检查用户名 if (systemConfig.getPasswordConfig().isExcludeUsernameInPassword() && newPassword.toLowerCase().contains(username.toLowerCase())) { @@ -63,9 +63,9 @@ public class PasswordValidatorServiceImpl implements PasswordValidatorService { } // 7. 检查密码历史 - if (isPasswordInHistory(userId, newPassword)) { + /*if (isPasswordInHistory(userId, newPassword)) { return AjaxResult.error("新密码不能与最近的" + systemConfig.getPasswordConfig().getPasswordHistoryLimit() + "个旧密码相同!"); - } + }*/ return AjaxResult.success(); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysDeptServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysDeptServiceImpl.java index 8d557fc..d4ac537 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysDeptServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysDeptServiceImpl.java @@ -203,11 +203,12 @@ public class SysDeptServiceImpl implements ISysDeptService @Override public SysDept selectDeptById(Long deptId) { - SysDept sysDept = deptMapper.selectDeptById(deptId); + /*SysDept sysDept = deptMapper.selectDeptById(deptId); if (systemConfig.isAddRootCompany() && Objects.nonNull(sysDept.getParentId()) && sysDept.getParentId().equals(0L)) { SysUser sysUser = deptMapper.selectCompanyAdminByDept(deptId); sysDept.setSysUser(sysUser); - } + }*/ + SysDept sysDept = new SysDept(); return sysDept; } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysMenuServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysMenuServiceImpl.java index 234786a..807e9ee 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysMenuServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysMenuServiceImpl.java @@ -75,8 +75,8 @@ public class SysMenuServiceImpl implements ISysMenuService String str = menu.getMenuName().replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_"); menu.setMenuName(str); } - SysDept sysDept = deptMapper.selectDeptById(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); - menu.setTemplateId(sysDept.getMenuTemplateId()); +// SysDept sysDept = deptMapper.selectDeptById(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); +// menu.setTemplateId(sysDept.getMenuTemplateId()); List menuList = menuMapper.selectMenuList(menu); return menuList; } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysRoleServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysRoleServiceImpl.java index 359d6bc..365e195 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysRoleServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysRoleServiceImpl.java @@ -77,7 +77,7 @@ public class SysRoleServiceImpl implements ISysRoleService String str = role.getRoleKey().replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_"); role.setRoleKey(str); } - role.setCompanyId(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); +// role.setCompanyId(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); return roleMapper.selectRoleList(role); } @@ -262,7 +262,7 @@ public class SysRoleServiceImpl implements ISysRoleService public int insertRole(SysRole role) { // 新增角色信息 - role.setCompanyId(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); +// role.setCompanyId(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); roleMapper.insertRole(role); return insertRoleMenu(role); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java index 8450045..7b14fff 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java @@ -11,6 +11,7 @@ import com.bonus.common.core.utils.encryption.Sm4Utils; import com.bonus.common.core.utils.sms.SmsUtils; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.core.web.domain.BaseEntity; +import com.bonus.common.core.web.domain.TreeEntity; import com.bonus.common.datascope.annotation.DataScope; import com.bonus.common.datascope.utils.CommonDataPermissionInfo; import com.bonus.common.security.config.VerificationCodeConfig; @@ -20,11 +21,13 @@ import com.bonus.system.api.domain.SysRole; import com.bonus.system.api.domain.SysUser; import com.bonus.system.api.domain.SysUserRole; import com.bonus.system.domain.SysUserPost; +import com.bonus.system.domain.vo.TreeSelect; import com.bonus.system.mapper.*; import com.bonus.system.service.ISysConfigService; import com.bonus.system.service.ISysDeptService; import com.bonus.system.service.ISysUserService; import org.apache.poi.ss.formula.functions.T; +import org.checkerframework.checker.units.qual.A; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; @@ -40,6 +43,7 @@ import javax.validation.Validator; import java.util.ArrayList; import java.util.List; import java.util.Objects; +import java.util.Optional; import java.util.stream.Collectors; /** @@ -109,7 +113,7 @@ public class SysUserServiceImpl implements ISysUserService { String phone =user.getPhonenumber().replace("\\", "\\\\").replace("%", "\\%").replace("_", "\\_"); user.setPhonenumber(phone); } - user.setCompanyId(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); +// user.setCompanyId(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); List sysUsers = userMapper.selectUserList(user); return sysUsers; } @@ -169,7 +173,8 @@ public class SysUserServiceImpl implements ISysUserService { */ @Override public SysUser selectUserByPhotoNumber(String photoNumber) { - return userMapper.selectUserByPhoneNumber(Sm4Utils.encrypt(photoNumber)); +// return userMapper.selectUserByPhoneNumber(Sm4Utils.encrypt(photoNumber)); + return userMapper.selectUserByPhoneNumber(photoNumber); } /** @@ -259,7 +264,8 @@ public class SysUserServiceImpl implements ISysUserService { @Override public boolean checkPhoneUnique(SysUser user) { Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId(); - SysUser info = userMapper.checkPhoneUnique(Sm4Utils.encrypt(user.getPhonenumber())); +// SysUser info = userMapper.checkPhoneUnique(Sm4Utils.encrypt(user.getPhonenumber())); + SysUser info = userMapper.checkPhoneUnique(user.getUserName()); if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue()) { return UserConstants.NOT_UNIQUE; } @@ -329,7 +335,7 @@ public class SysUserServiceImpl implements ISysUserService { // 新增用户信息 int rows = userMapper.insertUser(user); // 新增用户岗位关联 - insertUserPost(user); +// insertUserPost(user); // 新增用户与角色管理 insertUserRole(user); return rows; @@ -361,9 +367,9 @@ public class SysUserServiceImpl implements ISysUserService { // 新增用户与角色管理 insertUserRole(user); // 删除用户与岗位关联 - userPostMapper.deleteUserPostByUserId(userId); +// userPostMapper.deleteUserPostByUserId(userId); // 新增用户与岗位管理 - insertUserPost(user); +// insertUserPost(user); return userMapper.updateUser(user); } @@ -649,4 +655,18 @@ public class SysUserServiceImpl implements ISysUserService { return R.ok(); } + @Override + public AjaxResult getRoleList(SysRole role) { + try { + int type = 1; + if (StringUtils.isNotNull(role.getRoleId()) && role.isAdmin()){ + // 超管 + type = 2; + } + return AjaxResult.success(Optional.ofNullable(userMapper.getRoleList(type)).orElse(new ArrayList<>())); + } catch (Exception e) { + log.error(e.toString(),e); + return AjaxResult.error(); + } + } } diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysRoleMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysRoleMapper.xml index 1a8ccc1..6d64fb9 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysRoleMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysRoleMapper.xml @@ -21,15 +21,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + select distinct r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.menu_check_strictly, r.dept_check_strictly, - r.company_id, r.status, r.del_flag, r.create_time, r.remark, r.is_built_in + r.company_id, r.status, r.del_flag, r.create_time, r.remark, r.is_built_in, + r.role_level, + r.role_level_name, + r.role_level_tips from sys_role r left join sys_user_role ur on ur.role_id = r.role_id left join sys_user u on u.user_id = ur.user_id - left join sys_dept d on u.dept_id = d.dept_id @@ -120,7 +123,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" remark, create_by, is_built_in, - create_time + create_time, + role_level, + role_level_tips, + role_level_name )values( #{roleId}, #{roleName}, @@ -134,7 +140,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{remark}, #{createBy}, #{isBuiltIn}, - sysdate() + sysdate(), + #{roleLevel}, + #{roleLevelTips}, + #{roleLevelName} ) @@ -152,7 +161,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" remark = #{remark}, update_by = #{updateBy}, is_built_in = #{isBuiltIn}, - update_time = sysdate() + update_time = sysdate(), + role_level = #{roleLevel}, + role_level_tips = #{roleLevelTips}, + role_level_name = #{roleLevelName} where role_id = #{roleId} diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml index e57c932..e019bcc 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -28,6 +28,12 @@ + + + + + + @@ -91,7 +97,11 @@ r.data_scope, r.status as role_status, u.login_type, - u.is_built_in + u.is_built_in, + u.role_level, + u.band_id, + u.permission_type, + u.permission_range from sys_user u left join sys_dept d on u.dept_id = d.dept_id left join sys_user_role ur on u.user_id = ur.user_id @@ -101,15 +111,19 @@ @@ -218,7 +236,7 @@ select user_id, phonenumber from sys_user - where phonenumber = #{phonenumber} + where user_name = #{phonenumber} and del_flag = '0' limit 1 @@ -257,6 +275,20 @@ where email = #{email} and del_flag = '0' limit 1 + + insert into sys_user( @@ -276,7 +308,13 @@ approval_status, is_permanent, is_built_in, - create_time + create_time, + role_id, + role_level, + role_name, + band_id, + permission_type, + permission_range )values( #{userId}, #{deptId}, @@ -294,7 +332,13 @@ #{approvalStatus}, #{isPermanent}, #{isBuiltIn}, - sysdate() + sysdate(), + #{roleId}, + #{roleLevel}, + #{roleName}, + #{bandId}, + #{permissionType}, + #{permissionRange} ) @@ -317,7 +361,13 @@ login_type = #{loginType}, is_permanent = #{isPermanent}, is_built_in = #{isBuiltIn}, - update_time = sysdate() + update_time = sysdate(), + role_id = #{roleId}, + role_level = #{roleLevel}, + role_name = #{roleName}, + band_id = #{bandId}, + permission_type = #{permissionType}, + permission_range = #{permissionRange} where user_id = #{userId}