diff --git a/shared/domain/activityField/taskPassField.ts b/shared/domain/activityField/taskPassField.ts index 4d766ac11..fe0c33c35 100644 --- a/shared/domain/activityField/taskPassField.ts +++ b/shared/domain/activityField/taskPassField.ts @@ -16,12 +16,18 @@ interface TaskPassRewardItemInDb { needShow: boolean; } +interface TaskPassSpecialRewardInDb { + hid: number; + lv: number; +} + interface TaskPassRewardsInDb { pageIndex: number; type: number; // 1-标准版 2-豪华版 price: number; // 花多少钱 productID: string; // 商品id,如果是标准版这里填& items: TaskPassRewardItemInDb[]; + specialReward: TaskPassSpecialRewardInDb; } interface TaskPassSpdUpInDb { @@ -64,12 +70,25 @@ export class TaskPassRewardItem { } } +export class TaskPassSpecialReward { + hid: number; + lv: number; + + constructor(data: TaskPassSpecialRewardInDb) { + if(data) { + this.hid = data.hid; + this.lv = data.lv; + } + } +} + export class TaskPassReward { pageIndex: number; // 第几页 type: number; // 1-标准版 2-豪华版 price: number; // 花多少钱 productID: string; // 商品id,如果是标准版这里填& items: TaskPassRewardItem[] = []; + specialReward: TaskPassSpecialReward; hasBuy: boolean = false; // 是否购买了 map: Map = new Map(); // lv => index @@ -84,6 +103,7 @@ export class TaskPassReward { this.items.push(obj); this.map.set(obj.lv, this.items.length - 1); } + this.specialReward = new TaskPassSpecialReward(reward.specialReward); } findItemByLv(lv: number) { @@ -106,7 +126,7 @@ export class TaskPassReward { } getShowResult() { - return pick(this, ['pageIndex', 'type', 'price', 'productID', 'items', 'hasBuy']); + return pick(this, ['pageIndex', 'type', 'price', 'productID', 'items', 'hasBuy', 'specialReward']); } canReceiveItems() {