package com.hzs.member.empty.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
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;

/**
 * @Description: 空单注册列表查询VO
 * @Author: jiang chao
 * @Time: 2023/7/6 16:02
 * @Classname: MemberEmptyRegisterQueryVO
 * @PackageName: com.hzs.member.empty.vo
 */
@Data
public class MemberEmptyRegisterQueryVO {

    /**
     * 注册批次
     */
    @Excel(name = "注册批次")
    private String businessCode;

    /**
     * 会员编号
     */
    @Excel(name = "会员编号")
    private String memberCode;

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

    /**
     * 联系方式
     */
    @Excel(name = "联系方式")
    private String phone;

    /**
     * 隶属体系
     */

    /**
     * 隶属团队
     */

    /**
     * 推荐编号
     */
    @Excel(name = "推荐编号")
    private String parentCode;

    /**
     * 安置编号
     */
    @Excel(name = "安置编号")
    private String placeParentCode;

    /**
     * 安置部门
     */
    @Transaction(transactionKey = EnumsPrefixConstants.PLACE_DEPT)
    private Integer placeDept;
    /**
     * 安置部门显示
     */
    @Excel(name = "安置部门")
    private String placeDeptVal;

    /**
     * 等级翻译ID
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_GRADE)
    private Integer pkGradeKey;
    /**
     * 等级显示
     */
    @Excel(name = "注册等级")
    private String pkGradeKeyVal;

    /**
     * 注册业绩
     */
    @Excel(name = "注册业绩")
    private BigDecimal registerAchieve;

    /**
     * 注册类型（1=实单注册，2=空单注册）
     */
    @Transaction(transactionKey = EnumsPrefixConstants.ORDER_SOURCE)
    private Integer orderSource;
    /**
     * 注册类型显示
     */
    @Excel(name = "注册类型")
    private String orderSourceVal;

    /**
     * 结算国名称
     */
    @Excel(name = "结算国家")
    private String settleCountryName;
    /**
     * 自然国名称
     */
    @Excel(name = "自然国家")
    private String countryName;

    /**
     * 奖衔翻译ID
     */
    @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD)
    private Integer pkAwardKey;
    /**
     * 奖衔显示
     */
    @Excel(name = "真实奖衔")
    private String pkAwardKeyVal;

    /**
     * 订单类型
     */
    @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE)
    private Integer orderType;
    /**
     * 订单类型显示
     */
    @Excel(name = "订单类型")
    private String orderTypeVal;

    /**
     * 回填金额
     */
    @Excel(name = "回填金额")
    private BigDecimal backAmount;

    /**
     * 是否结算（0=是，1=否）
     */
    @Transaction(transactionKey = EnumsPrefixConstants.DEALER_YES_NO)
    private Integer settlementFlag;
    /**
     * 是否结算显示
     */
    @Excel(name = "是否结算")
    private String settlementFlagVal;

    /**
     * 结算业绩
     */
    @Excel(name = "结算业绩")
    private BigDecimal settlementAchieve;

    /**
     * 上传业绩
     */
    @Excel(name = "上传业绩")
    private BigDecimal transferAchieve;

    /**
     * 注册日期
     */
    @Excel(name = "注册日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date creationTime;
    /**
     * 选购产品
     */
    @Transaction(transactionKey = EnumsPrefixConstants.DEALER_YES_NO)
    private Integer productFlag;
    /**
     * 选购产品显示
     */
    @Excel(name = "选购产品")
    private String productFlagVal;

    /**
     * 产品信息VO
     */
    private List<MemberEmptyRegisterQueryProductVO> detailList;
    /**
     * 产品信息
     */
    @Excel(name = "产品信息")
    private String productStr;

    /**
     * 收货人
     */
    @Excel(name = "收货人")
    private String recName;

    /**
     * 收货电话
     */
    @Excel(name = "收货电话")
    private String recPhone;

    /**
     * 省
     */
    private Integer recProvince;
    /**
     * 省显示
     */
    @Excel(name = "省")
    private String recProvinceVal;

    /**
     * 市
     */
    private Integer recCity;
    /**
     * 市显示
     */
    @Excel(name = "市")
    private String recCityVal;

    /**
     * 县
     */
    private Integer recCounty;
    /**
     * 县显示
     */
    @Excel(name = "县")
    private String recCountyVal;

    /**
     * 详细地址
     */
    @Excel(name = "详细地址")
    private String recAddress;


}
