import { ACTIVITY_TYPE, TASK_TYPE } from '../consts'; import { ActivityModel, ActivityModelType } from '../db/Activity'; import { ActivityFirstGiftModel, ActivityFirstGiftModelType } from '../db/ActivityFirstGift'; import { FirstGiftData, FirstGiftItem } from '../domain/activityField/firstGiftField'; /** * 获取活动数据 * * @param {number} serverId 区Id * @param {number} type 活动类型 ACTIVITY_TYPE * @param {string} roleId 角色Id * */ export async function firstGiftActivity(serverId: number, roleId: string) { let activityArray: ActivityModelType[] = await ActivityModel.findActivityByType(serverId, ACTIVITY_TYPE.FIRST_GIFT, true) activityArray = activityArray.sort((a, b) => { return a.activityId - b.activityId }); if (activityArray.length == 0) { return null; } let activityData = activityArray[0]; let playerData = await getPlayerFirstGiftData(activityData.activityId, serverId, roleId); return playerData } /** * 玩家活动数据 * * @param {number} serverId 区Id * @param {number} activityId 活动Id * @param {string} roleId 角色Id * */ export async function getPlayerFirstGiftData(activityId: number, serverId: number, roleId: string) { let activityData: ActivityModelType = await ActivityModel.findActivity(serverId, activityId, true); let playerRecord: ActivityFirstGiftModelType = await ActivityFirstGiftModel.findData(activityId, roleId); let playerData = new FirstGiftData(activityData); playerData.setPlayerRecords(playerRecord); return playerData; }