diff --git a/src/admin/controllers/account.controller.ts b/src/admin/controllers/account.controller.ts index 270b021..4a3bc0a 100644 --- a/src/admin/controllers/account.controller.ts +++ b/src/admin/controllers/account.controller.ts @@ -34,7 +34,7 @@ class AccountController extends BaseController { @permission('admin:save') @router('post /admin/save') async save(req) { - const { id, username, password, roles, showname, sex, locked } = req.params + const { id, username, password, roles, showname, sex, locked, department } = req.params let account if (id) { account = await Admin.findById(id) @@ -60,6 +60,10 @@ class AccountController extends BaseController { } if (showname) account.showname = showname account.sex = sex || '0' + // 管理员不需要设置部门属性 + if (ADMINS.indexOf(username) < 0) { + account.department = department + } if (locked != undefined) { if (locked) { if (ADMINS.indexOf(username) >= 0) { diff --git a/src/models/admin/Admin.ts b/src/models/admin/Admin.ts index f45bf6a..d64acbe 100644 --- a/src/models/admin/Admin.ts +++ b/src/models/admin/Admin.ts @@ -87,6 +87,12 @@ class AdminClass extends FindOrCreate { public locked: boolean @prop() public lockTime: Date + /** + * 部门 + * @type {string} + */ + @prop() + public department?: string public static async findByName(this: ReturnModelType, username) { return this.findOne({ username, deleted: false }).exec() @@ -122,7 +128,8 @@ class AdminClass extends FindOrCreate { createdBy: this.createdBy, introduction: this.introduction, locked: this.locked, - comment: this.comment + comment: this.comment, + department: this.department } } }