形象:检查重名
This commit is contained in:
@@ -499,9 +499,10 @@ export class RoleHandler {
|
|||||||
async rename(msg: { roleName: string }, session: BackendSession) {
|
async rename(msg: { roleName: string }, session: BackendSession) {
|
||||||
let { roleName } = msg;
|
let { roleName } = msg;
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
// TODO 可能需要,检查是否重名
|
let serverId = session.get('serverId');
|
||||||
// let checkName = await RoleModel.findRoleByField('roleName', [roleName]);
|
|
||||||
// if(checkName.length > 0) return resResult(STATUS.NAME_HAS_USED);
|
let checkName = await RoleModel.checkName(roleName, serverId);
|
||||||
|
if(checkName) return resResult(STATUS.NAME_HAS_USED);
|
||||||
|
|
||||||
let role = await RoleModel.updateRoleInfo(roleId, { roleName });
|
let role = await RoleModel.updateRoleInfo(roleId, { roleName });
|
||||||
|
|
||||||
|
|||||||
@@ -555,6 +555,11 @@ export default class Role extends BaseModel {
|
|||||||
const result = await RoleModel.findOneAndUpdate({roleId}, { $pull: { heads: { id: id }, $push: { heads: figure } }}, {new: true}).lean();
|
const result = await RoleModel.findOneAndUpdate({roleId}, { $pull: { heads: { id: id }, $push: { heads: figure } }}, {new: true}).lean();
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static async checkName(roleName: string, serverId: number) {
|
||||||
|
const role = await RoleModel.findOne({ roleName, serverId }).lean();
|
||||||
|
return !!role;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export const RoleModel = getModelForClass(Role);
|
export const RoleModel = getModelForClass(Role);
|
||||||
|
|||||||
@@ -306,6 +306,10 @@ export default class Auth extends Service {
|
|||||||
const roleId = ctx.service.utils.genCode(10);
|
const roleId = ctx.service.utils.genCode(10);
|
||||||
const code = ctx.service.utils.genCode(6);
|
const code = ctx.service.utils.genCode(6);
|
||||||
const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
const seqId = await Counter.getNewCounter(COUNTER.ROLE) || -1;
|
||||||
|
|
||||||
|
let checkName = await RoleModel.checkName(roleName, serverId);
|
||||||
|
if(checkName) return ctx.service.utils.resResult(STATUS.NAME_HAS_USED);
|
||||||
|
|
||||||
const role = await RoleModel.createRole(uid, serverId, { roleId, code, roleName, seqId, lv: DEFAULT_LV, exp: (getExpByLv(DEFAULT_LV - 1) || { sum: 0 }).sum || 0 });
|
const role = await RoleModel.createRole(uid, serverId, { roleId, code, roleName, seqId, lv: DEFAULT_LV, exp: (getExpByLv(DEFAULT_LV - 1) || { sum: 0 }).sum || 0 });
|
||||||
if (role) {
|
if (role) {
|
||||||
let skinIds = new Array<number>();
|
let skinIds = new Array<number>();
|
||||||
|
|||||||
Reference in New Issue
Block a user