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)
|
|
}
|
|
} |