🐞 fix(每周结算): 更新活跃值

This commit is contained in:
zhangxk
2023-07-21 15:53:07 +08:00
committed by luying
parent 667a429dc9
commit 46a8ac5979
2 changed files with 13 additions and 11 deletions
+10 -8
View File
@@ -1,7 +1,7 @@
import { gameData, getGuildActiveWeekReward, getGuildActiveByIdAndType, getGoodById } from "../pubUtils/data";
import { GuildModel, GuildType, GuildUpdateParam } from "../db/Guild";
import { deltaDays, resResult, shouldRefresh } from "../pubUtils/util";
import { STATUS, MAIL_TYPE, GUILD_AUTH, GUILD_JOB, REDIS_KEY, CHAT_SERVER, TASK_TYPE, COUNTER, GUILD_REC_TYPE, PUSH_ROUTE, WAR_TYPE, USER_GUILD_STATUS } from "../consts";
import { STATUS, MAIL_TYPE, GUILD_AUTH, GUILD_JOB, REDIS_KEY, CHAT_SERVER, TASK_TYPE, COUNTER, GUILD_REC_TYPE, PUSH_ROUTE, WAR_TYPE, USER_GUILD_STATUS, GUILD_POINT_WAYS } from "../consts";
import { RoleModel, RoleType } from "../db/Role";
import { UserGuildModel, UserGuildType, WishGood } from "../db/UserGuild";
import { UserGuildApplyModel } from "../db/UserGuildApply";
@@ -167,19 +167,21 @@ export async function getGuildActiveByRefTime(guildCode: string, refTime: Date)
* @param roleId
* @returns
*/
export async function getBossWarExtendActive(code: string, roleId: string) {
export async function addBossWarExtendActive(code: string, serverId: number) {
const bossInstance = await BossInstanceModel.findByCode(code);
if (!bossInstance || !bossInstance.ranks || bossInstance.ranks.length == 0) return 0;
let ranks = bossInstance.ranks;
ranks.sort((obj1, obj2) => obj2.score - obj1.score);
const index = ranks.findIndex((obj) => obj.roleId == roleId) + 1;
const dicBossRankActivePoint = gameData.bossRankActivePoint;
const foundEntry = dicBossRankActivePoint.find(
(entry) => index >= entry.bossRankMin && index <= entry.bossRankMax
);
ranks.forEach(async (ele, index) => {
const rank = index + 1;
const foundEntry = dicBossRankActivePoint.find(
(entry) => rank >= entry.bossRankMin && rank <= entry.bossRankMax
);
return foundEntry ? foundEntry.activePoint : 0;
await addActive(ele.roleId, serverId, GUILD_POINT_WAYS.BOSS_WAR_EXTEND, null, (foundEntry ? foundEntry.activePoint : 0));//获得活跃值
});
}
/**
@@ -199,7 +201,7 @@ export async function addActive(roleId: string, serverId: number, id: number, ty
if (!active) {
active = getGuildActiveByIdAndType(id, type);
}
let userGuild = await getUserGuildWithRefActive(roleId, 'activeRecord receivedActive activeDaily activeWeekly guildCode');
if (!userGuild) return { status: 0, resResult: resResult(STATUS.GUILD_NOT_FOUND) };