package com.yonge.cooleshow.biz.dal.entity;

import com.yonge.cooleshow.biz.dal.enums.YesOrNoEnum;
import com.yonge.cooleshow.common.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * 视频课学员评价
 * @author yzp
 * @date 2022-03-25 23:46:28
 * @version v1.0
 **/
@ApiModel(value = "video_lesson_evaluate-视频课学员评价")
public class VideoLessonEvaluate extends BaseEntity {

    @TableId(value = "id_", type = IdType.AUTO)
    @ApiModelProperty(value = "主键id")
    private Long id;  //主键ID

    @TableField("video_id_")
    @ApiModelProperty(value = "视频ID")
	@NotNull(message = "视频id不能为空;")
    private Long videoId;  //视频ID

    @TableField("student_id_")
    @ApiModelProperty(value = "学生ID")
    private Long studentId;

	@TableField("is_teacher_")
	@ApiModelProperty(value = "是否为老师 0:否 1:是")
    private YesOrNoEnum isTeacher;

    @TableField("content_")
    @ApiModelProperty(value = "评价内容")
	@NotBlank(message = "评价内容不能为空;")
    private String content;  //评价内容

    @TableField("evaluate_time_")
    @ApiModelProperty(value = "评价时间")
    private java.util.Date evaluateTime;  //评价时间

	public YesOrNoEnum getIsTeacher() {
		return isTeacher;
	}

	public void setIsTeacher(YesOrNoEnum isTeacher) {
		this.isTeacher = isTeacher;
	}

	public VideoLessonEvaluate setId(Long id) {
	    this.id = id;
	    return this;
	}

	public Long getId() {
	    return this.id;
	}

	public VideoLessonEvaluate setVideoId(Long videoId) {
	    this.videoId = videoId;
	    return this;
	}

	public Long getVideoId() {
	    return this.videoId;
	}

	public VideoLessonEvaluate setStudentId(Long studentId) {
	    this.studentId = studentId;
	    return this;
	}

	public Long getStudentId() {
	    return this.studentId;
	}

	public VideoLessonEvaluate setContent(String content) {
	    this.content = content;
	    return this;
	}

	public String getContent() {
	    return this.content;
	}

	public VideoLessonEvaluate setEvaluateTime(java.util.Date evaluateTime) {
	    this.evaluateTime = evaluateTime;
	    return this;
	}

	public java.util.Date getEvaluateTime() {
	    return this.evaluateTime;
	}


    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }

}