package com.hzs.member.base.dto;

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;

/**
 * <p>
 * 注水业绩记录表DTO
 * </p>
 *
 * @author hzs
 * @since 2022-08-22
 */
@Data
public class CuMemberAchieveLogDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    private Integer pkId;

    /**
     * 会员主键
     */
    private Long pkMember;
    /**
     * 会员编号
     */
    @Excel(name = "会员编号",sort = 1)
    private String memberCode;

    /**
     * 会员姓名
     */
    @Excel(name = "会员姓名",sort = 2)
    private String memberName;

    /**
     * A左区结余 左区首购结余
     */
    @Excel(name = "变更前左区首购结余",sort = 17)
    private BigDecimal abalance;

    /**
     * B右区结余 右区首购结余
     */
    @Excel(name = "变更前右区首购结余",sort = 18)
    private BigDecimal bbalance;

    /**
     * A左区累计 左区真实业绩
     */
    @Excel(name = "变更前左区真实业绩(PV)",sort = 13)
    private BigDecimal asumRealPv;
    /**
     * 变更后A左区累计 变更后左区真实业绩
     */
    @Excel(name = "变更后左区真实业绩(PV)",sort = 3)
    private BigDecimal asumRealModifyPv;

    /**
     * B右区累计 右区真实业绩
     */
    @Excel(name = "变更前右区真实业绩(PV)",sort = 14)
    private BigDecimal bsumRealPv;
    /**
     * 变更后B右区累计 更后右区真实业绩
     */
    @Excel(name = "变更后右区真实业绩(PV)",sort = 4)
    private BigDecimal bsumRealModifyPv;

    /**
     * A左区首购业绩
     */
    @Excel(name = "变更前左区首购业绩(PV)",sort = 15)
    private BigDecimal afirstPv;
    /**
     * 变更后A左区 变更后左区首购业绩
     */
    @Excel(name = "变更后左区首购业绩(PV)",sort = 5)
    private BigDecimal afirstModifyPv;

    /**
     * B右区首购业绩
     */
    @Excel(name = "变更前右区首购业绩(PV)",sort = 16)
    private BigDecimal bfirstPv;
    /**
     * 变更后B右区 变更后右区首购业绩
     */
    @Excel(name = "变更后右区首购业绩(PV)",sort = 6)
    private BigDecimal bfirstModifyPv;


    /**
     * 变更后A左区首购结余
     */
    @Excel(name = "变更后左区首购结余",sort = 7)
    private BigDecimal repAFirstModifyBalance;


    /**
     * 变更后B右区首购结余
     */
    @Excel(name = "变更后右区首购结余",sort = 8)
    private BigDecimal repBFirstModifyBalance;


    /**
     * A左区复购结余 左区复购结余
     */
    @Excel(name = "变更前左区复购结余",sort = 21)
    private BigDecimal repABalance;
    /**
     * 变更后A左区复购结余
     */
    @Excel(name = "变更后左区复购结余",sort = 11)
    private BigDecimal repAModifyBalance;

    /**
     * B右区复购结余 右区复购结余
     */
    @Excel(name = "变更前右区复购结余",sort = 22)
    private BigDecimal repBBalance;
    /**
     * 变更后B右区复购结余
     */
    @Excel(name = "变更后右区复购结余",sort = 12)
    private BigDecimal repBModifyBalance;


    /**
     * A左区复购业绩累计业绩 左区复购业绩
     */
    @Excel(name = "变更前左区复购业绩(PV)",sort = 19)
    private BigDecimal repASumPv;

    /**
     * 变更后A左区复购业绩累计业绩
     */
    @Excel(name = "变更后左区复购业绩(PV)",sort = 9)
    private BigDecimal repAModifySumPv;

    /**
     * B右区复购业绩累计业绩 右区复购业绩
     */
    @Excel(name = "变更前右区复购业绩(PV)",sort = 20)
    private BigDecimal repBSumPv;
    /**
     * 变更后B右区复购业绩累计业绩
     */
    @Excel(name = "变更后右区复购业绩(PV)",sort = 10)
    private BigDecimal repBModifySumPv;

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

    /**
     * 注水方式 EInfusingWaterType 1 增加 2减少 3 最终
     */
    private Integer infusingWaterType;
    /**
     * 注水备注
     */
    private String remarks;

    /**
     * 业务单号
     */
    private String businessNo;

    /**
     * 费用
     */
    private BigDecimal cost;
    /**
     * 扣款币种类型
     */
    private Integer pkAccount;
    /**
     * 扣款币种类型
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_ACC)
    private Integer pkAccountKey;
    /**
     * 扣款币种类型
     */
    private String pkAccountKeyVal;
    private String settleDateStr;
    private String dueDateStr;




}
