角色增加level
This commit is contained in:
parent
3a24f7e48c
commit
e87bc38e14
@ -1,18 +1,19 @@
|
|||||||
import BaseController from '../../common/base.controller';
|
import BaseController from '../../common/base.controller'
|
||||||
import { permission, role, router } from '../../decorators/router'
|
import { permission, router } from '../../decorators/router'
|
||||||
import { AdminRole } from '../../models/admin/AdminRole';
|
import { AdminRole } from '../../models/admin/AdminRole'
|
||||||
import { ZError } from '../../common/ZError';
|
import { ZError } from '../../common/ZError'
|
||||||
|
|
||||||
class RoleController extends BaseController {
|
class RoleController extends BaseController {
|
||||||
@permission('role:update')
|
@permission('role:update')
|
||||||
@router('post /roles')
|
@router('post /roles')
|
||||||
async saveRole(req) {
|
async saveRole(req) {
|
||||||
const {name, permissions, key} = req.params;
|
const { name, permissions, key, level } = req.params
|
||||||
const role = (await AdminRole.findOrCreate({_id: key})).doc;
|
const role = (await AdminRole.findOrCreate({ _id: key })).doc
|
||||||
role.permissions = permissions;
|
role.permissions = permissions
|
||||||
role.name = name;
|
role.name = name
|
||||||
await role.save();
|
role.level = level
|
||||||
return role.toJson();
|
await role.save()
|
||||||
|
return role.toJson()
|
||||||
}
|
}
|
||||||
|
|
||||||
@permission('role:read')
|
@permission('role:read')
|
||||||
@ -31,12 +32,12 @@ class RoleController extends BaseController {
|
|||||||
@permission('role:delete')
|
@permission('role:delete')
|
||||||
@router('delete /roles/:key')
|
@router('delete /roles/:key')
|
||||||
async deleteRole(req) {
|
async deleteRole(req) {
|
||||||
const {key} = req.params;
|
const { key } = req.params
|
||||||
if (!key) {
|
if (!key) {
|
||||||
throw new ZError(10, 'record not found');
|
throw new ZError(10, 'record not found')
|
||||||
}
|
}
|
||||||
const result = await AdminRole.deleteOne({_id: key});
|
const result = await AdminRole.deleteOne({ _id: key })
|
||||||
return {count: result.deletedCount}
|
return { count: result.deletedCount }
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,13 @@ export class AdminRoleClass extends BaseModule{
|
|||||||
public permissions: string[];
|
public permissions: string[];
|
||||||
@prop({ type: () => [String] })
|
@prop({ type: () => [String] })
|
||||||
public inherits?: string[];
|
public inherits?: string[];
|
||||||
|
/**
|
||||||
|
* 权限选择时, 需要的用户等级
|
||||||
|
* 用户等级需要小于或等于该值才可显示
|
||||||
|
* @type {number}
|
||||||
|
*/
|
||||||
|
@prop()
|
||||||
|
public level: number
|
||||||
@prop()
|
@prop()
|
||||||
public comment?: string;
|
public comment?: string;
|
||||||
|
|
||||||
@ -34,7 +41,8 @@ export class AdminRoleClass extends BaseModule{
|
|||||||
key: this._id,
|
key: this._id,
|
||||||
name: this.name,
|
name: this.name,
|
||||||
permissions: this.permissions,
|
permissions: this.permissions,
|
||||||
comment: this.comment
|
comment: this.comment,
|
||||||
|
level: this.level
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user