军团活动:修复活动结束之后还继续挑战的bug
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { Application, ChannelService, BackendSession, pinus, HandlerService, } from "pinus";
|
||||
import { GUILD_ACTIVITY_TYPE, STATUS, REDIS_KEY, GUILD_POINT_WAYS, CITY_STATUS, TASK_TYPE, ITEM_CHANGE_REASON, PUSH_ROUTE } from "../../../consts";
|
||||
import { GUILD_ACTIVITY_TYPE, STATUS, REDIS_KEY, GUILD_POINT_WAYS, CITY_STATUS, TASK_TYPE, ITEM_CHANGE_REASON, PUSH_ROUTE, GUILD_ACTIVITY_STATUS } from "../../../consts";
|
||||
import { resResult } from "../../../pubUtils/util";
|
||||
import { getGuildActivityStatus, getCityActivityObj, getCityStatus as pubGetCityStatus, getCities, getCityActivityRank, sendSingleCityActEndMsg, getPreDayActiveData, sendGuildCityDeclare } from "../../../services/guildActivity/guildActivityService";
|
||||
import { GuildActivityCityModel } from "../../../db/GuildActivityCity";
|
||||
@@ -247,7 +247,6 @@ export class CityActivityHandler {
|
||||
let { cityId, code, damage, hid, round } = msg;
|
||||
if (damage == undefined || damage < 0) return resResult(STATUS.WRONG_PARMS);
|
||||
|
||||
const dicCity = gameData.cityActivity.get(cityId);
|
||||
let obj = getCityActivityObj();
|
||||
let { gateHp, maxHp } = await obj.getGateHpAndInc(serverId, cityId);
|
||||
if (gateHp <= 0) return resResult(STATUS.GATE_HP_IS_ZERO);
|
||||
@@ -255,6 +254,12 @@ export class CityActivityHandler {
|
||||
let statusResult = getGuildActivityStatus(this.aid);
|
||||
if (!statusResult) return resResult(STATUS.DIC_DATA_NOT_FOUND);
|
||||
if(!statusResult.isOpen) return resResult(STATUS.GUILD_ACTIVITY_NOT_OPEN);
|
||||
if(statusResult.status != GUILD_ACTIVITY_STATUS.START) {
|
||||
return resResult(STATUS.SUCCESS, {
|
||||
code,
|
||||
...statusResult
|
||||
})
|
||||
}
|
||||
|
||||
let pushResult = await UserGuildActivityRecModel.pushCityRecord(code, { round, hid, damage });
|
||||
if (!pushResult) return resResult(STATUS.WRONG_PARMS);
|
||||
@@ -262,11 +267,11 @@ export class CityActivityHandler {
|
||||
let tomorrow = <number>getTimeFun().getAfterDayWithHour();
|
||||
// 更新redis数据
|
||||
let myR = new Rank(REDIS_KEY.USER_CITY_ACTIVITY, { serverId, guildCode }, true);
|
||||
let myScore = await myR.setRankWithRoleInfo(roleId, damage, Date.now(), null, true);
|
||||
let myScore = await myR.setRankWithRoleInfo(roleId, damage, obj.getTimeGap(), null, true);
|
||||
await myR.setExpire(tomorrow);
|
||||
|
||||
let r = new Rank(REDIS_KEY.CITY_ACTIVITY, { serverId, cityId }, true);
|
||||
let guildScore = await r.setRankWithGuildInfo(guildCode, damage, Date.now(), null, true);
|
||||
let guildScore = await r.setRankWithGuildInfo(guildCode, damage, obj.getTimeGap(), null, true);
|
||||
await r.setExpire(tomorrow);
|
||||
|
||||
({gateHp, maxHp} = await obj.getGateHpAndInc(serverId, cityId, -1 * damage));
|
||||
|
||||
@@ -131,11 +131,11 @@ export class GateActivityHandler {
|
||||
let tomorrow = <number>getTimeFun().getAfterDayWithHour();
|
||||
// 更新redis数据
|
||||
let myR = new Rank(REDIS_KEY.USER_GATE_ACTIVITY, { serverId, guildCode }, true);
|
||||
let myScore = await myR.setRankWithRoleInfo(roleId, score, Date.now(), null, true);
|
||||
let myScore = await myR.setRankWithRoleInfo(roleId, score, obj.getTimeGap(), null, true);
|
||||
await myR.setExpire(tomorrow);
|
||||
|
||||
let r = new Rank(REDIS_KEY.GATE_ACTIVITY, { serverId }, true);
|
||||
let guildScore = await r.setRankWithGuildInfo(guildCode, score, Date.now(), null, true);
|
||||
let guildScore = await r.setRankWithGuildInfo(guildCode, score, obj.getTimeGap(), null, true);
|
||||
await r.setExpire(tomorrow);
|
||||
|
||||
// 更新数据库
|
||||
|
||||
Reference in New Issue
Block a user