package cn.com.ty.lift.system.settings.dao.entity;

import cn.com.ty.lift.system.settings.dao.entity.model.CompanyAttestationRequest;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 公司认证信息
 * </p>
 *
 * @author huangy
 * @since 2019-12-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class MtCompanyAttestation implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 认证编号
     */
    @TableId("id")
    private Long id;

    /**
     * 团队编号
     */
    @TableField("mt_company_id")
    private Long mtCompanyId;

    /**
     * 公司名称
     */
    @TableField("attestation_name")
    private String attestationName;

    /**
     * 联系人名称
     */
    @TableField("contacts_name")
    private String contactsName;

    /**
     * 联系人电话
     */
    @TableField("contacts_tel")
    private String contactsTel;

    /**
     * 认证状态 0 未认证 1 已认证 2 审核中 3 认证失败
     */
    @TableField("is_certificated")
    private Integer isCertificated;

    /**
     * 认证反馈信息
     */
    @TableField("check_feed_back")
    private String checkFeedBack;

    /**
     * 企业营业执照
     */
    @TableField("business_license_annex")
    private String businessLicenseAnnex;

    /**
     * 资质证书
     */
    @TableField("tax_registration")
    private String taxRegistration;

    /**
     * 身份编码
     */
    @TableField("province_code")
    private String provinceCode;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 创建用户
     */
    @TableField("create_user")
    private String createUser;

    /**
     * 认证处理时间
     */
    @TableField("deal_time")
    private LocalDateTime dealTime;

    /**
     * 团队logo
     */
    @TableField("logo_img")
    private String logoImg;

    /**
     * 来源类型   '1：认证 2：认领 3：申诉'
     */
    @TableField("source_type")
    private Integer sourceType;

    /**
     * 备注
     */
    @TableField("remarks")
    private String remarks;

    /**
     * 客户经理id
     */
    @TableField("customer_manager_id")
    private Long customerManagerId;

    public MtCompanyAttestation() {
    }

    public MtCompanyAttestation(CompanyAttestationRequest companyAttestationRequest) {
        this.mtCompanyId = companyAttestationRequest.getMtCompanyId();
        this.attestationName = companyAttestationRequest.getAttestationName();
        this.contactsName = companyAttestationRequest.getContactsName();
        this.contactsTel = companyAttestationRequest.getContactsTel();
        this.businessLicenseAnnex = companyAttestationRequest.getBusinessLicenseAnnex();
        this.taxRegistration = companyAttestationRequest.getTaxRegistration();
        this.logoImg = companyAttestationRequest.getLogoImg();
    }
}
