活动:删除多余代码

This commit is contained in:
qiaoxin
2021-05-28 15:23:16 +08:00
parent 750ebd7232
commit 480f8458f8
12 changed files with 24 additions and 158 deletions

View File

@@ -76,7 +76,7 @@ export async function pushTaskUpdate(roleId: string, sid: string, funcs: number[
export async function checkActivityTask(serverId: number, sid: string, funcs: number[], roleId: string, taskType: TASK_TYPE, count: number, parma?: any) {
let pushMessage = await taskUtil.accomplishTask(serverId, roleId, taskType, count, parma);
pushTaskUpdate(roleId, sid, funcs, pushMessage);
pushActivityUpdate(roleId, sid, funcs, pushMessage);
}
export async function pushActivityUpdate(roleId: string, sid: string, funcs: number[], pushMessage: any[]) {

View File

@@ -81,7 +81,7 @@ export async function addPlayerThirtyDaysTask(activityId: number, serverId: numb
export async function playerThirtyDaysActivityDays(roleId: string) {
let { createTime } = await RoleModel.findByRoleId(roleId);
let createDate = moment(createTime * 1000).toDate();
let todayIndex = deltaDays(createDate, new Date) + 1;
let todayIndex = deltaDays(moment(createDate).startOf('d').toDate(), new Date) + 1;
return todayIndex;
}
{

View File

@@ -41,7 +41,7 @@ export async function getPlayerTreasureHuntData(activityId: number, serverId: nu
let playerData = new TreasureHuntData(activityData);
playerData.beginTime = moment(huntBeginTime).valueOf();
playerData.endTime = moment(huntEndTime).valueOf();
playerData.todayIndex = deltaDays(huntBeginTime, new Date) + 1;;
playerData.todayIndex = deltaDays(moment(huntBeginTime).startOf('d').toDate(), new Date) + 1;;
playerData.roundIndex = huntRoundIndex;
let playerShopRecord: ActivityTreasureHuntShopModelType = await ActivityTreasureHuntShopModel.findTreasureData(serverId, activityId, roleId, huntRoundIndex, playerData.todayIndex);
@@ -55,7 +55,7 @@ export async function getPlayerTreasureHuntShopData(activityId: number, serverId
let playerData = new TreasureHuntData(activityData);
playerData.beginTime = moment(huntBeginTime).valueOf();
playerData.endTime = moment(huntEndTime).valueOf();
playerData.todayIndex = deltaDays(huntBeginTime, new Date) + 1;;
playerData.todayIndex = deltaDays(moment(huntBeginTime).startOf('d').toDate(), new Date) + 1;;
playerData.roundIndex = huntRoundIndex;
let playerShopRecord: ActivityTreasureHuntShopModelType = await ActivityTreasureHuntShopModel.findTreasureData(serverId, activityId, roleId, huntRoundIndex, playerData.todayIndex);

View File

@@ -73,8 +73,17 @@ export async function makeYuanbaoShopReward(roleId: string, roleName: string, si
rewardParamArr = rewardParamArr.concat(stringToRewardParam(item.baseReward));
rewardParamArr = rewardParamArr.concat(stringToRewardParam(item.extraReward));
}
let arr: Array<RewardParam> = [];
for (let obj of rewardParamArr) {
let index = arr.findIndex(reward => { return reward.type == obj.type && reward.id == obj.id });
if (index != -1) {
arr[index].count += obj.count;
} else {
arr.push(obj);
}
}
let result = await addReward(roleId, roleName, sid, serverId, funcs, rewardParamArr)
let result = await addReward(roleId, roleName, sid, serverId, funcs, arr)
item.buyCount += 1;
return Object.assign(result, { item, activityId: activityData.activityId })
}

View File

@@ -67,8 +67,8 @@ export default class Activity extends BaseModel {
{ new: true, upsert: true }).lean(true);
result.push(rec);
}
if(groupId != undefined) {
if(groupId == 0) {
if (groupId != undefined) {
if (groupId == 0) {
let newGroup = await ActivityGroupModel.createGroup();
groupId = newGroup.groupId;
}

View File

@@ -23,7 +23,7 @@ export abstract class ActivityBase {
this.endTime = moment(activityData.endTime).valueOf();
this.type = activityData.type;
// this.data = activityData.data;
this.todayIndex = deltaDays(activityData.beginTime, new Date) + 1;
this.todayIndex = deltaDays(moment(activityData.beginTime).startOf('d').toDate(), new Date) + 1;
// console.log('今天是活动第几天', activityData.beginTime, new Date, this.todayIndex)
}
}

View File

@@ -28,26 +28,8 @@ export class DailyItem {
this.taskParam = data.taskParam;
this.condition = data.condition;
this.reward = data.reward;
}
public heroReward(): CreateHeroParam[] {
let rewardArray = [];
let rewardData = this.reward.split('|').filter(obj => { return obj && obj != '' });
for (let objStr of rewardData) {
let reward = parseHeroStrWithType(objStr);
rewardArray.push(reward);
}
return rewardArray.filter(obj => { return obj && obj.type == ACTIVITY_RESOURCES_TYPE.HERO })
}
public goodReward(): RewardInter[] {
let rewardArray = [];
let rewardData = this.reward.split('|').filter(obj => { return obj && obj != '' });
for (let objStr of rewardData) {
let reward = parseGoodStrWithType(objStr);
rewardArray.push(reward);
}
return rewardArray.filter(obj => { return obj && obj.type == ACTIVITY_RESOURCES_TYPE.GOODS })
this.totalCount = 0;
this.receiveRewardCount = 0;
}
public canReceive(): boolean {
@@ -55,48 +37,7 @@ export class DailyItem {
}
public isComplete(): boolean {
let complete = false;
switch (this.taskType) {
case TASK_TYPE.ROLE_LV:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GUILD_JOIN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.LOGIN_SUM:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.HERO_NUM:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.ROLE_TITLE:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GASHA:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.EQUIP_STRENGTHEN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.BATTLE_MAIN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.EQUIP_JEWEL_SUM:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GUILD_TRAIN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.ROLE_SCHOOL_PUT_HERO:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GUILD_ACTIVITY:
complete = this.totalCount >= this.condition;
break;
default:
complete = false;
break;
}
let complete = this.totalCount >= this.condition;
return complete;
}
}
@@ -124,9 +65,6 @@ export class DailyChallengesData extends ActivityBase {
if (index != -1) {
obj.totalCount = data[index].totalCount ? data[index].totalCount : 0;
obj.receiveRewardCount = data[index].receiveRewardCount ? data[index].receiveRewardCount : 0;
} else {
obj.totalCount = 0;
obj.receiveRewardCount = 0
}
}
}

View File

@@ -37,26 +37,6 @@ export class DailyGiftItem {
return consumeArray[0];
}
public heroReward(): CreateHeroParam[] {
let rewardArray = [];
let rewardData = this.reward.split('|').filter(obj => { return obj && obj != '' });
for (let objStr of rewardData) {
let reward = parseHeroStrWithType(objStr);
rewardArray.push(reward);
}
return rewardArray.filter(obj => { return obj && obj.type == ACTIVITY_RESOURCES_TYPE.HERO })
}
public goodReward(): RewardInter[] {
let rewardArray = [];
let rewardData = this.reward.split('|').filter(obj => { return obj && obj != '' });
for (let objStr of rewardData) {
let reward = parseGoodStrWithType(objStr);
rewardArray.push(reward);
}
return rewardArray.filter(obj => { return obj && obj.type == ACTIVITY_RESOURCES_TYPE.GOODS })
}
public canBuy(): boolean {
return this.buyCount < this.maxCount;
}

View File

@@ -1,3 +1,4 @@
import moment = require('moment');
import { FIRST_GIFT_STATE } from '../../consts';
import { ActivityModelType } from '../../db/Activity';
import { ActivityFirstGiftModelType } from '../../db/ActivityFirstGift';
@@ -57,7 +58,7 @@ export class FirstGiftData extends ActivityBase {
if (!data) {
return;
}
this.todayIndex = deltaDays(data.createdAt, new Date) + 1;
this.todayIndex = deltaDays(moment(data.createdAt).startOf('d').toDate(), new Date) + 1;
this.state = FIRST_GIFT_STATE.OPEN
let daysNum = data.days ? data.days : [];

View File

@@ -64,48 +64,7 @@ export class GrowthItem {
}
public isComplete(): boolean {
let complete = false;
switch (this.taskType) {
case TASK_TYPE.ROLE_LV:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GUILD_JOIN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.LOGIN_SUM:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.HERO_NUM:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.ROLE_TITLE:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GASHA:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.EQUIP_STRENGTHEN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.BATTLE_MAIN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.EQUIP_JEWEL_SUM:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GUILD_TRAIN:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.ROLE_SCHOOL_PUT_HERO:
complete = this.totalCount >= this.condition;
break;
case TASK_TYPE.GUILD_ACTIVITY:
complete = this.totalCount >= this.condition;
break;
default:
complete = false;
break;
}
let complete = this.totalCount >= this.condition;
return complete;
}
}
@@ -168,7 +127,6 @@ export class GrowthData extends ActivityBase {
if (obj.taskType === TASK_TYPE.HERO_NUM) {
obj.totalCount = heroNum;
} else if (obj.taskType === TASK_TYPE.HERO_LV) {
obj.taskParam
let lv = obj.taskParamArray[1];
let heroes = userHeroes.filter(hero => { return hero.lv >= lv })
obj.totalCount = heroes.length;

View File

@@ -30,7 +30,7 @@ export class MonthlyTicketData extends ActivityBase {
this.endTime = moment(data.endTime).valueOf();
if (moment(new Date).valueOf() < this.endTime) {
this.isOpen = true;
this.todayIndex = deltaDays(data.createdAt, new Date) + 1;
this.todayIndex = deltaDays(moment(data.createdAt).startOf('d').toDate(), new Date) + 1;
} else {
this.todayIndex = 0;
}

View File

@@ -21,26 +21,6 @@ export class SignInItem {
this.isReceive = false;
}
public heroReward(): CreateHeroParam[] {
let rewardArray = [];
let rewardData = this.reward.split('|').filter(obj => { return obj && obj != '' });
for (let objStr of rewardData) {
let reward = parseHeroStrWithType(objStr);
rewardArray.push(reward);
}
return rewardArray.filter(obj => { return obj && obj.type == ACTIVITY_RESOURCES_TYPE.HERO })
}
public goodReward(): RewardInter[] {
let rewardArray = [];
let rewardData = this.reward.split('|').filter(obj => { return obj && obj != '' });
for (let objStr of rewardData) {
let reward = parseGoodStrWithType(objStr);
rewardArray.push(reward);
}
return rewardArray.filter(obj => { return obj && obj.type == ACTIVITY_RESOURCES_TYPE.GOODS })
}
public canReceive(): boolean {
return !this.isReceive;
}