package com.hzs.report.member.vo;

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

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 联创报表统计VO
 * </p>
 *
 * @author zhangjing
 * @since 2023-10-19
 */
@Data
public class CuLianchuangDataStatVO {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long pkId;
    /**
     * 会员主键主键
     */
    private Long pkMember;
    /**
     * 主键
     */
    private List<Long> pkIdList;

    /**
     * 体系编号
     */
    @Excel(name = "体系编号")
    private String vertexCode;

    /**
     * 体系名称
     */
    @Excel(name = "体系名称")
    private String vertexName;
    /**
     * 新增金额(￥)
     */
    @Excel(name = "新增金额(￥)",scale = 2)
    @BigDecimalFormat
    private BigDecimal firstPurchaseMo;
    /**
     * 新增业绩(PV)
     */
    @Excel(name = "新增业绩(PV)",scale = 2)
    @BigDecimalFormat
    private BigDecimal firstPurchasePv;

    /**
     * 累计金额(￥)
     */
    @Excel(name = "累计金额(￥)",scale = 2)
    @BigDecimalFormat
    private BigDecimal firstPurchaseSumMo;
    /**
     * 累计业绩(PV)
     */
    @Excel(name = "累计业绩(PV)",scale = 2)
    @BigDecimalFormat
    private BigDecimal firstPurchaseSumPv;

    /**
     * 上月累计金额(￥)
     */
    @Excel(name = "上月累计金额(￥)",scale = 2)
    @BigDecimalFormat
    private BigDecimal beforePurchaseSumMo;
    /**
     * 上月累计业绩(PV)
     */
    @Excel(name = "上月累计业绩(PV)",scale = 2)
    @BigDecimalFormat
    private BigDecimal beforePurchaseSumPv;
    /**
     * 系统类型
     */
    private Integer systemType;

    /**
     * 加区
     */
    private String addRegion;

    /**
     * 减区
     */
    private String reduceRegion;

    /**
     * 国家
     */
    private Integer pkCountry;
    /**
     * 国家简称
     */
    private String shortName;

    /**
     * 创建人ID
     */
    @TableField("PK_CREATOR")
    private Long pkCreator;

    /**
     * 订单日期
     */
    @Excel(name = "订单日期",dateFormat = "yyyy-MM-dd")
    private String payTime;

    /**
     * 修改人ID
     */
    private Long pkModified;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date modifiedTime;

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


    /**
     * 逻辑删除 (0=未删除，1已删除)
     */
    private Integer delFlag;

    /**
     * 报表类型  1 数据报表 2 国内数据报表 3 国外数据报表 来源 ESheetType
     */
    private Integer type;
    private String beforeDate;
    /**
     * 累计开始时间结束时间
     */
    private String startDate;
    private String endDate;
    /**
     * 上个月开始时间结束时间
     */
    private String beforeStaDate;
    private String beforeEndDate;

    /**
     * 汇率
     */
    private BigDecimal rate;

    /**
     * 新增金额
     */
    private BigDecimal amount;
    /**
     * 新增业绩
     */
    private BigDecimal achieve;
    /**
     * 累计金额
     */
    private BigDecimal amountSum;

    /**
     * 累计业绩
     */
    private BigDecimal achieveSumPv;

    private Integer orderType;

    private List<Integer> orderTypeList;
    /**
     * 开始期数
     */
    private Integer periodSta;
    /**
     * 结束期数前一天期数
     */
    private Integer periodBefore;
    /**
     * 结束期数
     */
    private Integer periodEnd;
    /**
     * 开始日期业绩表
     */
    private String achieveTableNameSta;
    /**
     * 结束日期业绩表
     */
    private String achieveTableNameEnd;
    /**
     * 前一天的期业绩表
     */
    private String achieveTableNameBef;

    /**
     * 上上个月最后一天表
     */
    private String achieveTableNameBeforeSta;
    /**
     * 上个月最后一天表
     */
    private String achieveTableNameBeforeEnd;


    /**
     * 规则list
     */
    private List<Long> regionList;

    /**
     * 加区
     */
    @TableField(exist = false)
    private List<Long> addRegionList;

    /**
     * 减区
     */
    @TableField(exist = false)
    private List<Long> reduceRegionList;







}
