后台:删除武将修复bug

This commit is contained in:
luying
2022-07-02 17:40:49 +08:00
parent ddc980456b
commit a1b3df8972
2 changed files with 16 additions and 0 deletions

View File

@@ -1,5 +1,6 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
import { isArray } from 'underscore';
// 全局加成
export class AttrCell {
@@ -117,6 +118,19 @@ export default class RoleCe extends BaseModel {
let result: RoleCeType = await RoleCeModel.findOneAndUpdate({ roleId }, { $set: update }, { new: true, upsert: true }).lean();
return result;
}
public static async deleteHero(roleId: string, hid: number) {
let roleCe: RoleCeType = await RoleCeModel.findByRoleId(roleId);
return await RoleCeModel.updateRoleCe(roleId, this.filterHid(roleCe, hid, ['heroAttrs', 'equipAttrs', 'schoolAttrs', 'scrollAttrs']));
}
private static filterHid(roleCe: RoleCeType, hid: number, fields: string[]) {
let update: RoleCeUpdate = {};
for(let field of fields) {
if(roleCe[field] && isArray(roleCe[field])) update[field] = roleCe[field].filter(cur => cur.hid != hid);
}
return update;
}
}
export const RoleCeModel = getModelForClass(RoleCe);