From 203c3fdefda1acef5064d6211f658aaf680a62e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Sat, 6 Jan 2024 20:58:41 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E7=BF=BB=E8=AF=91=E6=B3=A8=E8=A7=A3=E7=AE=80=E5=8C=96?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=9F=A5=E8=AF=A2=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=9F=A5=E8=AF=A2=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/SysProfileController.java | 5 +---- .../controller/system/SysUserController.java | 6 ++---- .../system/domain/vo/SysUserExportVo.java | 5 ----- .../dromara/system/domain/vo/SysUserVo.java | 9 +++++---- .../system/dubbo/RemoteUserServiceImpl.java | 14 ++++---------- .../dromara/system/mapper/SysUserMapper.java | 5 +++-- .../system/service/ISysUserService.java | 3 ++- .../service/impl/SysUserServiceImpl.java | 12 +++++++++--- .../resources/mapper/system/SysUserMapper.xml | 18 ++++-------------- 9 files changed, 30 insertions(+), 47 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java index ddef6265..22147c96 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysProfileController.java @@ -10,10 +10,10 @@ import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.core.utils.file.MimeTypeUtils; import org.dromara.common.encrypt.annotation.ApiEncrypt; -import org.dromara.common.web.core.BaseController; import org.dromara.common.log.annotation.Log; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.common.web.core.BaseController; import org.dromara.resource.api.RemoteFileService; import org.dromara.resource.api.domain.RemoteFile; import org.dromara.system.domain.bo.SysUserBo; @@ -22,7 +22,6 @@ import org.dromara.system.domain.bo.SysUserProfileBo; import org.dromara.system.domain.vo.AvatarVo; import org.dromara.system.domain.vo.ProfileVo; import org.dromara.system.domain.vo.SysUserVo; -import org.dromara.system.service.ISysRoleService; import org.dromara.system.service.ISysUserService; import org.springframework.http.MediaType; import org.springframework.validation.annotation.Validated; @@ -44,7 +43,6 @@ import java.util.Arrays; public class SysProfileController extends BaseController { private final ISysUserService userService; - private final ISysRoleService roleService; @DubboReference private RemoteFileService remoteFileService; @@ -55,7 +53,6 @@ public class SysProfileController extends BaseController { @GetMapping public R profile() { SysUserVo user = userService.selectUserById(LoginHelper.getUserId()); - user.setRoles(roleService.selectRolesByUserId(user.getUserId())); ProfileVo profileVo = new ProfileVo(); profileVo.setUser(user); profileVo.setRoleGroup(userService.selectUserRoleGroup(user.getUserId())); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java index 22b35e12..626846b1 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java @@ -10,7 +10,6 @@ import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.domain.R; -import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StreamUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.encrypt.annotation.ApiEncrypt; @@ -72,9 +71,8 @@ public class SysUserController extends BaseController { @SaCheckPermission("system:user:export") @PostMapping("/export") public void export(SysUserBo user, HttpServletResponse response) { - List list = userService.selectUserList(user); - List listVo = MapstructUtils.convert(list, SysUserExportVo.class); - ExcelUtil.exportExcel(listVo, "用户数据", SysUserExportVo.class, response); + List list = userService.selectUserExportList(user); + ExcelUtil.exportExcel(list, "用户数据", SysUserExportVo.class, response); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java index a1448f22..0fc9e23b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserExportVo.java @@ -1,8 +1,6 @@ package org.dromara.system.domain.vo; import com.alibaba.excel.annotation.ExcelProperty; -import io.github.linpeilie.annotations.AutoMapper; -import io.github.linpeilie.annotations.ReverseAutoMapping; import lombok.Data; import lombok.NoArgsConstructor; import org.dromara.common.excel.annotation.ExcelDictFormat; @@ -20,7 +18,6 @@ import java.util.Date; @Data @NoArgsConstructor -@AutoMapper(target = SysUserVo.class, convertGenerate = false) public class SysUserExportVo implements Serializable { @Serial @@ -85,14 +82,12 @@ public class SysUserExportVo implements Serializable { /** * 部门名称 */ - @ReverseAutoMapping(target = "deptName", source = "dept.deptName") @ExcelProperty(value = "部门名称") private String deptName; /** * 负责人 */ - @ReverseAutoMapping(target = "leaderName", source = "dept.leaderName") @ExcelProperty(value = "部门负责人") private String leaderName; diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java index 59fb0e51..d1f40591 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java @@ -2,13 +2,13 @@ package org.dromara.system.domain.vo; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; -import io.github.linpeilie.annotations.AutoMapper; -import lombok.Data; import org.dromara.common.sensitive.annotation.Sensitive; import org.dromara.common.sensitive.core.SensitiveStrategy; import org.dromara.common.translation.annotation.Translation; import org.dromara.common.translation.constant.TransConstant; import org.dromara.system.domain.SysUser; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; import java.io.Serial; import java.io.Serializable; @@ -114,9 +114,10 @@ public class SysUserVo implements Serializable { private Date createTime; /** - * 部门对象 + * 部门名 */ - private SysDeptVo dept; + @Translation(type = TransConstant.DEPT_ID_TO_NAME, mapper = "deptId") + private String deptName; /** * 角色对象 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteUserServiceImpl.java index 436605f5..72e0d3be 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteUserServiceImpl.java @@ -22,12 +22,8 @@ import org.dromara.system.domain.bo.SysUserBo; import org.dromara.system.domain.vo.SysDeptVo; import org.dromara.system.domain.vo.SysRoleVo; import org.dromara.system.domain.vo.SysUserVo; -import org.dromara.system.mapper.SysDeptMapper; import org.dromara.system.mapper.SysUserMapper; -import org.dromara.system.service.ISysConfigService; -import org.dromara.system.service.ISysPermissionService; -import org.dromara.system.service.ISysRoleService; -import org.dromara.system.service.ISysUserService; +import org.dromara.system.service.*; import org.springframework.stereotype.Service; import java.util.List; @@ -46,7 +42,7 @@ public class RemoteUserServiceImpl implements RemoteUserService { private final ISysPermissionService permissionService; private final ISysConfigService configService; private final ISysRoleService roleService; - private final SysDeptMapper deptMapper; + private final ISysDeptService deptService; private final SysUserMapper userMapper; @Override @@ -176,11 +172,9 @@ public class RemoteUserServiceImpl implements RemoteUserService { loginUser.setUserType(userVo.getUserType()); loginUser.setMenuPermission(permissionService.getMenuPermission(userVo.getUserId())); loginUser.setRolePermission(permissionService.getRolePermission(userVo.getUserId())); - SysDeptVo dept = deptMapper.selectVoById(userVo.getDeptId()); + SysDeptVo dept = deptService.selectDeptById(userVo.getDeptId()); loginUser.setDeptName(ObjectUtil.isNull(dept) ? "" : dept.getDeptName()); - List roles = DataPermissionHelper.ignore(() -> { - return roleService.selectRolesByUserId(userVo.getUserId()); - }); + List roles = roleService.selectRolesByUserId(userVo.getUserId()); loginUser.setRoles(BeanUtil.copyToList(roles, RoleDTO.class)); return loginUser; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java index d349832d..d226d997 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java @@ -8,6 +8,7 @@ import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.system.domain.SysUser; +import org.dromara.system.domain.vo.SysUserExportVo; import org.dromara.system.domain.vo.SysUserVo; import java.util.List; @@ -20,7 +21,7 @@ import java.util.List; public interface SysUserMapper extends BaseMapperPlus { @DataPermission({ - @DataColumn(key = "deptName", value = "d.dept_id"), + @DataColumn(key = "deptName", value = "u.dept_id"), @DataColumn(key = "userName", value = "u.user_id") }) Page selectPageUserList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); @@ -35,7 +36,7 @@ public interface SysUserMapper extends BaseMapperPlus { @DataColumn(key = "deptName", value = "d.dept_id"), @DataColumn(key = "userName", value = "u.user_id") }) - List selectUserList(@Param(Constants.WRAPPER) Wrapper queryWrapper); + List selectUserExportList(@Param(Constants.WRAPPER) Wrapper queryWrapper); /** * 根据条件分页查询已配用户角色列表 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java index 7cd6502f..c428a1f3 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysUserService.java @@ -3,6 +3,7 @@ package org.dromara.system.service; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.system.domain.bo.SysUserBo; +import org.dromara.system.domain.vo.SysUserExportVo; import org.dromara.system.domain.vo.SysUserVo; import java.util.List; @@ -23,7 +24,7 @@ public interface ISysUserService { * @param user 用户信息 * @return 用户信息集合信息 */ - List selectUserList(SysUserBo user); + List selectUserExportList(SysUserBo user); /** * 根据条件分页查询已分配用户角色列表 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 089f493d..8cd183e4 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -28,6 +28,7 @@ import org.dromara.system.domain.SysUserRole; import org.dromara.system.domain.bo.SysUserBo; import org.dromara.system.domain.vo.SysPostVo; import org.dromara.system.domain.vo.SysRoleVo; +import org.dromara.system.domain.vo.SysUserExportVo; import org.dromara.system.domain.vo.SysUserVo; import org.dromara.system.mapper.*; import org.dromara.system.service.ISysUserService; @@ -68,8 +69,8 @@ public class SysUserServiceImpl implements ISysUserService { * @return 用户信息集合信息 */ @Override - public List selectUserList(SysUserBo user) { - return baseMapper.selectUserList(this.buildQueryWrapper(user)); + public List selectUserExportList(SysUserBo user) { + return baseMapper.selectUserExportList(this.buildQueryWrapper(user)); } private Wrapper buildQueryWrapper(SysUserBo user) { @@ -162,7 +163,12 @@ public class SysUserServiceImpl implements ISysUserService { */ @Override public SysUserVo selectUserById(Long userId) { - return baseMapper.selectVoById(userId); + SysUserVo user = baseMapper.selectVoById(userId); + if (ObjectUtil.isNull(user)) { + return user; + } + user.setRoles(roleMapper.selectRolesByUserId(user.getUserId())); + return user; } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index 6f69b3a0..607e8bd6 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -4,31 +4,21 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - - - - - - - - - + + - select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader, u1.user_name as leaderName