From 7a3ccc2dee8f7b938a91df52fd4903ce09e662e5 Mon Sep 17 00:00:00 2001 From: Charles7c Date: Sat, 20 Jan 2024 21:14:58 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E4=BC=98=E5=8C=96=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E5=92=8C=E8=A7=92=E8=89=B2=E9=83=A8=E5=88=86=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=A1=AB=E5=85=85=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/ContainerConstants.java | 4 ++-- .../system/model/resp/RoleDetailResp.java | 19 ++++++++++--------- .../system/model/resp/UserDetailResp.java | 3 +++ .../service/impl/RoleDeptServiceImpl.java | 15 ++++++++------- .../system/service/impl/RoleServiceImpl.java | 1 - .../service/impl/UserRoleServiceImpl.java | 15 ++++++++------- .../system/service/impl/UserServiceImpl.java | 7 ++++--- 7 files changed, 35 insertions(+), 29 deletions(-) diff --git a/continew-admin-common/src/main/java/top/charles7c/continew/admin/common/constant/ContainerConstants.java b/continew-admin-common/src/main/java/top/charles7c/continew/admin/common/constant/ContainerConstants.java index 5af7dc4b..5aac25ca 100644 --- a/continew-admin-common/src/main/java/top/charles7c/continew/admin/common/constant/ContainerConstants.java +++ b/continew-admin-common/src/main/java/top/charles7c/continew/admin/common/constant/ContainerConstants.java @@ -30,7 +30,7 @@ public interface ContainerConstants extends top.charles7c.continew.starter.exten String USER_ROLE_ID_LIST = "UserRoleIdList"; /** - * 用户角色名称列表 + * 角色部门列表 */ - String USER_ROLE_NAME_LIST = "UserRoleNameList"; + String ROLE_DEPT_ID_LIST = "RoleDeptIdList"; } \ No newline at end of file diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/RoleDetailResp.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/RoleDetailResp.java index f74ab61a..f0c6b989 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/RoleDetailResp.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/RoleDetailResp.java @@ -16,20 +16,20 @@ package top.charles7c.continew.admin.system.model.resp; -import java.io.Serial; -import java.util.List; - -import lombok.Data; - -import io.swagger.v3.oas.annotations.media.Schema; - +import cn.crane4j.annotation.Assemble; +import cn.crane4j.annotation.Mapping; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; - -import top.charles7c.continew.starter.extension.crud.converter.ExcelBaseEnumConverter; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import top.charles7c.continew.admin.common.constant.ContainerConstants; import top.charles7c.continew.admin.common.enums.DataScopeEnum; import top.charles7c.continew.admin.common.enums.DisEnableStatusEnum; import top.charles7c.continew.starter.extension.crud.base.BaseDetailResp; +import top.charles7c.continew.starter.extension.crud.converter.ExcelBaseEnumConverter; + +import java.io.Serial; +import java.util.List; /** * 角色详情信息 @@ -40,6 +40,7 @@ import top.charles7c.continew.starter.extension.crud.base.BaseDetailResp; @Data @ExcelIgnoreUnannotated @Schema(description = "角色详情信息") +@Assemble(container = ContainerConstants.ROLE_DEPT_ID_LIST, key = "id", props = @Mapping(ref = "deptIds")) public class RoleDetailResp extends BaseDetailResp { @Serial diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java index 8c6a0f56..296a030b 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/model/resp/UserDetailResp.java @@ -16,6 +16,7 @@ package top.charles7c.continew.admin.system.model.resp; +import cn.crane4j.annotation.Assemble; import cn.crane4j.annotation.AssembleMethod; import cn.crane4j.annotation.ContainerMethod; import cn.crane4j.annotation.Mapping; @@ -23,6 +24,7 @@ import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; +import top.charles7c.continew.admin.common.constant.ContainerConstants; import top.charles7c.continew.admin.common.enums.DisEnableStatusEnum; import top.charles7c.continew.admin.common.enums.GenderEnum; import top.charles7c.continew.admin.common.util.helper.LoginHelper; @@ -44,6 +46,7 @@ import java.util.Objects; @Data @ExcelIgnoreUnannotated @Schema(description = "用户详情信息") +@Assemble(container = ContainerConstants.USER_ROLE_ID_LIST, key = "id", props = @Mapping(ref = "roleIds")) public class UserDetailResp extends BaseDetailResp { @Serial diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleDeptServiceImpl.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleDeptServiceImpl.java index 1d8feb1b..acf619ad 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleDeptServiceImpl.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleDeptServiceImpl.java @@ -16,20 +16,20 @@ package top.charles7c.continew.admin.system.service.impl; -import java.util.List; -import java.util.stream.Collectors; - +import cn.crane4j.annotation.ContainerMethod; +import cn.crane4j.annotation.MappingType; +import cn.hutool.core.collection.CollUtil; import lombok.RequiredArgsConstructor; - import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; - -import cn.hutool.core.collection.CollUtil; - +import top.charles7c.continew.admin.common.constant.ContainerConstants; import top.charles7c.continew.admin.system.mapper.RoleDeptMapper; import top.charles7c.continew.admin.system.model.entity.RoleDeptDO; import top.charles7c.continew.admin.system.service.RoleDeptService; +import java.util.List; +import java.util.stream.Collectors; + /** * 角色和部门业务实现 * @@ -78,6 +78,7 @@ public class RoleDeptServiceImpl implements RoleDeptService { } @Override + @ContainerMethod(namespace = ContainerConstants.ROLE_DEPT_ID_LIST, type = MappingType.NONE) public List listDeptIdByRoleId(Long roleId) { return roleDeptMapper.selectDeptIdByRoleId(roleId); } diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleServiceImpl.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleServiceImpl.java index 65faf028..18a9fa35 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleServiceImpl.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/RoleServiceImpl.java @@ -138,7 +138,6 @@ public class RoleServiceImpl extends BaseServiceImpl listRoleIdByUserId(Long userId) { return userRoleMapper.selectRoleIdByUserId(userId); } diff --git a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java index 9c3d4b58..00935b61 100644 --- a/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java +++ b/continew-admin-system/src/main/java/top/charles7c/continew/admin/system/service/impl/UserServiceImpl.java @@ -152,9 +152,10 @@ public class UserServiceImpl extends BaseServiceImpl roleIdList = userRoleService.listRoleIdByUserId(detail.getId()); - detail.setRoleIds(roleIdList); - detail.setRoleNames(String.join(StringConstants.CHINESE_COMMA, roleService.listNameByIds(roleIdList))); + List roleIdList = detail.getRoleIds(); + if (CollUtil.isNotEmpty(roleIdList)) { + detail.setRoleNames(String.join(StringConstants.CHINESE_COMMA, roleService.listNameByIds(roleIdList))); + } } }