活动:修改结构
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import moment = require('moment');
|
||||
import { ACTIVITY_TIME_TYPE, REFRESH_TIME, SERVER_OPEN_TIME } from '../../consts';
|
||||
import { ActivityModelType } from '../../db/Activity';
|
||||
import { RoleModel } from '../../db/Role';
|
||||
import { deltaDays } from '../../pubUtils/util';
|
||||
|
||||
// 活动数据
|
||||
@@ -22,7 +23,7 @@ export abstract class ActivityBase {
|
||||
return this.todayIndex;
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
this.activityId = activityData.activityId;
|
||||
this.delayDay = activityData.delayDay ? activityData.delayDay : 0;
|
||||
this.beginTime = moment(activityData.beginTime).add(this.delayDay, 'd').valueOf();
|
||||
@@ -44,7 +45,7 @@ export abstract class ActivityBase {
|
||||
break;
|
||||
}
|
||||
case ACTIVITY_TIME_TYPE.ROLE_REGISTER_TIME: {
|
||||
this.beginTime = moment(SERVER_OPEN_TIME).add(this.delayDay, 'd').startOf('d').add(REFRESH_TIME, 'h').valueOf();
|
||||
this.beginTime = moment(createTime * 1000).add(this.delayDay, 'd').startOf('d').add(REFRESH_TIME, 'h').valueOf();
|
||||
if (activityData.days > 0) {
|
||||
this.endTime = moment(this.beginTime).add(activityData.days, 'd').valueOf();
|
||||
} else {
|
||||
|
||||
@@ -73,8 +73,8 @@ export class DailyChallengesData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -110,8 +110,8 @@ export class DailyCoinData extends ActivityBase {
|
||||
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -55,8 +55,8 @@ export class DailyGKData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -72,8 +72,8 @@ export class DailyGiftsData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -66,8 +66,8 @@ export class DailyMealData extends ActivityBase {
|
||||
// console.log('ddddddddddddbbbbbbb')
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -100,8 +100,8 @@ export class DailyRMBGiftsData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -78,8 +78,8 @@ export class FirstGiftData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -30,7 +30,7 @@ export class GachaData extends ActivityBase {
|
||||
let dicGacha = gameData.gacha.get(this.gachaId);
|
||||
this.pickHero = userGacha.pickHero;
|
||||
this.freeCount = userGacha.freeCount;
|
||||
if(dicGacha.free.count > 0) {
|
||||
if (dicGacha.free.count > 0) {
|
||||
let f = getTimeFun(userGacha.refFreeTime);
|
||||
this.refFreeTime = <number>f.getAfterDayWithHour(dicGacha.free.day);
|
||||
}
|
||||
@@ -38,8 +38,8 @@ export class GachaData extends ActivityBase {
|
||||
this.floor = userGacha.floor;
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,13 +91,13 @@ export class GachaListReturn {
|
||||
point: number = 0; // 积分
|
||||
turntable: Turntable[] = []; // 转盘记录
|
||||
pickHero: number = 0; // 玩家选择的武将
|
||||
|
||||
|
||||
constructor(dicGacha: DicGacha, userGacha: UserGachaType) {
|
||||
this.gachaId = dicGacha.id;
|
||||
|
||||
if(userGacha) {
|
||||
|
||||
if (userGacha) {
|
||||
this.freeCount = userGacha.freeCount;
|
||||
if(dicGacha.free.count > 0) {
|
||||
if (dicGacha.free.count > 0) {
|
||||
let f = getTimeFun(userGacha.refFreeTime);
|
||||
this.refFreeTime = <number>f.getAfterDayWithHour(dicGacha.free.day);
|
||||
}
|
||||
@@ -130,7 +130,7 @@ export class GachaResult {
|
||||
}
|
||||
|
||||
setSetPickHero(hid: number) {
|
||||
if(hid > 0 && this.hid == GACHA_OCCUPY_HID) {
|
||||
if (hid > 0 && this.hid == GACHA_OCCUPY_HID) {
|
||||
this.hid = hid;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -149,8 +149,8 @@ export class GrowthData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -164,8 +164,8 @@ export class GrowthFundData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -90,8 +90,8 @@ export class LimitShopData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -68,8 +68,8 @@ export class MonopolyData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -56,8 +56,8 @@ export class MonthlyTicketData extends ActivityBase {
|
||||
this.endTime = 0;
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -95,8 +95,8 @@ export class NewHeroGKData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -70,8 +70,8 @@ export class NewHeroGachaData extends ActivityBase {
|
||||
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,8 +64,8 @@ export class NewHeroGiftData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -84,8 +84,8 @@ export class RechargeMoneyData extends ActivityBase {
|
||||
})
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -168,8 +168,8 @@ export class RefreshShopData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -128,8 +128,8 @@ export class RefreshTaskData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -104,8 +104,8 @@ export class SelfServiceShopData extends ActivityBase {
|
||||
this.roundIndex = Math.ceil(this.todayIndex / this.days);
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -319,8 +319,8 @@ export class SevenDaysData extends ActivityBase {
|
||||
this.dailyChallenge = new SevenDaysDailyChallengesData(objData.dailyChallenge)
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -108,8 +108,8 @@ export class SignInData extends ActivityBase {
|
||||
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -256,8 +256,8 @@ export class ThirtyDaysData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -337,8 +337,8 @@ export class TreasureHuntData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -61,8 +61,8 @@ export class VipRechargeMoneyData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -62,8 +62,8 @@ export class YuanBaoShopData extends ActivityBase {
|
||||
}
|
||||
}
|
||||
|
||||
constructor(activityData: ActivityModelType) {
|
||||
super(activityData)
|
||||
constructor(activityData: ActivityModelType, createTime: number) {
|
||||
super(activityData, createTime)
|
||||
this.initData(activityData.data)
|
||||
}
|
||||
}
|
||||
@@ -499,6 +499,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
console.log('accomplishTask', roleId, taskType, count, JSON.stringify(parma))
|
||||
let pushMessage = [];
|
||||
let { activityGroupId } = await ServerlistModel.findByServerId(serverId);
|
||||
let { createTime } = await RoleModel.findByRoleId(roleId);
|
||||
// //成长活动统计
|
||||
// let allActivity: ActivityModelType[] = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.TASK_GROWTH, new Date());
|
||||
// for (let activity of allActivity) {
|
||||
@@ -562,7 +563,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
//七天乐
|
||||
let allActivity: ActivityModelType[] = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.SEVEN_DAY, new Date());
|
||||
for (let activity of allActivity) {
|
||||
let playerData = new SevenDaysData(activity)
|
||||
let playerData = new SevenDaysData(activity, createTime)
|
||||
//成长活动统计
|
||||
let growthActivity = playerData.growth;
|
||||
let growthTaskArray = growthActivity.findTaskByType(taskType);
|
||||
@@ -620,7 +621,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
//今日挑战统计
|
||||
allActivity = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.TASK_DAILY_CHALLENGES, new Date());
|
||||
for (let activity of allActivity) {
|
||||
let growthActivity = new DailyChallengesData(activity);
|
||||
let growthActivity = new DailyChallengesData(activity, createTime);
|
||||
let taskArray = growthActivity.findTaskByType(taskType, growthActivity.today());
|
||||
for (let task of taskArray) {
|
||||
let taskRecord = await ActivityDailyChallengesModel.findDataByCellIndex(serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType)
|
||||
@@ -650,7 +651,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
//刷新任务统计
|
||||
allActivity = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.REFRESH_TASK, new Date());
|
||||
for (let activity of allActivity) {
|
||||
let taskActivity = new RefreshTaskData(activity);
|
||||
let taskActivity = new RefreshTaskData(activity, createTime);
|
||||
let taskArray = taskActivity.findTaskByType(taskType);
|
||||
for (let task of taskArray) {
|
||||
let taskRecord = await ActivityRefreshTaskModel.findDataById(serverId, taskActivity.activityId, roleId, taskActivity.roundIndex, task.pageIndex, task.id, task.taskType)
|
||||
@@ -686,7 +687,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
let huntRoundIndex = tempData.huntRoundIndex;
|
||||
let activity = await ActivityModel.findActivity(tempData.huntActivityId);
|
||||
if (activity) {
|
||||
let playerData = new TreasureHuntData(activity);
|
||||
let playerData = new TreasureHuntData(activity, createTime);
|
||||
playerData.beginTime = moment(huntBeginTime).valueOf();
|
||||
playerData.endTime = moment(huntEndTime).valueOf();
|
||||
playerData.roundIndex = huntRoundIndex;
|
||||
@@ -740,7 +741,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
) {
|
||||
allActivity = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.THIRTY_DAYS, new Date());
|
||||
for (let activity of allActivity) {
|
||||
let thirtyDaysActivity = new ThirtyDaysData(activity);
|
||||
let thirtyDaysActivity = new ThirtyDaysData(activity, createTime);
|
||||
let playerRecords: ActivityThirtyDaysModelType[] = await ActivityThirtyDaysModel.findData(serverId, activity.activityId, roleId);
|
||||
thirtyDaysActivity.setPlayerRecords(playerRecords);
|
||||
let taskArray = thirtyDaysActivity.findUncompleteTaskByType(taskType);
|
||||
@@ -845,7 +846,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
if (taskType === TASK_TYPE.BATTLE_MAIN) {
|
||||
allActivity = await ActivityModel.findOpenActivityByTypes(activityGroupId, [ACTIVITY_TYPE.GROWTH_FUND_MAIN, ACTIVITY_TYPE.GROWTH_FUND_MAIN_VIP], new Date());
|
||||
for (let activity of allActivity) {
|
||||
let growthFundActivity = new GrowthFundData(activity);
|
||||
let growthFundActivity = new GrowthFundData(activity, createTime);
|
||||
let playerRecords: ActivityGrowthFundModelType[] = await ActivityGrowthFundModel.findData(activity.activityId, roleId);
|
||||
growthFundActivity.setPlayerRecords(playerRecords);
|
||||
if (growthFundActivity.isVipActivity()) {//vip高阶需要购买
|
||||
@@ -861,7 +862,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
if (taskType === TASK_TYPE.BATTLE_TOWER_LV) {
|
||||
allActivity = await ActivityModel.findOpenActivityByTypes(activityGroupId, [ACTIVITY_TYPE.GROWTH_FUND_TOWER, ACTIVITY_TYPE.GROWTH_FUND_TOWER_VIP], new Date());
|
||||
for (let activity of allActivity) {
|
||||
let growthFundActivity = new GrowthFundData(activity);
|
||||
let growthFundActivity = new GrowthFundData(activity, createTime);
|
||||
let playerRecords: ActivityGrowthFundModelType[] = await ActivityGrowthFundModel.findData(activity.activityId, roleId);
|
||||
growthFundActivity.setPlayerRecords(playerRecords);
|
||||
if (growthFundActivity.isVipActivity()) {//vip高阶需要购买
|
||||
@@ -877,7 +878,7 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
|
||||
if (taskType === TASK_TYPE.BATTLE_MAIN_ELITE) {
|
||||
allActivity = await ActivityModel.findOpenActivityByTypes(activityGroupId, [ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE, ACTIVITY_TYPE.GROWTH_FUND_MAIN_ELITE_VIP], new Date());
|
||||
for (let activity of allActivity) {
|
||||
let growthFundActivity = new GrowthFundData(activity);
|
||||
let growthFundActivity = new GrowthFundData(activity, createTime);
|
||||
let playerRecords: ActivityGrowthFundModelType[] = await ActivityGrowthFundModel.findData(activity.activityId, roleId);
|
||||
growthFundActivity.setPlayerRecords(playerRecords);
|
||||
if (growthFundActivity.isVipActivity()) {//vip高阶需要购买
|
||||
|
||||
Reference in New Issue
Block a user