diff --git a/continew-module-system/src/main/java/top/continew/admin/system/model/resp/role/RoleUserResp.java b/continew-module-system/src/main/java/top/continew/admin/system/model/resp/role/RoleUserResp.java index 889a4add..6e0b010a 100644 --- a/continew-module-system/src/main/java/top/continew/admin/system/model/resp/role/RoleUserResp.java +++ b/continew-module-system/src/main/java/top/continew/admin/system/model/resp/role/RoleUserResp.java @@ -17,6 +17,7 @@ package top.continew.admin.system.model.resp.role; import cn.crane4j.annotation.Assemble; +import cn.crane4j.annotation.Mapping; import cn.crane4j.core.executor.handler.ManyToManyAssembleOperationHandler; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @@ -114,7 +115,7 @@ public class RoleUserResp implements Serializable { * 角色 ID 列表 */ @Schema(description = "角色 ID 列表", example = "2") - @Assemble(prop = ":roleNames", container = ContainerConstants.USER_ROLE_NAME_LIST, handlerType = ManyToManyAssembleOperationHandler.class) + @Assemble(props = @Mapping(src = "name", ref = "roleNames"), container = ContainerConstants.USER_ROLE_NAME_LIST, handlerType = ManyToManyAssembleOperationHandler.class) private List roleIds; /** diff --git a/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserDetailResp.java b/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserDetailResp.java index 89204fa2..18a9846f 100644 --- a/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserDetailResp.java +++ b/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserDetailResp.java @@ -105,7 +105,7 @@ public class UserDetailResp extends BaseDetailResp { * 角色 ID 列表 */ @Schema(description = "角色 ID 列表", example = "2") - @Assemble(prop = ":roleNames", container = ContainerConstants.USER_ROLE_NAME_LIST, handlerType = ManyToManyAssembleOperationHandler.class) + @Assemble(props = @Mapping(src = "name", ref = "roleNames"), container = ContainerConstants.USER_ROLE_NAME_LIST, handlerType = ManyToManyAssembleOperationHandler.class) @ExcelProperty(value = "角色 ID 列表", converter = ExcelListConverter.class, order = 8) private List roleIds; diff --git a/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserResp.java b/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserResp.java index d661a3f8..ae9644ec 100644 --- a/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserResp.java +++ b/continew-module-system/src/main/java/top/continew/admin/system/model/resp/user/UserResp.java @@ -17,6 +17,7 @@ package top.continew.admin.system.model.resp.user; import cn.crane4j.annotation.Assemble; +import cn.crane4j.annotation.Mapping; import cn.crane4j.core.executor.handler.ManyToManyAssembleOperationHandler; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @@ -118,7 +119,7 @@ public class UserResp extends BaseDetailResp { * 角色 ID 列表 */ @Schema(description = "角色 ID 列表", example = "2") - @Assemble(prop = ":roleNames", container = ContainerConstants.USER_ROLE_NAME_LIST, handlerType = ManyToManyAssembleOperationHandler.class) + @Assemble(props = @Mapping(src = "name", ref = "roleNames"), container = ContainerConstants.USER_ROLE_NAME_LIST, handlerType = ManyToManyAssembleOperationHandler.class) private List roleIds; /** diff --git a/continew-module-system/src/main/java/top/continew/admin/system/service/RoleService.java b/continew-module-system/src/main/java/top/continew/admin/system/service/RoleService.java index 610c0fe9..6b94c39f 100644 --- a/continew-module-system/src/main/java/top/continew/admin/system/service/RoleService.java +++ b/continew-module-system/src/main/java/top/continew/admin/system/service/RoleService.java @@ -67,7 +67,7 @@ public interface RoleService extends BaseService listNameByIds(List ids); + List listNameByIds(List ids); /** * 根据用户 ID 查询角色编码 diff --git a/continew-module-system/src/main/java/top/continew/admin/system/service/impl/RoleServiceImpl.java b/continew-module-system/src/main/java/top/continew/admin/system/service/impl/RoleServiceImpl.java index 180dcbe3..929b8582 100644 --- a/continew-module-system/src/main/java/top/continew/admin/system/service/impl/RoleServiceImpl.java +++ b/continew-module-system/src/main/java/top/continew/admin/system/service/impl/RoleServiceImpl.java @@ -17,7 +17,6 @@ package top.continew.admin.system.service.impl; import cn.crane4j.annotation.ContainerMethod; -import cn.crane4j.annotation.MappingType; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.alicp.jetcache.anno.CacheInvalidate; @@ -167,13 +166,12 @@ public class RoleServiceImpl extends BaseServiceImpl listNameByIds(List ids) { + @ContainerMethod(namespace = ContainerConstants.USER_ROLE_NAME_LIST, resultType = RoleDO.class) + public List listNameByIds(List ids) { if (CollUtil.isEmpty(ids)) { return Collections.emptyList(); } - List roleList = baseMapper.lambdaQuery().select(RoleDO::getName).in(RoleDO::getId, ids).list(); - return roleList.stream().map(RoleDO::getName).toList(); + return baseMapper.lambdaQuery().select(RoleDO::getName, RoleDO::getId).in(RoleDO::getId, ids).list(); } @Override