package com.hzs.activity.benefits.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hzs.common.core.annotation.Excel;
import com.hzs.common.core.annotation.Transaction;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 权益赠送规则记录表VO
 *
 * @author zhangjing
 * @since 2024-02-18
 */
@Data
public class AcGiftBenefitsRuleLogVO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long pkId;

    /**
     * 活动基本配置主键
     */
    private Long pkBaseId;
    /**
     * 活动名称
     */
    @Excel(name = "活动名称")
    private String actName;
    /**
     * 会员编号
     */
    @Excel(name = "会员编号")
    private String memberCode;
    /**
     * 会员名称
     */
    @Excel(name = "会员名称")
    private String memberName;

    /**
     * 结算等级
     */
    @Excel(name = "结算等级")
    private String pkGradeVal;
    /**
     * 结算奖衔
     */
    @Excel(name = "真实奖衔")
    private String pkAwardsVal;
    @Excel(name="升级前权益 ")
    private String legalRightOldVal;
    @Excel(name="升级后权益")
    private String legalRightNewVal;

    /**
     * 会员点位个数
     */
    @Excel(name="点位数量")
    private Integer memberPoint;
    /**
     * 活动开始时间
     */
    @Excel(name = "开始日期",dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date actStartDate;

    /**
     * 活动结束时间
     */
    @Excel(name = "结束日期",dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date actEndDate;

    /**
     * 创建时间
     */
    @Excel(name = "创建日期",dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date creationTime;




    /**
     * 等级
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_GRADE)
    private Integer pkGrade;

    /**
     * 真实奖衔
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD)
    private Integer pkAwards;




    /**
     * 达标等级
     */
    private Integer grade;
    /**
     * 活动规则表主键
     */
    @TableField("PK_RULE_ID")
    private Long pkRuleId;

    /**
     * 新的权益（0=普通用户1=报单中心，2=服务中心） ERegistrationAuthority
     */
    @Transaction(transactionKey = EnumsPrefixConstants.REGISTRATION_AUTHORITY)
    private Integer legalRightNew;

    /**
     * 旧的权益（0=普通用户1=报单中心，2=服务中心）
     */
    @Transaction(transactionKey = EnumsPrefixConstants.REGISTRATION_AUTHORITY)
    private Integer legalRightOld;


    /**
     * 创建时间开始
     */
    private Date startCreationTime;

    /**
     * 创建时间结束
     */
    private Date endCreationTime;

    /**
     * 开始活动开始时间
     */
    private Date startActStartDate;

    /**
     * 结束活动开始时间
     */
    private Date endActStartDate;

    /**
     * 开始活动结束时间
     */
    private Date startActEndDate;

    /**
     * 结束活动结束时间
     */
    private Date endActEndDate;

    /**
     * 国家
     */
    private Integer pkCountry;


}
