package com.hzs.report.member.vo;

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.math.BigDecimal;
import java.util.Date;

/**
 * @description: 复购PV统计
 * @author: zhang jing
 * @date: 2023/8/29 14:59
 * @param:
 * @return:
 **/
@Data
public class MallPVStatVO implements Serializable {


    private static final long serialVersionUID = 1L;

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

    /**
     * 会员编号
     */
    private Long pkMember;
    /**
     * 日期
     */
    @Excel(name = "日期",dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date creationTime;
    /**
     * 会员编号
     */
    @Excel(name = "会员编号")
    private String memberCode;

    /**
     * 会员姓名
     */
    @Excel(name = "会员姓名")
    private String memberName;
    /**
     * 手机号码
     */
    @Excel(name = "联系方式")
    private String phone;
    /**
     * 奖衔
     */
    @Excel(name = "真实奖衔")
    private String pkAwardsVal;

    /**
     * 隶属体系
     */
    @Excel(name = "隶属体系")
    private String vertexName;
    /**
     * 团队名称
     */
    @Excel(name = "隶属团队")
    private String teamName;
    /**
     * 单月累计业绩(商城新增业绩)
     */
    @Excel(name = "单月累计业绩(PV)")
    private BigDecimal mallNewPv=BigDecimal.ZERO;
    /**
     * 历史业绩 商城累计业绩
     *
     */
    @Excel(name = "历史累计业绩(PV)")
    private BigDecimal historyPv=BigDecimal.ZERO;

    /**
     * 考核金额
     */
    @Excel(name = "考核金额(￥)")
    private BigDecimal assessTarget=BigDecimal.ZERO;
    /**
     * 右区首购累计业绩
     */
    @Excel(name = "剩余业绩(PV)")
    private BigDecimal monthSurplus=BigDecimal.ZERO;


    /**
     * 考核状态 EAssessStatus
     */
    @Transaction(transactionKey =EnumsPrefixConstants.ASSESS_STATUS)
    private Integer assessStatus;
    /**
     * 考核状态
     */
    @Excel(name = "考核状态")
    private String assessStatusVal;
    /**
     * 是否免考
     */
    @Transaction(transactionKey =EnumsPrefixConstants.DEALER_YES_NO)
    private Integer isExamine;
    /**
     * 是否免考
     */
    @Excel(name = "是否免考")
    private String isExamineVal;
    /**
     * 结算期间
     */
    private Integer period;


    /**
     * 创建时间开始时间
     */
    private String startDate;

    /**
     * 创建时间结束时间
     */
    private String endDate;

    /**
     *  业绩表名
     */
    private String achieveTableName;
    /**
     *  考核记录表名
     */
    private String assessTableName;
    /**
     * 奖衔
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD)
    private Integer pkAwards;



    /**
     * 隶属体系
     */
    private Integer pkVertex;
    /**
     * 隶属团队
     */
    private Integer pkTeamCode;
    /**
     * 国家
     */
    private Integer pkCountry;

}
