feat(gvg): redis排行榜添加过期时间

This commit is contained in:
luying
2023-02-21 09:57:46 +08:00
parent da1a9e5f0f
commit 25b89d0c14
3 changed files with 15 additions and 6 deletions

View File

@@ -4,7 +4,7 @@ import { GVGTeamModel, GVGTeamType, GVGTeamUpdate } from "../../db/GVGTeam";
import { GVGCityModel, GVGCityType } from "../../db/GVGCity";
import { gameData, getGVGBattleRankReward } from "../../pubUtils/data";
import { GVG_AREA_TYPE, GVG_BATTLE_RANK_TYPE, GVG_TECH_TYPE, MAIL_TYPE, PUSH_ROUTE, REDIS_KEY, STATUS } from "../../consts";
import { nowSeconds } from "../../pubUtils/timeUtil";
import { getTimeFun, nowSeconds } from "../../pubUtils/timeUtil";
import { DicGVGAreaPoint } from "../../pubUtils/dictionary/DicGVGAreaPoint";
import { getGVGBattleData, getGVGBattleMap } from "./gvgBattleMemory";
import { GVGCityMapInfo, GVGTeamInList, GVGTeamInListOnPoint, GVGTeamSpineInMap } from "../../domain/gvgField/returnData";
@@ -275,20 +275,25 @@ export async function catapultHurt() {
export async function redisAddBattleScore(gvgTeam: GVGTeamType, incScore: number) {
let { configId, groupKey, cityId, roleId, isRobot } = gvgTeam;
if(isRobot) return;
let nextWeek = <number>getTimeFun().getAfterDayWithHour(7);
let r = new Rank(REDIS_KEY.GVG_BATTLE_RANK, { configId, groupKey, cityId });
r.setRankWithRoleInfo(roleId, incScore, Date.now(), null, true);
await r.setExpire(nextWeek);
await r.setRankWithRoleInfo(roleId, incScore, Date.now(), null, true);
}
export async function redisAddSettleScore(gvgTeam: GVGTeamType, incScore: number) {
let { configId, groupKey, cityId, leagueCode, isRobot } = gvgTeam;
if(isRobot) return;
let nextWeek = <number>getTimeFun().getAfterDayWithHour(7);
let r1 = new Rank(REDIS_KEY.GVG_BATTLE_LEAGUE_RANK, { configId, groupKey });
r1.setRankWithLeagueInfo(leagueCode, incScore, Date.now(), null, true);
await r1.setExpire(nextWeek);
await r1.setRankWithLeagueInfo(leagueCode, incScore, Date.now(), null, true);
let r2 = new Rank(REDIS_KEY.GVG_BATTLE_LEAGUE_RANK_BY_CITY, { configId, groupKey, cityId });
r2.setRankWithLeagueInfo(leagueCode, incScore, Date.now(), null, true);
await r2.setExpire(nextWeek);
await r2.setRankWithLeagueInfo(leagueCode, incScore, Date.now(), null, true);
}
// 获取排行榜

View File

@@ -344,11 +344,15 @@ export async function savePlayerRank(configId: number, groupKey: string, vestige
let dicRankMap = gameData.gvgVestige.get(vestigeId);
let newRank = dicRankMap?.get(playerInfo.newRank)?.score||0;
let oldRank = dicRankMap?.get(playerInfo.oldRank)?.score||0;
let nextWeek = <number>getTimeFun().getAfterDayWithHour(7);
let myScore = await GVGVestigeSumRankModel.incScore(playerInfo.roleId, playerInfo.leagueCode, configId, groupKey, newRank - oldRank);
let r1 = new Rank(REDIS_KEY.GVG_VESTIGE_MEMBER_ALL, { groupKey, day: getDayKeyInfo() });
await r1.setExpire(nextWeek);
await r1.setRankWithRoleInfo(playerInfo.roleId, myScore.score, myScore.updatedAt.getTime());
let leagueScore = await GVGVestigeLeagueRankModel.incScore(configId, playerInfo.leagueCode, groupKey, newRank - oldRank);
let r2 = new Rank(REDIS_KEY.GVG_VESTIGE_LEAGUE, { groupKey, day: getDayKeyInfo() });
await r2.setExpire(nextWeek);
await r2.setRankWithLeagueInfo(playerInfo.leagueCode, leagueScore.score, leagueScore.updatedAt.getTime());
}

View File

@@ -14,7 +14,7 @@
{
"periodType": 3,
"day": "6&",
"startTime": "17:30:00",
"endTime": "20:00:00"
"startTime": "20:55:00",
"endTime": "23:00:00"
}
]