feat(兼容): 配表使用后台隐藏物品

This commit is contained in:
luying
2022-11-09 18:01:02 +08:00
parent 5d0873630a
commit 53d4af4e09
54 changed files with 768 additions and 102 deletions

View File

@@ -15,7 +15,6 @@ import { DicGuildActivity } from '../pubUtils/dictionary/DicGuildActivity';
import { dispatch } from '../pubUtils/dispatcher';
import { createNewServer, initMarquee, setServerMainten } from './gmService';
import moment = require('moment');
import { CounterModel } from '../db/Counter';
import { reportOneOnline } from './authenticateService';
import { LADDER, PVP } from '../pubUtils/dicParam';
import { fetch37Words } from './sdkService';
@@ -32,7 +31,7 @@ import { ActivityModel, ActivityModelType } from '../db/Activity';
import { TimeLimitRankData } from '../domain/activityField/timeLimitRankField';
import { sendRankMail, takeSnapshot } from './activity/timeLimitRankService';
import { ActivityGroupModel } from '../db/ActivityGroup';
import { sendMessageToGroupShopWithSuc, sendMessageToServer } from './pushService';
import { sendMessageToServer } from './pushService';
import { resResult } from '../pubUtils/util';
import { checkPopUpConditionWhenGuildActivityEnd } from './activity/popUpShopService';
import { pushRefreshTime } from './connectorService';
@@ -41,6 +40,8 @@ import { ladderTimeout, ladderTimeWillout, sendLadderDailyReward } from './ladde
import { LadderMatchRecModel } from '../db/LadderMatchRec';
import { LadderMatchModel } from '../db/LadderMatch';
import { getGroupShopTimers, refundGroupShop, setGroupShopToSetSum } from './activity/groupShopService';
import { HiddenDataModel, HiddenDataModelType } from '../db/HiddenData';
import { setHiddenData, setHiddenDataToMemory } from './dataService';
const PER_SECOND = 1 * 1000;
const PER_DAY = 24 * 60 * 60;
@@ -102,6 +103,9 @@ export async function init() {
// 团购定时器
initGroupShopSchedule();
// 隐藏数据定时器
initHiddenDataSchedule(true);
}
// 每日刷新
@@ -854,4 +858,35 @@ export async function initSumSchedule() {
}
}
// —————————————— 团购定时器 end —————————————— //
// —————————————— 团购定时器 end —————————————— //
// —————————————— 配表兼容 start —————————————— //
let hiddenDataJob: Job;
export async function initHiddenData(data?: HiddenDataModelType, nextData?: HiddenDataModelType) {
let now = nowSeconds();
if(!data) data = await HiddenDataModel.findCurData(now);
if(!nextData) nextData = await HiddenDataModel.findNextData(now);
setHiddenData(data?.heroes, data?.goods, nextData?.refTime);
}
export async function initHiddenDataSchedule(isInit: boolean, data?: HiddenDataModelType) {
if(hiddenDataJob) hiddenDataJob.cancel();
let now = nowSeconds();
if(!data) data = await HiddenDataModel.findCurData(now);
let nextData = await HiddenDataModel.findNextData(data?.refTime??now);
if(isInit) {
await initHiddenData(data, nextData)
} else {
await setHiddenDataToMemory(data, nextData);
}
console.log('######## initHiddenDataSchedule', nextData);
if(nextData) {
scheduleJob(`hiddenData`, nextData.refTime * 1000, async () => {
console.log('######## hiddenDataSchedule', nextData);
await initHiddenDataSchedule(false, nextData);
});
}
}
// —————————————— 配表兼容 end —————————————— //