From e8225fbdee782bbabecda08d6d1a285e39c5ca3b Mon Sep 17 00:00:00 2001 From: MichelleChung <1242874891@qq.com> Date: 星期四, 02 二月 2023 16:15:52 +0800 Subject: [PATCH] !282 System 相关表请求响应参数优化 * update 更新 system 相关表接口 (sys_role) 新增 Bo | Vo 类, 更改请求以及响应参数 ; * update 更新 system 相关表接口 (sys_notice, sys_post) 新增 Bo | Vo 类, 更改请求以及响应参数 ; * update 更新 system 相关表接口 (sys_menu) 新增 Bo | Vo 类, 更改请求以及响应参数 ; * update 更新 system 相关表接口 (sys_dict_data, sys_dict_type) 新增 Bo | Vo 类, 更改请求以及响应参数 ; * update 更新 system 相关表接口 (sys_config, sys_dept) 新增 Bo | Vo 类, 更改请求以及响应参数 ; --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java | 61 +++++++++++++++--------------- 1 files changed, 31 insertions(+), 30 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java index d0df74d..94ddc4a 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java @@ -9,29 +9,27 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.constant.CacheNames; import com.ruoyi.common.core.constant.UserConstants; -import com.ruoyi.common.mybatis.core.page.PageQuery; -import com.ruoyi.system.domain.SysDept; -import com.ruoyi.system.domain.SysRole; -import com.ruoyi.system.domain.SysUser; -import com.ruoyi.common.mybatis.core.page.TableDataInfo; import com.ruoyi.common.core.exception.ServiceException; -import com.ruoyi.common.mybatis.helper.DataBaseHelper; -import com.ruoyi.common.satoken.utils.LoginHelper; +import com.ruoyi.common.core.service.UserService; import com.ruoyi.common.core.utils.StreamUtils; import com.ruoyi.common.core.utils.StringUtils; -import com.ruoyi.system.domain.SysPost; -import com.ruoyi.system.domain.SysUserPost; -import com.ruoyi.system.domain.SysUserRole; +import com.ruoyi.common.mybatis.core.page.PageQuery; +import com.ruoyi.common.mybatis.core.page.TableDataInfo; +import com.ruoyi.common.mybatis.helper.DataBaseHelper; +import com.ruoyi.common.satoken.utils.LoginHelper; +import com.ruoyi.system.domain.*; +import com.ruoyi.system.domain.vo.SysPostVo; +import com.ruoyi.system.domain.vo.SysRoleVo; import com.ruoyi.system.mapper.*; import com.ruoyi.system.service.ISysUserService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import java.util.Map; @@ -43,7 +41,7 @@ @Slf4j @RequiredArgsConstructor @Service -public class SysUserServiceImpl implements ISysUserService { +public class SysUserServiceImpl implements ISysUserService, UserService { private final SysUserMapper baseMapper; private final SysDeptMapper deptMapper; @@ -168,11 +166,11 @@ */ @Override public String selectUserRoleGroup(String userName) { - List<SysRole> list = roleMapper.selectRolesByUserName(userName); + List<SysRoleVo> list = roleMapper.selectRolesByUserName(userName); if (CollUtil.isEmpty(list)) { return StringUtils.EMPTY; } - return StreamUtils.join(list, SysRole::getRoleName); + return StreamUtils.join(list, SysRoleVo::getRoleName); } /** @@ -183,11 +181,11 @@ */ @Override public String selectUserPostGroup(String userName) { - List<SysPost> list = postMapper.selectPostsByUserName(userName); + List<SysPostVo> list = postMapper.selectPostsByUserName(userName); if (CollUtil.isEmpty(list)) { return StringUtils.EMPTY; } - return StreamUtils.join(list, SysPost::getPostName); + return StreamUtils.join(list, SysPostVo::getPostName); } /** @@ -211,7 +209,6 @@ * 鏍¢獙鎵嬫満鍙风爜鏄惁鍞竴 * * @param user 鐢ㄦ埛淇℃伅 - * @return */ @Override public String checkPhoneUnique(SysUser user) { @@ -228,7 +225,6 @@ * 鏍¢獙email鏄惁鍞竴 * * @param user 鐢ㄦ埛淇℃伅 - * @return */ @Override public String checkEmailUnique(SysUser user) { @@ -296,8 +292,8 @@ */ @Override public boolean registerUser(SysUser user) { - user.setCreateBy(user.getUserName()); - user.setUpdateBy(user.getUserName()); + user.setCreateBy(user.getUserId()); + user.setUpdateBy(user.getUserId()); return baseMapper.insert(user) > 0; } @@ -417,13 +413,12 @@ Long[] posts = user.getPostIds(); if (ArrayUtil.isNotEmpty(posts)) { // 鏂板鐢ㄦ埛涓庡矖浣嶇鐞� - List<SysUserPost> list = new ArrayList<>(posts.length); - for (Long postId : posts) { + List<SysUserPost> list = StreamUtils.toList(List.of(posts), postId -> { SysUserPost up = new SysUserPost(); up.setUserId(user.getUserId()); up.setPostId(postId); - list.add(up); - } + return up; + }); userPostMapper.insertBatch(list); } } @@ -437,13 +432,12 @@ public void insertUserRole(Long userId, Long[] roleIds) { if (ArrayUtil.isNotEmpty(roleIds)) { // 鏂板鐢ㄦ埛涓庤鑹茬鐞� - List<SysUserRole> list = new ArrayList<>(roleIds.length); - for (Long roleId : roleIds) { + List<SysUserRole> list = StreamUtils.toList(List.of(roleIds), roleId -> { SysUserRole ur = new SysUserRole(); ur.setUserId(userId); ur.setRoleId(roleId); - list.add(ur); - } + return ur; + }); userRoleMapper.insertBatch(list); } } @@ -477,7 +471,7 @@ checkUserAllowed(new SysUser(userId)); checkUserDataScope(userId); } - List<Long> ids = Arrays.asList(userIds); + List<Long> ids = List.of(userIds); // 鍒犻櫎鐢ㄦ埛涓庤鑹插叧鑱� userRoleMapper.delete(new LambdaQueryWrapper<SysUserRole>().in(SysUserRole::getUserId, ids)); // 鍒犻櫎鐢ㄦ埛涓庡矖浣嶈〃 @@ -485,4 +479,11 @@ return baseMapper.deleteBatchIds(ids); } + @Cacheable(cacheNames = CacheNames.SYS_USER_NAME, key = "#userId") + @Override + public String selectUserNameById(Long userId) { + SysUser sysUser = baseMapper.selectOne(new LambdaQueryWrapper<SysUser>() + .select(SysUser::getUserName).eq(SysUser::getUserId, userId)); + return ObjectUtil.isNull(sysUser) ? null : sysUser.getUserName(); + } } -- Gitblit v1.9.3