package com.ym.mec.biz.dal.dto;

import io.swagger.annotations.ApiModelProperty;

import java.util.Date;

import com.ym.mec.auth.api.entity.SysUser;
import com.ym.mec.biz.dal.enums.JobNatureEnum;
import com.ym.mec.biz.dal.enums.JobTypeEnum;
import com.ym.mec.biz.dal.enums.YesOrNoEnum;

public class TeacherUserDto extends SysUser {

    @ApiModelProperty(value = "职务类型（指导老师 ADVISER、教务老师 ACADEMIC、教学主管 TEACHING）", required = false)
    private JobTypeEnum jobType;

    @ApiModelProperty(value = "工作性质（兼职 PART_JOB、全职FULL_JOB）", required = false)
    private JobNatureEnum jobNature;

    @ApiModelProperty(value = "是否试用期1是，0否", required = false)
    private YesOrNoEnum isProbationPeriod;

    @ApiModelProperty(value = "学历", required = false)
    private String educationBackground;

    @ApiModelProperty(value = "毕业学校", required = false)
    private String graduateSchool;

    /** 技术职称 */
    @ApiModelProperty(value = "技术职称", required = false)
    private String technicalTitles;

    @ApiModelProperty(value = "工作单位", required = false)
    private String workUnit;

    @ApiModelProperty(value = "专业技能（支持多个，用|分隔），对应科目表编号", required = false)
    private String subjectId;

    /** 入职时间 */
    @ApiModelProperty(value = "入职时间", required = false)
    private java.util.Date entryDate;

    @ApiModelProperty(value = "证件类型", required = false)
    private String certificateType;

    @ApiModelProperty(value = "证件号码", required = false)
    private String certificateNum;

    @ApiModelProperty(value = "流动范围(多个用|分开)", required = false)
    private String flowOrganRange;

    @ApiModelProperty(value = "老师介绍", required = false)
    private String introduction;

    @ApiModelProperty(value = "离职时间", required = false)
    private Date demissionDate;

    public JobTypeEnum getJobType() {
        return jobType;
    }

    public void setJobType(JobTypeEnum jobType) {
        this.jobType = jobType;
    }

    public JobNatureEnum getJobNature() {
        return jobNature;
    }

    public void setJobNature(JobNatureEnum jobNature) {
        this.jobNature = jobNature;
    }

    public YesOrNoEnum getIsProbationPeriod() {
        return isProbationPeriod;
    }

    public void setIsProbationPeriod(YesOrNoEnum isProbationPeriod) {
        this.isProbationPeriod = isProbationPeriod;
    }

    public String getEducationBackground() {
        return educationBackground;
    }

    public void setEducationBackground(String educationBackground) {
        this.educationBackground = educationBackground;
    }

    public String getGraduateSchool() {
        return graduateSchool;
    }

    public void setGraduateSchool(String graduateSchool) {
        this.graduateSchool = graduateSchool;
    }

    public String getTechnicalTitles() {
        return technicalTitles;
    }

    public void setTechnicalTitles(String technicalTitles) {
        this.technicalTitles = technicalTitles;
    }

    public String getWorkUnit() {
        return workUnit;
    }

    public void setWorkUnit(String workUnit) {
        this.workUnit = workUnit;
    }

    public String getSubjectId() {
        return subjectId;
    }

    public void setSubjectId(String subjectId) {
        this.subjectId = subjectId;
    }

    public Date getEntryDate() {
        return entryDate;
    }

    public void setEntryDate(Date entryDate) {
        this.entryDate = entryDate;
    }

    public String getCertificateType() {
        return certificateType;
    }

    public void setCertificateType(String certificateType) {
        this.certificateType = certificateType;
    }

    public String getCertificateNum() {
        return certificateNum;
    }

    public void setCertificateNum(String certificateNum) {
        this.certificateNum = certificateNum;
    }

    public String getFlowOrganRange() {
        return flowOrganRange;
    }

    public void setFlowOrganRange(String flowOrganRange) {
        this.flowOrganRange = flowOrganRange;
    }

    public String getIntroduction() {
        return introduction;
    }

    public void setIntroduction(String introduction) {
        this.introduction = introduction;
    }

    public Date getDemissionDate() {
        return demissionDate;
    }

    public void setDemissionDate(Date demissionDate) {
        this.demissionDate = demissionDate;
    }
}
