67 lines
2.4 KiB
TypeScript
67 lines
2.4 KiB
TypeScript
import moment = require("moment");
|
||
import { ACTIVITY_TYPE } from "../../consts";
|
||
import { ActivityPopUpShopModelType } from "../../db/ActivityPopUpShop";
|
||
|
||
// 弹框商店
|
||
export class PopUpShopData {
|
||
type: number//活动类型
|
||
activityId: number; // 活动id
|
||
id: number; // 第几个,从1开始
|
||
name: string; //名字
|
||
consume: string; //消耗资源(这里优先rmb的price价格,其次资源消耗)
|
||
price: number; // 商品价格
|
||
productID: string; // 商品id支付时使用
|
||
reward: string; //任务奖励,格式:1&3&1(类型&id&数量) 类型定义:1.英雄,2.物品
|
||
rebate: number; // 折扣用于显示
|
||
duration: number; // 持续时间,单位小时
|
||
taskType: number; // 任务类型
|
||
taskParam: number; // 任务参数
|
||
condition: number; // 任务条件
|
||
totalCount: number; //一共完成次数
|
||
count: number; //最大可购买次数
|
||
|
||
buyCount: number = 0; //已经购买过次数
|
||
beginTime: Date = null;//开始时间
|
||
endTime: Date = null;//结束时间
|
||
beginTimeStamp: number = 0;//开始时间
|
||
endTimeStamp: number = 0;//结束时间
|
||
|
||
//解析玩家开启的商店记录
|
||
public setPlayerRecords(data: ActivityPopUpShopModelType) {
|
||
if (!data) {
|
||
return;
|
||
}
|
||
this.buyCount = data.buyCount ? data.buyCount : 0;
|
||
this.beginTime = data.beginTime;
|
||
this.endTime = data.endTime;
|
||
this.beginTimeStamp = moment(data.beginTime).valueOf();
|
||
this.endTimeStamp = moment(data.endTime).valueOf();
|
||
this.totalCount = data.totalCount;
|
||
}
|
||
|
||
|
||
public initData(data: any) {
|
||
this.type = ACTIVITY_TYPE.POP_UP_SHOP;
|
||
this.id = data.id;
|
||
this.reward = data.reward;
|
||
this.consume = data.consume ? data.consume : '';
|
||
this.price = data.price ? data.price : 0;
|
||
this.productID = data.productID ? data.productID : '';
|
||
this.name = data.name;
|
||
this.rebate = data.rebate;
|
||
this.duration = data.duration;
|
||
this.taskType = data.taskType;
|
||
this.taskParam = data.taskParam;
|
||
this.condition = data.condition;
|
||
this.buyCount = 0;
|
||
this.beginTime = null;
|
||
this.endTime = null;
|
||
this.totalCount = 0;
|
||
this.count = data.count;
|
||
}
|
||
|
||
constructor(activityData: any, activityId: number) {
|
||
this.activityId = activityId;
|
||
this.initData(activityData)
|
||
}
|
||
} |