package com.ruoyi.hezhi.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.util.Date;

/**
 * 名师认证对象 tb_teacher_authentication
 *
 * @author ruoyi
 * @date 2024-12-13
 */
@Getter
@Setter
@ToString
public class TbTeacherAuthentication extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 教师认证ID */
//    @Excel(name = "教师认证ID")
    private Long teacherAuthenticationId;

    /** 用户ID */
//    @Excel(name = "用户ID")
    private Long memberUserId;

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

    /** 性别（0男 1女） */
    @Excel(name = "性别", readConverterExp = "0=男,1=女")
    private Integer sex;

    /** 生日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birth;

    /** 电话 */
    @Excel(name = "电话")
    private String phone;

    /** 身份证正面 */
    @Excel(name = "身份证号")
    private String identityCard;

    /** 身份证正面 */
    @Excel(name = "身份证正面")
    private String idCardFront;

    /** 身份证反面 */
    @Excel(name = "身份证反面")
    private String idCardBack;

    /** 毕业证书 */
    @Excel(name = "毕业证书")
    private String graduationCertificate;

    /** 研究成果 */
    @Excel(name = "研究成果")
    private String researchFindings;

    /** 荣誉证书 */
    @Excel(name = "荣誉证书")
    private String certificateUrl;

    /** 状态（0待审核 1审核通过 2审核驳回） */
    @Excel(name = "状态", readConverterExp = "0=待审核,1=审核通过,2=审核驳回")
    private Integer status;

    /** 驳回原因 */
    @Excel(name = "驳回原因")
    private String refuseRemark;

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

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    @Excel(name = "更新时间")
    private Date updateTime;

    /** 删除时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date deleteTime;

    /** 创建者 */
    private String createBy;

    /** 更新者 */
    private String updateBy;

    /** 删除者 */
    private String deleteBy;

    /** 删除标记（0正常 1删除） */
    private Integer delFlag;

}
