package com.zehong.system.domain.train;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zehong.common.annotation.Excel;
import com.zehong.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 培训课程对象 t_train_course
 *
 * @author zehong
 * @date 2022-09-19
 */
public class TTrainCourse extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 课程id */
    private Long courseId;

    /** 课程名称 */
    @Excel(name = "课程名称")
    private String courseName;

    /** 课程类型（培训计划） */
    @Excel(name = "课程类型", readConverterExp = "培=训计划")
    private Long courseType;

    private String planName;

    /** 课程内容 */
    @Excel(name = "课程内容")
    private String courseConent;

    /** 0未发布 1已发布 */
    @Excel(name = "0未发布 1已发布")
    private Integer status;

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

    /** 课程附件 */
    @Excel(name = "课程附件")
    private String enclosure;

    /** 课程视频 */
    @Excel(name = "课程视频")
    private String video;

    /** 答题合格分数*/
    @Excel(name = "答题合格分数")
    private Integer qualifiedNum;

    /** 录入题数量 */
    @Excel(name = "录入题数量")
    private Integer topicNum;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createUser;

    /** 0未删除 1已删除 */
    @Excel(name = "0未删除 1已删除")
    private Integer isDel;

    /** 数据类型：0 培训，1 考试 */
    @Excel(name = "数据类型：0 培训，1 考试")
    private String dataKind;

    /** 考试开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "考试开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date testStartTime;

    /** 考试结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "考试结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date testEndTime;

    /** 考试人员 */
    @Excel(name = "考试人员")
    private String testPersons;

    /**
     * 2023-10-09添加培训部门、主讲人
     */
    /** 考试人员 */
    @Excel(name = "培训部门id")
    private String deptId;

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    @Excel(name = "培训部门名称")
    private String deptName;
    public String getDeptId() {
        return deptId;
    }

    public void setDeptId(String deptId) {
        this.deptId = deptId;
    }

    public String getZhujiang() {
        return zhujiang;
    }

    public void setZhujiang(String zhujiang) {
        this.zhujiang = zhujiang;
    }

    /** 考试人员 */
    @Excel(name = "主讲人")
    private String zhujiang;


    private Integer personnelType;

    private Integer duration;

    /** 多选题分数*/
    private Integer multipleChoiceScore;

    /**单选题分数*/
    private Integer singleChoiceScore;

    /**判断题分数*/
    private Integer judgmentScore;

    /** 是否人脸认证：1是  2否 */
    private String isVeriftyFace;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Integer getMultipleChoiceScore() {
        return multipleChoiceScore;
    }

    public void setMultipleChoiceScore(Integer multipleChoiceScore) {
        this.multipleChoiceScore = multipleChoiceScore;
    }

    public Integer getSingleChoiceScore() {
        return singleChoiceScore;
    }

    public void setSingleChoiceScore(Integer singleChoiceScore) {
        this.singleChoiceScore = singleChoiceScore;
    }

    public Integer getJudgmentScore() {
        return judgmentScore;
    }

    public void setJudgmentScore(Integer judgmentScore) {
        this.judgmentScore = judgmentScore;
    }

    public Integer getDuration() {
        return duration;
    }

    public void setDuration(Integer duration) {
        this.duration = duration;
    }

    public String getPlanName() {
        return planName;
    }

    public void setPlanName(String planName) {
        this.planName = planName;
    }

    public Integer getPersonnelType() {
        return personnelType;
    }

    public void setPersonnelType(Integer personnelType) {
        this.personnelType = personnelType;
    }

    public void setCourseId(Long courseId)
    {
        this.courseId = courseId;
    }

    public Long getCourseId()
    {
        return courseId;
    }
    public void setCourseName(String courseName)
    {
        this.courseName = courseName;
    }

    public String getCourseName()
    {
        return courseName;
    }
    public void setCourseType(Long courseType)
    {
        this.courseType = courseType;
    }

    public Long getCourseType()
    {
        return courseType;
    }
    public void setCourseConent(String courseConent)
    {
        this.courseConent = courseConent;
    }

    public String getCourseConent()
    {
        return courseConent;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }
    public void setReleaseTime(Date releaseTime)
    {
        this.releaseTime = releaseTime;
    }

    public Date getReleaseTime()
    {
        return releaseTime;
    }
    public void setEnclosure(String enclosure)
    {
        this.enclosure = enclosure;
    }

    public String getEnclosure()
    {
        return enclosure;
    }
    public void setVideo(String video)
    {
        this.video = video;
    }

    public String getVideo()
    {
        return video;
    }
    public void setQualifiedNum(Integer qualifiedNum)
    {
        this.qualifiedNum = qualifiedNum;
    }

    public Integer getQualifiedNum()
    {
        return qualifiedNum;
    }
    public void setTopicNum(Integer topicNum)
    {
        this.topicNum = topicNum;
    }

    public Integer getTopicNum()
    {
        return topicNum;
    }
    public void setCreateUser(String createUser)
    {
        this.createUser = createUser;
    }

    public String getCreateUser()
    {
        return createUser;
    }
    public void setIsDel(Integer isDel)
    {
        this.isDel = isDel;
    }

    public Integer getIsDel()
    {
        return isDel;
    }
    public void setDataKind(String dataKind)
    {
        this.dataKind = dataKind;
    }

    public String getDataKind()
    {
        return dataKind;
    }
    public void setTestStartTime(Date testStartTime)
    {
        this.testStartTime = testStartTime;
    }

    public Date getTestStartTime()
    {
        return testStartTime;
    }
    public void setTestEndTime(Date testEndTime)
    {
        this.testEndTime = testEndTime;
    }

    public Date getTestEndTime()
    {
        return testEndTime;
    }
    public void setTestPersons(String testPersons)
    {
        this.testPersons = testPersons;
    }

    public String getTestPersons()
    {
        return testPersons;
    }

    public String getIsVeriftyFace() {
        return isVeriftyFace;
    }

    public void setIsVerfityFace(String isVeriftyFace) {
        this.isVeriftyFace = isVeriftyFace;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("courseId", getCourseId())
            .append("courseName", getCourseName())
            .append("courseType", getCourseType())
            .append("courseConent", getCourseConent())
            .append("status", getStatus())
            .append("releaseTime", getReleaseTime())
            .append("enclosure", getEnclosure())
            .append("video", getVideo())
            .append("qualifiedNum", getQualifiedNum())
            .append("topicNum", getTopicNum())
            .append("createTime", getCreateTime())
            .append("createUser", getCreateUser())
            .append("isDel", getIsDel())
            .append("dataKind", getDataKind())
            .append("testStartTime", getTestStartTime())
            .append("testEndTime", getTestEndTime())
            .append("testPersons", getTestPersons())
            .toString();
    }
}
