形象:检查重名
This commit is contained in:
@@ -499,9 +499,10 @@ export class RoleHandler {
|
||||
async rename(msg: { roleName: string }, session: BackendSession) {
|
||||
let { roleName } = msg;
|
||||
let roleId = session.get('roleId');
|
||||
// TODO 可能需要,检查是否重名
|
||||
// let checkName = await RoleModel.findRoleByField('roleName', [roleName]);
|
||||
// if(checkName.length > 0) return resResult(STATUS.NAME_HAS_USED);
|
||||
let serverId = session.get('serverId');
|
||||
|
||||
let checkName = await RoleModel.checkName(roleName, serverId);
|
||||
if(checkName) return resResult(STATUS.NAME_HAS_USED);
|
||||
|
||||
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();
|
||||
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);
|
||||
|
||||
@@ -306,6 +306,10 @@ export default class Auth extends Service {
|
||||
const roleId = ctx.service.utils.genCode(10);
|
||||
const code = ctx.service.utils.genCode(6);
|
||||
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 });
|
||||
if (role) {
|
||||
let skinIds = new Array<number>();
|
||||
|
||||
Reference in New Issue
Block a user