军团活动:修复粮草先行索引问题

This commit is contained in:
luying
2022-09-05 12:13:16 +08:00
parent 3cc2f06e50
commit 6d0f05f5b4
5 changed files with 36 additions and 41 deletions

View File

@@ -1,7 +1,7 @@
import { Application, ChannelService, BackendSession, HandlerService, } from "pinus";
import { GUILD_ACTIVITY_TYPE, STATUS, GUILD_ACTIVITY_STATUS, GUILD_POINT_WAYS, REDIS_KEY, TASK_TYPE, PUSH_ROUTE, RACE_ACTIVITY_STATUS, DEBUG_MAGIC_WORD } from "../../../consts";
import { genCode, resResult } from "../../../pubUtils/util";
import { getGuildActivityStatus, getRaceActivityObj, getWoodenHorseList, calWoodenHorseAndSend, raceActivitySettleReward, getGAIndexInPinus } from "../../../services/guildActivity/guildActivityService";
import { getGuildActivityStatus, getRaceActivityObj, getWoodenHorseList, getGAIndexInPinus, getJoinIndex } from "../../../services/guildActivity/guildActivityService";
import { UserGuildModel } from "../../../db/UserGuild";
import { GuildActivityRecordModel } from "../../../db/GuildActivityRec";
import { UserGuildActivityRecModel } from "../../../db/UserGuildActivityRec";
@@ -48,7 +48,7 @@ export class RaceActivityHandler {
let ranks: { myGuildRank?: RaceActivityRankParam, guildRank?: RaceActivityRankParam[] } = {};
let hasJoin = obj.getMember(guildCode, roleId);
if(obj.status == RACE_ACTIVITY_STATUS.START) {
if(obj.status == GUILD_ACTIVITY_STATUS.START) {
ranks = await obj.getRanks(serverId, guildCode);
} else {
let index = getGAIndexInPinus(this.aid);
@@ -81,7 +81,7 @@ export class RaceActivityHandler {
const guildCode = session.get('guildCode');
const sid = session.get('sid');
if (!guildCode) return resResult(STATUS.GUILD_AUTH_NOT_ENOUGH);
let index = getGAIndexInPinus(this.aid);
let joinIndex = getJoinIndex();
let statusResult = getGuildActivityStatus(this.aid);
if (!statusResult) return resResult(STATUS.DIC_DATA_NOT_FOUND);
@@ -93,8 +93,7 @@ export class RaceActivityHandler {
return resResult(STATUS.RACE_HAS_JOIN);
}
let guildActivityRec = await GuildActivityRecordModel.getRecord(guildCode, serverId, this.aid, index, obj.getEvents(guildCode, 0));
let guildActivityRec = await GuildActivityRecordModel.getRecord(guildCode, serverId, this.aid, joinIndex, obj.getEvents(guildCode, 0));
if (!guildActivityRec) return resResult(STATUS.WRONG_PARMS);
let { code: sourceCode } = guildActivityRec;
@@ -162,7 +161,7 @@ export class RaceActivityHandler {
let serverId = session.get('serverId');
let guildCode = session.get('guildCode');
let sid = session.get('sid');
let index = getGAIndexInPinus(this.aid);
let joinIndex = getJoinIndex();
let { id, count, toGuild } = msg;
let obj = getRaceActivityObj();
@@ -172,7 +171,7 @@ export class RaceActivityHandler {
let event = await obj.useItem(serverId, roleId, sid, guildCode, toGuild, id, count);
if (!event) return resResult(STATUS.BATTLE_CONSUMES_NOT_ENOUGH);
await GuildActivityRecordModel.pushEvent(guildCode, this.aid, index, event);
await GuildActivityRecordModel.pushEvent(guildCode, this.aid, joinIndex, event);
return resResult(STATUS.SUCCESS, {
timestamp: Date.now(),
@@ -186,13 +185,13 @@ export class RaceActivityHandler {
let serverId = session.get('serverId');
let { code, isSuccess } = msg;
let index = getGAIndexInPinus(this.aid);
let joinIndex = getJoinIndex();
let statusResult = getGuildActivityStatus(this.aid);
if (!statusResult) return resResult(STATUS.DIC_DATA_NOT_FOUND);
// 更新userGuildActivityRecord
let guildActivityRec = await GuildActivityRecordModel.getRecord(guildCode, serverId, this.aid, index);
let guildActivityRec = await GuildActivityRecordModel.getRecord(guildCode, serverId, this.aid, joinIndex);
let myGuildActivityRec = await UserGuildActivityRecModel.updateInfo(code, { isSuccess, isCompleted: true });
if (!guildActivityRec || !myGuildActivityRec) return resResult(STATUS.WRONG_PARMS);
@@ -205,7 +204,7 @@ export class RaceActivityHandler {
let obj = getRaceActivityObj();
let myGuildRank = 0;
let woodenHorse = await obj.getWoodenHorse(guildCode, serverId);
if(obj.status == RACE_ACTIVITY_STATUS.START) {
if(obj.status == GUILD_ACTIVITY_STATUS.START) {
let { myGuildRank: rank, guildRank } = await obj.getRanks(serverId, guildCode);
// console.log('#', JSON.stringify(guildRank))
myGuildRank = rank?.rank||0;
@@ -227,17 +226,6 @@ export class RaceActivityHandler {
})
}
async settleReward(msg: { serverId: number }, session: BackendSession) {
let guildCode = session.get('guildCode');
let serverId = session.get('serverId');
let obj = getRaceActivityObj();
let woodenHorse = await obj.getWoodenHorse(guildCode, serverId);
if (woodenHorse) {
await raceActivitySettleReward(guildCode, woodenHorse)
}
}
// 加入木马
async debugAddHorse(msg: { magicWord: string, memberCnt: number }, session: BackendSession) {
const { magicWord, memberCnt } = msg;