package com.hzs.member.account.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 com.hzs.common.core.web.domain.BaseApprovalEntity;
import com.hzs.system.sys.dto.LoginUser;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 营业执照VO
 *
 * @Description:
 * @Author: ljc
 * @Time: 2023/8/17 10:21
 * @Classname: CuMemberBusinessLicense
 * @Package_name: com.hzs.member.account.vo
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class CuMemberBusinessLicenseVO extends BaseApprovalEntity implements Serializable {
    private static final long serialVersionUID = -6724043193164878290L;


    private Long pkId;


    private List<Long> pkIds;
    /**
     * 会员编号
     */
    @Excel(name = "会员编号")
    private String memberCode;

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

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

    /**
     * 会员主键
     */
    private Long pkMember;

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

    /**
     * 隶属体系
     */
    private Integer pkVertex;
    /**
     * 隶属体系
     */
    @Excel(name = "隶属体系")
    private String vertexName;
    /**
     * 隶属团队
     */
    private Integer pkTeam;
    /**
     * 隶属团队
     */
    @Excel(name = "隶属团队")
    private String teamName;

    /**
     * 所属总监
     */
    @Excel(name = "所属总监")
    private String parentChief;

    /**
     * 所属总监姓名
     */
    @Excel(name = "所属总监姓名")
    private String parentChiefName;

    /**
     * 营业执照名称
     */
    @Excel(name = "营业执照名称")
    private String licenseName;

    /**
     * 统一社会信用代码
     */
    @Excel(name = "统一社会信用代码")
    private String creditCode;

    /**
     * 法人姓名
     */
    @Excel(name = "法人姓名")
    private String legalName;

    /**
     * 营业执照省
     */
    private Integer licenseProvince;

    /**
     * 营业执照市
     */
    private Integer licenseCity;

    /**
     * 营业执照县
     */
    private Integer licenseCounty;

    /**
     * 省
     */
    @Excel(name = "省")
    private String province;
    /**
     * 市
     */
    @Excel(name = "市")
    private String city;
    /**
     * 县
     */
    @Excel(name = "区/县")
    private String county;

    /**
     * 营业执照地址
     */
    @Excel(name = "详细地址")
    private String licenseAddress;


    /**
     * 审核状态（2=待审核，3=审核中，4=已驳回，5=已审核）
     */
    @Transaction(transactionKey = EnumsPrefixConstants.APPROVE_STATUS)
    private Integer approveStatus;

    @Excel(name = "审核状态")
    private String approveStatusVal;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date creationTime;

    /**
     * 审核时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "审核日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date approveTime;

    /**
     * 营业执照图片
     */
    private String licenseImage;


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


    /**
     * 开始日期
     */
    private String startDate;
    /**
     * 结束日期
     */
    private String endDate;


    /**
     * 审核开始时间
     */
    private String startApproveTime;
    /**
     * 审核结束时间
     */
    private String endApproveTime;


    /**
     * 业务单号
     */

    private String businessNo;

    private Long pkModified;

    private LoginUser loginUser;

    /**
     * 驳回原因
     */
    private String rejectMsg;

    /**
     * 奖衔列表（2023.11.30 需求，查询血缘伞上第一个总监）
     */
    private List<Integer> awardsList;

}
