package com.hzs.common.domain.member.ext;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.hzs.common.core.annotation.Excel;
import com.hzs.common.domain.member.base.CuMember;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * @Description: 会员扩展类
 * @Author: yuhui
 * @Time: 2022/11/10 14:34
 * @Classname: CuMemberExt
 * @PackageName: com.hzs.common.domain.member.ext
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class CuMemberExt extends CuMember {

    private static final long serialVersionUID = 8245239837374330338L;

    /**
     * 推荐编号
     */
    private String parent;

    /**
     * 安置编号
     */
    private String placeParent;

    /**
     * 空单回填金额 （奖金账户）
     */
    private BigDecimal lockAccount4;

    /**
     * 注册等级翻译key
     */
    private Integer registerGradeKey;
    /**
     * 结算等级翻译key
     */
    private Integer settleGradeKey;
    /**
     * 奖衔翻译key
     */
    private Integer awardsKey;
    /***
     * 证件正面
     */
    private String idFront;
    /**
     * 证件反面
     */
    private String idBack;

    /**
     * 省id
     */
    private Integer pkProvince;
    /**
     * 省名称
     */
    @Excel(name = "省", sort = 11)
    private String provinceName;
    /**
     * 市id
     */
    private Integer pkCity;
    /**
     * 市名称
     */
    @Excel(name = "市", sort = 12)
    private String cityName;
    /**
     * 区县id
     */
    private Integer pkCounty;
    /**
     * 区县名
     */
    @Excel(name = "区/县", sort = 13)
    private String countyName;
    /**
     * 详细地址
     */
    @Excel(name = "详细地址", sort = 14)
    private String address;
    /**
     * 银行名称
     */
    @Excel(name = "银行名称", sort = 15)
    private String bankName;
    /**
     * 支行名称
     */
    @Excel(name = "支行名称", sort = 16)
    private String subBankName;
    /**
     * 真实姓名（开户姓名）
     */
    @Excel(name = "开户姓名", sort = 17)
    private String accountName;
    /**
     * 证件类型 字符
     */
    @Excel(name = "证件类型", sort = 9)
    private String cardTypeVal;

    /**
     * 预留电话
     */
    @Excel(name = "预留电话", sort = 18)
    private String reservedPhone;
    /**
     * 银行卡号
     */
    @Excel(name = "银行卡号", sort = 19)
    private String cardNumber;
    /**
     * 认证时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "认证时间", sort = 21)
    private Date certificationTime;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", sort = 21, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date creationTimeCopy;
    /**
     * 证件类型（认证信息字段）
     */
    private Integer idType;

    /**
     * 证件类型（认证信息字段）
     */
    private String idTypeVal;
    /**
     * 推荐订单数
     */
    private Long recommendedOrderNumber;
    /**
     * 性别（0=未知,1=男,2=女）
     */
    @Excel(name = "性别", sort = 7)
    private String sexVal;

    /**
     * 结算等级 字符
     */
    @Excel(name = "结算等级", sort = 5)
    private String settleGradeVal;

    /**
     * 真实奖衔 字符
     */
    @Excel(name = "真实奖衔", sort = 6)
    private String awardsVal;

    /**
     * 注册等级 字符
     */
    @Excel(name = "注册等级", sort = 4)
    private String registerGradeVal;

    private Integer gradeValue;

    /**
     * 团队编号
     */
    private String teamCode;

    /**
     * 团队名称
     */
    private String teamName;

    /**
     * 次数
     */
    private Integer times;

    /**
     * 等级PV值
     */
    private BigDecimal startValue;

}
