import { DataState,FieldInfo } from 'model-util-base'
/**
 * @author auto generate
 * @version 1.0
 * @date 2021-05-24 13:44
 */
export interface MaDrawPrizeRecord{
    /**
    * 唯一标识
    * @type { string }
    */
    id?: string;
    /**
    * 奖品ID
    * @type { string }
    */
    prizeId?: string;
    /**
    * 奖品信息
    * @type { string }
    */
    prizeInfo?: string;
    /**
    * 抽奖活动Id
    * @type { string }
    */
    drawCfgId?: string;
    /**
    * 用户标识
    * @type { string }
    */
    userId?: string;
    /**
    * 微OpenID
    * @type { string }
    */
    openId?: string;
    /**
    * 手机号
    * @type { string }
    */
    phone?: string;
    /**
    * 用户类型： 01真实用户，02虚拟用户
    * @type { string }
    */
    userType?: string;
    /**
    * 中奖状态： 00中奖，01未中奖
    * @type { string }
    */
    drawStatus?: string;
    /**
    * 领奖状态： 00已领取，01未领取
    * @type { string }
    */
    winStatus?: string;
    /**
    * 备注
    * @type { string }
    */
    remark?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
}
export class MaDrawPrizeRecordMI{ 
    static get ID(): FieldInfo{  
        return new FieldInfo('id','唯一标识');
    }
    static get PRIZE_ID(): FieldInfo{  
        return new FieldInfo('prizeId','奖品ID');
    }
    static get PRIZE_INFO(): FieldInfo{  
        return new FieldInfo('prizeInfo','奖品信息');
    }
    static get DRAW_CFG_ID(): FieldInfo{  
        return new FieldInfo('drawCfgId','抽奖活动Id');
    }
    static get USER_ID(): FieldInfo{  
        return new FieldInfo('userId','用户标识');
    }
    static get OPEN_ID(): FieldInfo{  
        return new FieldInfo('openId','微OpenID');
    }
    static get PHONE(): FieldInfo{  
        return new FieldInfo('phone','手机号');
    }
    static get USER_TYPE(): FieldInfo{  
        return new FieldInfo('userType','用户类型： 01真实用户，02虚拟用户');
    }
    static get DRAW_STATUS(): FieldInfo{  
        return new FieldInfo('drawStatus','中奖状态： 00中奖，01未中奖');
    }
    static get WIN_STATUS(): FieldInfo{  
        return new FieldInfo('winStatus','领奖状态： 00已领取，01未领取');
    }
    static get REMARK(): FieldInfo{  
        return new FieldInfo('remark','备注');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-05-24 13:44
 */
export interface MaDrawConfig{
    /**
    * 唯一标识
    * @type { string }
    */
    drawCfgId?: string;
    /**
    * 抽奖名称
    * @type { string }
    */
    drawName?: string;
    /**
    * 抽奖类型01刮刮乐02大转盘
    * @type { string }
    */
    drawType?: string;
    /**
    * 抽奖状态： 00有效，01无效
    * @type { string }
    */
    status?: string;
    /**
    * 用户来源
    * @type { string }
    */
    userSource?: string;
    /**
    * 活动链接
    * @type { string }
    */
    activityUrl?: string;
    /**
    * 开始时间
    * @type { Date }
    */
    startTime?: Date;
    /**
    * 结束时间
    * @type { Date }
    */
    endTime?: Date;
    /**
    * 备注
    * @type { string }
    */
    remark?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
}
export class MaDrawConfigMI{ 
    static get DRAW_CFG_ID(): FieldInfo{  
        return new FieldInfo('drawCfgId','唯一标识');
    }
    static get DRAW_NAME(): FieldInfo{  
        return new FieldInfo('drawName','抽奖名称');
    }
    static get DRAW_TYPE(): FieldInfo{  
        return new FieldInfo('drawType','抽奖类型01刮刮乐02大转盘');
    }
    static get STATUS(): FieldInfo{  
        return new FieldInfo('status','抽奖状态： 00有效，01无效');
    }
    static get USER_SOURCE(): FieldInfo{  
        return new FieldInfo('userSource','用户来源');
    }
    static get ACTIVITY_URL(): FieldInfo{  
        return new FieldInfo('activityUrl','活动链接');
    }
    static get START_TIME(): FieldInfo{  
        return new FieldInfo('startTime','开始时间');
    }
    static get END_TIME(): FieldInfo{  
        return new FieldInfo('endTime','结束时间');
    }
    static get REMARK(): FieldInfo{  
        return new FieldInfo('remark','备注');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
}


/**
 * @author auto generate
 * @version 1.0
 * @date 2021-05-24 13:44
 */
export interface MaDrawPrizeConfig{
    /**
    * 唯一标识
    * @type { string }
    */
    prizeId?: string;
    /**
    * 抽奖活动Id
    * @type { string }
    */
    drawCfgId?: string;
    /**
    * 奖品名称
    * @type { string }
    */
    prizeName?: string;
    /**
    * 奖品类型01虚拟奖品02实体奖品
    * @type { string }
    */
    prizeType?: string;
    /**
    * 奖品图片
    * @type { string }
    */
    imgUrl?: string;
    /**
    * 奖品等级
    * @type { number }
    */
    level?: number;
    /**
    * 奖品概率，百分比
    * @type { number }
    */
    percentage?: number;
    /**
    * 展示概率，百分比
    * @type { number }
    */
    showPercentage?: number;
    /**
    * 概率类型01总人概率02单次概率
    * @type { string }
    */
    percentageType?: string;
    /**
    * 领奖地址
    * @type { string }
    */
    getUrl?: string;
    /**
    * 单人奖品总数
    * @type { number }
    */
    singlePrizeTotal?: number;
    /**
    * 奖品总数
    * @type { number }
    */
    prizeTotal?: number;
    /**
    * 状态： 00正常，01失效
    * @type { string }
    */
    status?: string;
    /**
    * 备注
    * @type { string }
    */
    remark?: string;
    /**
    * 创建时间
    * @type { Date }
    */
    createTime?: Date;
    /**
    * 更新时间
    * @type { Date }
    */
    updateTime?: Date;
}
export class MaDrawPrizeConfigMI{ 
    static get PRIZE_ID(): FieldInfo{  
        return new FieldInfo('prizeId','唯一标识');
    }
    static get DRAW_CFG_ID(): FieldInfo{  
        return new FieldInfo('drawCfgId','抽奖活动Id');
    }
    static get PRIZE_NAME(): FieldInfo{  
        return new FieldInfo('prizeName','奖品名称');
    }
    static get PRIZE_TYPE(): FieldInfo{  
        return new FieldInfo('prizeType','奖品类型01虚拟奖品02实体奖品');
    }
    static get IMG_URL(): FieldInfo{  
        return new FieldInfo('imgUrl','奖品图片');
    }
    static get LEVEL(): FieldInfo{  
        return new FieldInfo('level','奖品等级');
    }
    static get PERCENTAGE(): FieldInfo{  
        return new FieldInfo('percentage','奖品概率，百分比');
    }
    static get SHOW_PERCENTAGE(): FieldInfo{  
        return new FieldInfo('showPercentage','展示概率，百分比');
    }
    static get PERCENTAGE_TYPE(): FieldInfo{  
        return new FieldInfo('percentageType','概率类型01总人概率02单次概率');
    }
    static get GET_URL(): FieldInfo{  
        return new FieldInfo('getUrl','领奖地址');
    }
    static get SINGLE_PRIZE_TOTAL(): FieldInfo{  
        return new FieldInfo('singlePrizeTotal','单人奖品总数');
    }
    static get PRIZE_TOTAL(): FieldInfo{  
        return new FieldInfo('prizeTotal','奖品总数');
    }
    static get STATUS(): FieldInfo{  
        return new FieldInfo('status','状态： 00正常，01失效');
    }
    static get REMARK(): FieldInfo{  
        return new FieldInfo('remark','备注');
    }
    static get CREATE_TIME(): FieldInfo{  
        return new FieldInfo('createTime','创建时间');
    }
    static get UPDATE_TIME(): FieldInfo{  
        return new FieldInfo('updateTime','更新时间');
    }
}


