diff --git a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/sys/api/SysRoleServiceApi.java b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/sys/api/SysRoleServiceApi.java index 2627fd061..ff0b87bc4 100644 --- a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/sys/api/SysRoleServiceApi.java +++ b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/sys/api/SysRoleServiceApi.java @@ -42,4 +42,12 @@ public interface SysRoleServiceApi { */ Long getDefaultRoleId(); + /** + * 通过角色id获取角色名称 + * + * @author fengshuonan + * @since 2023/7/15 21:54 + */ + String getRoleNameByRoleId(Long roleId); + } diff --git a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/sys/api/format/RoleNameFormatProcess.java b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/sys/api/format/RoleNameFormatProcess.java new file mode 100644 index 000000000..2d36ccfae --- /dev/null +++ b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/sys/api/format/RoleNameFormatProcess.java @@ -0,0 +1,28 @@ +package cn.stylefeng.roses.kernel.sys.api.format; + +import cn.hutool.core.convert.Convert; +import cn.hutool.extra.spring.SpringUtil; +import cn.stylefeng.roses.kernel.rule.format.BaseSimpleFieldFormatProcess; +import cn.stylefeng.roses.kernel.sys.api.SysRoleServiceApi; + +/** + * JSON响应对角色id的转化 + * + * @author fengshuonan + * @since 2023/5/4 21:20 + */ +public class RoleNameFormatProcess extends BaseSimpleFieldFormatProcess { + + @Override + public Class getItemClass() { + return Long.class; + } + + @Override + public Object simpleItemFormat(Object businessId) { + Long roleId = Convert.toLong(businessId); + SysRoleServiceApi bean = SpringUtil.getBean(SysRoleServiceApi.class); + return bean.getRoleNameByRoleId(roleId); + } + +} diff --git a/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleServiceImpl.java b/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleServiceImpl.java index 58d499931..eacfa2b45 100644 --- a/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleServiceImpl.java +++ b/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/SysRoleServiceImpl.java @@ -133,6 +133,24 @@ public class SysRoleServiceImpl extends ServiceImpl impl return null; } + @Override + public String getRoleNameByRoleId(Long roleId) { + + if (ObjectUtil.isEmpty(roleId)) { + return ""; + } + + LambdaQueryWrapper sysRoleLambdaQueryWrapper = new LambdaQueryWrapper<>(); + sysRoleLambdaQueryWrapper.eq(SysRole::getRoleId, roleId); + sysRoleLambdaQueryWrapper.select(SysRole::getRoleName); + SysRole sysRole = this.getOne(sysRoleLambdaQueryWrapper, false); + if (sysRole != null) { + return sysRole.getRoleName(); + } + + return ""; + } + /** * 获取信息 *