活动:添加活动组

This commit is contained in:
qiaoxin
2021-05-26 17:35:56 +08:00
parent 6289c593ae
commit ebb9870855
17 changed files with 119 additions and 35 deletions

View File

@@ -17,6 +17,7 @@ import { ActivityGrowthModel } from '../db/ActivityGrowth';
import { ActivityDailyChallengesModel } from '../db/ActivityDailyChallenges';
import { ThirtyDaysData } from '../domain/activityField/thirtyDaysField';
import { ActivityThirtyDaysModel, ActivityThirtyDaysModelType } from '../db/ActivityThirtyDays';
import { ServerlistModel } from '../db/Serverlist';
@@ -482,8 +483,9 @@ function checkRecResult(rec: UserTaskRecType, id: number) {
*
*/
export async function accomplishTask(serverId: number, roleId: string, taskType: TASK_TYPE, count: number, parma?: any) {
let { activityGroupId } = await ServerlistModel.findByServerId(serverId);
//七天乐-成长活动统计
let allActivity: ActivityModelType[] = await ActivityModel.findOpenActivityByType(serverId, ACTIVITY_TYPE.TASK_GROWTH, new Date());
let allActivity: ActivityModelType[] = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.TASK_GROWTH, new Date());
for (let activity of allActivity) {
let growthActivity = new GrowthData(activity);
let taskArray = growthActivity.findTaskByType(taskType);
@@ -491,16 +493,16 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
let addCount = isComplete(roleId, task.taskType, task.taskParam, count, parma);
if (addCount) {
if (taskType == TASK_TYPE.ROLE_LV || taskType == TASK_TYPE.ROLE_TITLE) {
await ActivityGrowthModel.setTaskCount(activity.serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
await ActivityGrowthModel.setTaskCount(serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
} else {
await ActivityGrowthModel.addTaskCount(activity.serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
await ActivityGrowthModel.addTaskCount(serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
}
}
}
}
//今日挑战统计
allActivity = await ActivityModel.findOpenActivityByType(serverId, ACTIVITY_TYPE.TASK_DAILY_CHALLENGES, new Date());
allActivity = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.TASK_DAILY_CHALLENGES, new Date());
for (let activity of allActivity) {
let growthActivity = new DailyChallengesData(activity);
let taskArray = growthActivity.findTaskByType(taskType, growthActivity.today());
@@ -508,9 +510,9 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
let addCount = isComplete(roleId, task.taskType, task.taskParam, count, parma);
if (addCount) {
if (taskType == TASK_TYPE.ROLE_LV || taskType == TASK_TYPE.ROLE_TITLE) {
await ActivityDailyChallengesModel.setTaskCount(activity.serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
await ActivityDailyChallengesModel.setTaskCount(serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
} else {
await ActivityDailyChallengesModel.addTaskCount(activity.serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
await ActivityDailyChallengesModel.addTaskCount(serverId, growthActivity.activityId, roleId, task.dayIndex, task.cellIndex, task.taskType, addCount);
}
}
}
@@ -531,16 +533,16 @@ export async function accomplishTask(serverId: number, roleId: string, taskType:
taskType === TASK_TYPE.EQUIP_QUALITY
) {
allActivity = await ActivityModel.findOpenActivityByType(serverId, ACTIVITY_TYPE.THIRTY_DAYS, new Date());
allActivity = await ActivityModel.findOpenActivityByType(activityGroupId, ACTIVITY_TYPE.THIRTY_DAYS, new Date());
for (let activity of allActivity) {
let thirtyDaysActivity = new ThirtyDaysData(activity);
let playerRecords: ActivityThirtyDaysModelType[] = await ActivityThirtyDaysModel.findData(activity.serverId, activity.activityId, roleId);
let playerRecords: ActivityThirtyDaysModelType[] = await ActivityThirtyDaysModel.findData(serverId, activity.activityId, roleId);
thirtyDaysActivity.setPlayerRecords(playerRecords);
let taskArray = thirtyDaysActivity.findUncompleteTaskByType(taskType);
for (let task of taskArray) {
let addCount = isComplete(roleId, task.taskType, task.taskParam, count, parma);
if (addCount) {
await ActivityThirtyDaysModel.addTaskCount(activity.serverId, thirtyDaysActivity.activityId, roleId, task.pageIndex, task.cellIndex, task.taskType, addCount);
await ActivityThirtyDaysModel.addTaskCount(serverId, thirtyDaysActivity.activityId, roleId, task.pageIndex, task.cellIndex, task.taskType, addCount);
}
}
}