package com.lesingle.creation.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.lesingle.creation.common.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDate;

/**
 * 教师表实体类
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_biz_teacher")
public class Teacher extends BaseEntity {

    /**
     * 用户 ID（一对一）
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 租户 ID
     */
    @TableField("tenant_id")
    private Long tenantId;

    /**
     * 部门 ID
     */
    @TableField("department_id")
    private Long departmentId;

    /**
     * 工号（在租户内唯一）
     */
    @TableField("employee_no")
    private String employeeNo;

    /**
     * 联系电话
     */
    @TableField("phone")
    private String phone;

    /**
     * 身份证号
     */
    @TableField("id_card")
    private String idCard;

    /**
     * 性别：1-男，2-女
     */
    @TableField("gender")
    private Integer gender;

    /**
     * 出生日期
     */
    @TableField("birth_date")
    private LocalDate birthDate;

    /**
     * 入职日期
     */
    @TableField("hire_date")
    private LocalDate hireDate;

    /**
     * 任教科目（可选，如：语文、数学）
     */
    @TableField("subject")
    private String subject;

    /**
     * 职称（可选，如：高级教师、一级教师）
     */
    @TableField("title")
    private String title;

    /**
     * 教师描述
     */
    @TableField("description")
    private String description;

    /**
     * 有效状态：1-有效，2-失效
     */
    @TableField("valid_state")
    private Integer validState;
}
