初始连接添加军团信息

This commit is contained in:
luying
2021-02-04 15:20:44 +08:00
parent aaeaf87324
commit 86c8cbc2f1
5 changed files with 40 additions and 13 deletions

View File

@@ -145,12 +145,12 @@ export default class Hero extends BaseModel {
@prop({ required: true, type: EPlace, default: getInitialEplace(), _id: false })
ePlace: EPlace[]; // 武将装备引用数组
public static async findByRole(roleId: string, sort: { field: string, sortBy: number }[] = []) {
public static async findByRole(roleId: string, sort: { field: string, sortBy: number }[] = [], select?: string, getters = false) {
let sortParam = {};
for(let {field, sortBy} of sort) {
sortParam[field] = sortBy;
}
const heros: HeroType[] = await HeroModel.find({ roleId }).sort(sortParam).lean();
const heros: HeroType[] = await HeroModel.find({ roleId }).sort(sortParam).select(select).lean({ getters });
return heros;
}

View File

@@ -116,7 +116,7 @@ export default class Role extends BaseModel {
ce: number; // 总战力
@prop({ required: true, default: new CeAttrRole(), _id: false })
globalCeAttr: CeAttrRole; // 总战力
@prop({ required: true, default: 0 })
@prop({ required: true, default: 0, set: (val: number) => val, get: (val: number) => reduceCe(val) })
topFiveCe: number; // 最强5人战力
@prop({ required: true, type: TopHero, default: [], _id: false })
topFive: Array<TopHero>; // 总战力
@@ -230,8 +230,8 @@ export default class Role extends BaseModel {
return role;
}
public static async findByUid(uid: number, serverId: number, lean = true) {
const role: RoleType = await RoleModel.findOneAndUpdate({ 'userInfo.uid': uid, serverId }, { loginTime: nowSeconds() }, { new: true }).lean(lean);
public static async findByUid(uid: number, serverId: number, select?: string, getters = false) {
const role: RoleType = await RoleModel.findOneAndUpdate({ 'userInfo.uid': uid, serverId }, { loginTime: nowSeconds() }, { new: true }).select(select).lean({ getters });
return role;
}