package com.jkcredit.invoice.model.entity.waybill;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jkcredit.invoice.model.BaseMode;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;

/**
 * 企业经办人信息
 */
@Data
@TableName(value = "t_nocar_company_manger")
public class NoCarCompanyManger extends BaseMode{

    @TableId(type = IdType.INPUT)
    private String companyNum;

    /**
     * 经办人姓名
     */
    @NotNull(message = "经办人姓名不能为空")
    @Length(max = 50, message = "经办人姓名格式有误")
    private String operatorName;

    /**
     * 经办人手机号
     */
    @NotNull(message = "经办人手机号电话不能为空")
    @Length(max = 13, message = "经办人手机号人电话格式有误")
    private String operatorMobile;

    /**
     * 经办人身份证
     */
    private String identificationId;
    /**
     * 企业名称
     */
    private String companyName;
    /**
     * 客户Id
     */
    private String custId;

    /**
     * 经办人姓名
     */
    private String operatorNameTemp;

    /**
     * 经办人手机号
     */
    private String operatorMobileTemp;

    /**
     * 经办人身份证
     */
    private String identificationIdTemp;

    /**
     * 经办人附件名称
     */
    @NotNull(message = "附件名称不能为空")
    private String contractFileName;

    /**
     * 附件
     */
    @NotNull(message = "附件不能为空")
    private String base64Str;

    /**
     * 状态 todo 这里需要处理清楚逻辑，如果没有上传过企业开票经办人，是不能进行变更经办人的（证明附件不进行强制教研）
     * 1-变更经办人短信确认成功（已输入验证码确认）（客户端）
     * 2-变更经办人发送短信（已提交变更企业开票经办人成功）（客户端）
     * 3-经办人提交成功（管理端）
     * 4-证明附件提交成功（管理端）
     * 5-开票经办人短信发送
     * 6-开票经办人认证成功
     */
    private String status;

    /**
     * 证明协议附件名称
     */
    private String operatorEvidenceContractFileName;


    /**
     * 证明协议附件
     */
    private String operatorEvidenceBase64Str;

    /**
     * 开票短信最后确认时间
     */
    private String lastTime;
}
