活动:弹出礼包debug接口

This commit is contained in:
luying
2022-06-08 10:37:45 +08:00
parent 5e284f51ab
commit cf8705cdc5

View File

@@ -1,6 +1,6 @@
import { Application, BackendSession, HandlerService, } from 'pinus';
import { resResult, splitString } from '../../../pubUtils/util';
import { ACTIVITY_RESOURCES_TYPE, CURRENCY_BY_TYPE, STATUS, CURRENCY_TYPE, ITEM_CHANGE_REASON, POP_UP_SHOP_CONDITION_TYPE, ACTIVITY_TYPE, DEBUG_MAGIC_WORD, } from '../../../consts';
import { ACTIVITY_RESOURCES_TYPE, CURRENCY_BY_TYPE, STATUS, CURRENCY_TYPE, ITEM_CHANGE_REASON, POP_UP_SHOP_CONDITION_TYPE, ACTIVITY_TYPE, DEBUG_MAGIC_WORD, PUSH_ROUTE, } from '../../../consts';
import { checkPopUpCondition, getPopUpShopData, getPopUpShopDataShow } from '../../../services/activity/popUpShopService';
import { ActivityModel, ActivityModelType } from '../../../db/Activity';
import { ActivityPopUpShopModel, ActivityPopUpShopModelType } from '../../../db/ActivityPopUpShop';
@@ -9,7 +9,9 @@ import { addReward, stringToConsumeParam, stringToRewardParam } from '../../../s
import { RewardParam } from '../../../domain/activityField/rewardField';
import { handleCost } from '../../../services/role/rewardService';
import moment = require('moment');
import { getActivitiesByType, getActivityById } from '../../../services/activity/activityService';
import { getActivitiesByType, getActivityById, pushActivities } from '../../../services/activity/activityService';
import { setInterval } from 'timers';
import { sendMessageToUser, sendMessageToUserWithSuc } from '../../../services/pushService';
export default function (app: Application) {
new HandlerService(app, {});
@@ -136,4 +138,51 @@ export class PopUpShopHandler {
return resResult(STATUS.SUCCESS, { activities:arr });
}
private interval: NodeJS.Timer;
private pushId = 0;
async debugPushPopUpInterval(msg: { magicWord: string }, session: BackendSession) {
const roleId = session.get('roleId');
let sid = session.get('sid');
const { magicWord } = msg;
if (magicWord !== DEBUG_MAGIC_WORD) {
return resResult(STATUS.TOKEN_ERR);
}
if(this.interval) {
clearInterval(this.interval);
}
let fun = async () => {
await sendMessageToUserWithSuc(roleId, PUSH_ROUTE.ACTIVITY_UPDATE, {
activities: [{
activityId: 25,
activityType: 24,
param: { popUpShopItems: [
{"code":"eefXmwD2","packageId":5,"endTime":Date.now() + 60000,"id":1,"name":"超值第一章通关礼包","price":6,"productID":"com.bantu.sgzzyz.yb34-20","consume":"&","reward":"2&11002&20|2&22001&2|2&31001&10000","rebate":1000,"buyCnt":1,"hasBoughtCnt":0},
{"code":"eefXmwD2","packageId":5,"endTime":Date.now() + 60000,"id":2,"name":"超值第一章通关礼包","price":30,"productID":"com.bantu.sgzzyz.yb34-21","consume":"&","reward":"2&11002&40|2&22001&10|2&31001&20000","rebate":850,"buyCnt":1,"hasBoughtCnt":0},
{"code":"eefXmwD2","packageId":5,"endTime":Date.now() + 60000,"id":3,"name":"超值第一章通关礼包","price":68,"productID":"com.bantu.sgzzyz.yb34-22","consume":"&","reward":"2&11003&20|2&22001&25|2&31001&40000","rebate":950,"buyCnt":1,"hasBoughtCnt":0}
]},
}],
pushId: ++this.pushId
}, sid);
};
await fun();
this.interval = setInterval(fun, 60000)
return resResult(STATUS.SUCCESS);
}
async debugStopPupUpInterval(msg: { magicWord: string }, session: BackendSession) {
const { magicWord } = msg;
if (magicWord !== DEBUG_MAGIC_WORD) {
return resResult(STATUS.TOKEN_ERR);
}
if(this.interval) {
clearInterval(this.interval);
}
this.pushId = 0;
return resResult(STATUS.SUCCESS);
}
}