package com.hzs.report.member.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.hzs.common.core.annotation.BigDecimalFormat;
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.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 伞下直推产品查询VO
 * </p>
 *
 * @author hzs
 * @since 2022-08-31
 */
@Data
public class UmbrellaBelowProductVO {

    private static final long serialVersionUID = 1L;

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

    /**
     * 会员编号
     */
    private Long pkMember;
    /**
     * 订单类型
     */
    @Transaction(transactionKey = EnumsPrefixConstants.ORDER_BUSINESS)
    private Integer orderType;
    /**
     * 会员编号
     */
    @Excel(name = "会员编号")
    private String memberCode;

    /**
     * 会员姓名
     */
    @Excel(name = "会员姓名")
    private String memberName;
    /**
     * 订单类型
     */
    @Excel(name = "订单类型")
    private String orderTypeVal;

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

    /**
     * 注册等级
     */
    @Excel(name = "注册等级")
    private String pkRegisterGradeVal;
    /**
     * 奖衔
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD)
    private Integer pkAwards;

    /**
     * 奖衔
     */
    @Excel(name = "真实奖衔")
    private String pkAwardsVal;

    /**
     * 累计金额
     */
    @BigDecimalFormat
    @Excel(name = "累计金额(￥)",scale = 2)
    private BigDecimal orderAmount=BigDecimal.ZERO;
    /**
     * 累计业绩
     */
    @BigDecimalFormat
    @Excel(name = "累计业绩(￥)",scale = 2)
    private BigDecimal orderAchieve=BigDecimal.ZERO;
    /**
     * 订单类型集合
     */
    private List<Integer> orderTypeList;

    /**
     * 产品名称
     */
    private String productName;
    /**
     * 产品编号
     */
    private String productCode;


    /**
     * 结算期间
     */
    private Integer period;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date creationTime;
    /**
     * 创建时间开始时间
     */
    private String startDate;

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

    /**
     * 国家
     */
    private Integer pkCountry;
    /**
     * 国家
     */
    private String shortName;
    /**
     * 圆图
     */
    private String nationalFlag1;

    private Integer pkGrade;



}
