✨ feat(pvp): 巅峰演武战区化
This commit is contained in:
@@ -21,6 +21,7 @@ import { GVGLeagueModel, GVGLeagueType } from "../db/GVGLeague";
|
||||
import { GVGVestigeLeagueRankModel } from "../db/GVGVestigeLeagueRank";
|
||||
import { getDayKeyInfo } from "./gvg/gvgFightService";
|
||||
import { ActivityMiniGameModel } from "../db/ActivityMiniGame";
|
||||
import { getPVPServerGroup } from "./serverService";
|
||||
|
||||
|
||||
/**
|
||||
@@ -1082,18 +1083,22 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe
|
||||
} else if (type == REDIS_KEY.PVP_RANK) {
|
||||
let seasonNum = await CounterModel.getCounter(COUNTER.PVP_SEASON_NUM);
|
||||
if(seasonNum > 0) {
|
||||
let keyName = new KeyName(type, { seasonNum })
|
||||
await delKeys(keyName.getName());
|
||||
let ranks = await PvpDefenseModel.getRank(seasonNum);//获得全服前1000名的排名,加入到redis中
|
||||
|
||||
let r = new Rank(type, { seasonNum });
|
||||
r.setIsInit(true);
|
||||
for (let { roleId, role: _role, score, updatedAt } of ranks) {
|
||||
let role = <RoleType>_role;
|
||||
if (!role) {
|
||||
continue;
|
||||
let serverGroup = await getPVPServerGroup();
|
||||
for(let [groupId, serverIds] of serverGroup) {
|
||||
let keyName = new KeyName(type, { seasonNum, groupId })
|
||||
await delKeys(keyName.getName());
|
||||
let ranks = await PvpDefenseModel.getRank(serverIds, seasonNum);//获得全服前1000名的排名,加入到redis中
|
||||
|
||||
console.log('#####', seasonNum, groupId, serverIds, ranks.length)
|
||||
let r = new Rank(type, { seasonNum, groupId });
|
||||
r.setIsInit(true);
|
||||
for (let { roleId, role: _role, score, updatedAt } of ranks) {
|
||||
let role = <RoleType>_role;
|
||||
if (!role) {
|
||||
continue;
|
||||
}
|
||||
await r.setRankWithRoleInfo(roleId, score, updatedAt.getTime(), role);
|
||||
}
|
||||
await r.setRankWithRoleInfo(roleId, score, updatedAt.getTime(), role);
|
||||
}
|
||||
}
|
||||
} else if (type == REDIS_KEY.TOP_LINEUP_RANK) {
|
||||
|
||||
Reference in New Issue
Block a user