✨ feat(gvg): 获取遗迹信息时给对手加上联军信息
This commit is contained in:
@@ -114,7 +114,8 @@ export async function getOppPlayerByRanks(serverId: number, groupKey: string, ve
|
|||||||
let role = roles.find(cur => cur.roleId == opp.roleId);
|
let role = roles.find(cur => cur.roleId == opp.roleId);
|
||||||
if(!role) continue;
|
if(!role) continue;
|
||||||
let lineupce = opp.lineup.reduce((pre, cur) => pre + cur.ce, 0);
|
let lineupce = opp.lineup.reduce((pre, cur) => pre + cur.ce, 0);
|
||||||
obj.setByRole(role, serverNames, lineupce, dicCurRank?.score||0);
|
const { leagueCode, name } = opp;
|
||||||
|
obj.setByRole(role, serverNames, lineupce, dicCurRank?.score||0, leagueCode, name);
|
||||||
} else {
|
} else {
|
||||||
obj.setByDic(dicCurRank, serverNames[serverId]);
|
obj.setByDic(dicCurRank, serverNames[serverId]);
|
||||||
}
|
}
|
||||||
@@ -328,7 +329,8 @@ export async function getMyVestigeRank(configId: number, groupKey: string, vesti
|
|||||||
myLeague = await GVGLeagueModel.findLeagueByGuild(role.guildCode);
|
myLeague = await GVGLeagueModel.findLeagueByGuild(role.guildCode);
|
||||||
if(!myLeague) return null
|
if(!myLeague) return null
|
||||||
}
|
}
|
||||||
myVestigeRank = await GVGVestigeRankModel.initRank(configId, vestigeId, groupKey, role, myLeague.leagueCode, oppRanks );
|
const { leagueCode, name } = myLeague;
|
||||||
|
myVestigeRank = await GVGVestigeRankModel.initRank(configId, vestigeId, groupKey, role, leagueCode, name, oppRanks );
|
||||||
}
|
}
|
||||||
return myVestigeRank;
|
return myVestigeRank;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,6 +36,9 @@ export default class GVGVestigeRank extends BaseModel {
|
|||||||
@prop({ required: true })
|
@prop({ required: true })
|
||||||
leagueCode: string; // 联军
|
leagueCode: string; // 联军
|
||||||
|
|
||||||
|
@prop({ required: true })
|
||||||
|
name: string; // 联军名字
|
||||||
|
|
||||||
@prop({ required: true, default: 0 })
|
@prop({ required: true, default: 0 })
|
||||||
rank: number; // 排名
|
rank: number; // 排名
|
||||||
|
|
||||||
@@ -75,10 +78,10 @@ export default class GVGVestigeRank extends BaseModel {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static async initRank(configId: number, vestigeId: number, groupKey: string, role: RoleType, leagueCode: string, oppRanks: number[]) {
|
public static async initRank(configId: number, vestigeId: number, groupKey: string, role: RoleType, leagueCode: string, name: string, oppRanks: number[]) {
|
||||||
let today = getZeroPoint();
|
let today = getZeroPoint();
|
||||||
let doc = new GVGVestigeRankModel();
|
let doc = new GVGVestigeRankModel();
|
||||||
let update = Object.assign(doc.toJSON(), { role: role._id, configId, groupKey, oppRanks, leagueCode });
|
let update = Object.assign(doc.toJSON(), { role: role._id, configId, groupKey, oppRanks, leagueCode, name });
|
||||||
let result: GVGVestigeRankType = await GVGVestigeRankModel.findOneAndUpdate({ day: today, vestigeId, roleId: role.roleId }, { $setOnInsert: update }, { new: true, upsert: true }).lean();
|
let result: GVGVestigeRankType = await GVGVestigeRankModel.findOneAndUpdate({ day: today, vestigeId, roleId: role.roleId }, { $setOnInsert: update }, { new: true, upsert: true }).lean();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -410,12 +410,14 @@ export class GVGVestigeOppPlayer {
|
|||||||
serverName: string;
|
serverName: string;
|
||||||
lineupCe: number;
|
lineupCe: number;
|
||||||
score: number;
|
score: number;
|
||||||
|
leagueCode: string;
|
||||||
|
leagueName: string;
|
||||||
|
|
||||||
constructor(rank: number) {
|
constructor(rank: number) {
|
||||||
this.rank = rank;
|
this.rank = rank;
|
||||||
}
|
}
|
||||||
|
|
||||||
setByRole(role: RoleType, serverNames: any, lineupCe: number, score: number) {
|
setByRole(role: RoleType, serverNames: any, lineupCe: number, score: number, leagueCode: string, leagueName: string) {
|
||||||
this.roleId = role.roleId;
|
this.roleId = role.roleId;
|
||||||
this.roleName = role.roleName;
|
this.roleName = role.roleName;
|
||||||
this.lv = role.lv;
|
this.lv = role.lv;
|
||||||
@@ -427,6 +429,8 @@ export class GVGVestigeOppPlayer {
|
|||||||
this.serverName = serverNames[role.serverId];
|
this.serverName = serverNames[role.serverId];
|
||||||
this.lineupCe = lineupCe;
|
this.lineupCe = lineupCe;
|
||||||
this.score = score;
|
this.score = score;
|
||||||
|
this.leagueCode = leagueCode;
|
||||||
|
this.leagueName = leagueName;
|
||||||
}
|
}
|
||||||
|
|
||||||
setByDic(dic: DicGVGVestige, serverName: string) {
|
setByDic(dic: DicGVGVestige, serverName: string) {
|
||||||
@@ -442,6 +446,8 @@ export class GVGVestigeOppPlayer {
|
|||||||
this.serverName = serverName;
|
this.serverName = serverName;
|
||||||
this.lineupCe = dic.ce;
|
this.lineupCe = dic.ce;
|
||||||
this.score = dic.score;
|
this.score = dic.score;
|
||||||
|
this.leagueCode = 'robot';
|
||||||
|
this.leagueName = '遗迹守卫军';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user