65 lines
1.6 KiB
TypeScript
65 lines
1.6 KiB
TypeScript
/**
|
|
* 钱包数据
|
|
*/
|
|
import { BaseData } from "./BaseData";
|
|
import Utils from "../../Main/Common/Utils";
|
|
import { InnerMsgCode } from "../../Main/Config/InnerMsgCode";
|
|
|
|
export class WalletData extends BaseData {
|
|
// 余额
|
|
private _balance: number = 0;
|
|
// vip失效时间戳,秒
|
|
private _vipExpire: number = 0;
|
|
|
|
public reset(): void {
|
|
this._balance = 0;
|
|
this._vipExpire = 0;
|
|
}
|
|
|
|
public clear(): void {
|
|
this._balance = 0;
|
|
this._vipExpire = 0;
|
|
}
|
|
|
|
public destroy(): void {
|
|
super.destroy();
|
|
this._balance = null;
|
|
this._vipExpire = null;
|
|
}
|
|
|
|
/** 设置余额 */
|
|
public set balance(value: number) {
|
|
this._balance = value;
|
|
// 发出事件
|
|
Utils.sendInnerMsg(InnerMsgCode.BalanceChange, this._balance);
|
|
}
|
|
|
|
/** 获取原来的余额,除100 */
|
|
public getOriginalBalance(): number {
|
|
return this._balance / 100;
|
|
}
|
|
|
|
/** 获取余额 */
|
|
public get balance(): number {
|
|
return this._balance;
|
|
}
|
|
|
|
/** 设置vip失效时间戳 */
|
|
public set vipExpire(value: number) {
|
|
this._vipExpire = value;
|
|
// 发出事件
|
|
Utils.sendInnerMsg(InnerMsgCode.VipExpireChange, this._vipExpire);
|
|
}
|
|
|
|
/** 获取vip失效时间戳 */
|
|
public get vipExpire(): number {
|
|
return this._vipExpire;
|
|
}
|
|
|
|
/** 判断用户是否是VIP */
|
|
public get isVip(): boolean {
|
|
const now = Math.floor(Date.now() / 1000); // 当前时间戳(秒)
|
|
return this._vipExpire > now;
|
|
}
|
|
}
|