角色权限过滤

This commit is contained in:
啊平 2021-02-23 18:48:45 +08:00
parent c971260ee1
commit e0fd305b28

View File

@ -1,5 +1,6 @@
import { Provide } from '@midwayjs/decorator';
import { CoolController, BaseController } from 'midwayjs-cool-core';
import { Context } from 'vm';
import { AdminSysRoleEntity } from '../../entity/sys/role';
/**
@ -11,9 +12,13 @@ import { AdminSysRoleEntity } from '../../entity/sys/role';
entity: AdminSysRoleEntity,
pageQueryOp: {
keyWordLikeFields: ['name', 'label'],
where: (async () => {
where: (async (ctx: Context) => {
const { userId, roleIds, role } = ctx.admin;
return [
// 超级管理员的角色不展示
['label != :label', { label: 'admin' }],
// 如果不是超管,只能看到自己新建的或者自己有的角色
['(userId=:userId or id in (:roleIds))', { userId, roleIds }, role != 'admin']
]
})
}