package com.hzs.bonus.achieve.vo;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hzs.common.core.annotation.BigDecimalFormat;
import com.hzs.common.core.annotation.Transaction;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 伞下奖衔VO
 *
 * @Description:
 * @Author: ljc
 * @Time: 2023/5/5 20:08
 * @Classname: CuMemberAwardsUnderVO
 * @Package_name: com.hzs.member.achieve.vo
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class CuMemberAwardsUnderVO implements Serializable {

    private static final long serialVersionUID = 1114852997109141640L;

    /**
     * A区累计真实业绩
     */
    @BigDecimalFormat()
    private BigDecimal aSumRealPv;

    /**
     * B区累计真实业绩
     */
    @BigDecimalFormat()
    private BigDecimal bSumRealPv;

    /**
     * 小区累计业绩
     */
    @BigDecimalFormat()
    private BigDecimal sumRealPv;

    /**
     * 用户名
     */
    private String memberName;

    /**
     * 用户头像
     */
    private String memberPath;

    /**
     * 目标业绩
     */
    @BigDecimalFormat()
    private BigDecimal targetPv;

    /**
     * 目标奖衔名称
     */
    private String tarAwardsName;

    /**
     * 奖衔名称
     */
    private String awardsName;

    /**
     * 奖衔图片
     */
    private String image;
    /**
     * 奖衔ID
     */
    private Integer pkAwards;

    /**
     * 奖衔翻译key
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD)
    private Integer pkTransaction;

    private String pkTransactionVal;

    /**
     * 所在区
     */
    @JsonIgnore
    private Integer placeDept;
    /**
     * 期数
     */
    @JsonIgnore
    private Integer period;

    /**
     * 会员ID
     */
    @JsonIgnore
    private Long pkMember;

    /**
     * 国家ID
     */
    @JsonIgnore
    private Integer pkCountry;


    /**
     * 业绩表名
     */
    @JsonIgnore
    private String achieveTable;

    /**
     * 用户表名
     */
    @JsonIgnore
    private String memberTreeTable;

    /**
     * 奖金表
     */
    @JsonIgnore
    private String settleTable;

}
