package com.hc.gpbusiness.model;

import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.io.Serializable;


/**
 * 课程表(Course)实体类
 *
 * @author java
 * @since 2020-07-29 17:28:23
 */
@Builder
@Data
public class WebCourse implements Serializable {

    private static final long serialVersionUID = 749521682797285061L;


    /**
     * 主键ID
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @ApiModelProperty(value = "主键ID")
    private Integer courseId;

    /**
     * 课程名称
     */
    @ApiModelProperty(value = "课程名称", required = true)
    private String courseName;

    /**
     * 图标
     */
    @ApiModelProperty(value = "图标", required = true)
    private String courseLogo;

    /**
     * 老师介绍是否可见
     */
    @ApiModelProperty(value = "老师介绍是否可见", required = true)
    private Integer courseTeacherVisible;

    /**
     * 章节是否可见
     */
    @ApiModelProperty(value = "章节是否可见", required = true)
    private Integer courseChapterVisible;

    /**
     * 介绍是否可见
     */
    @ApiModelProperty(value = "介绍是否可见", required = true)
    private Integer courseDescVisible;

    /**
     * 课程介绍
     */
    @ApiModelProperty(value = "课程介绍", required = true)
    private String courseDesc;

    /**
     * 课程时长
     */
    @ApiModelProperty(value = "课程时长", required = true)
    private Float courseHours;

    /**
     * 教师
     */
    @ApiModelProperty(value = "教师", required = true)
    private String courseTeacher;

    /**
     * 课程是否上架。下架后不可见
     */
    @ApiModelProperty(value = "课程是否上架。下架后不可见", required = true)
    private Integer isValid;

    /**
     * 如果有多张详情图，相册
     */
    @ApiModelProperty(value = "如果有多张详情图，相册", required = true)
    private String gallery;

    /**
     * 课程所属板块表
     */
    @ApiModelProperty(value = "课程所属板块表", required = true)
    private Integer moduleId;


    /**
     * 分类
     */
    @ApiModelProperty(value = "分类", required = true)
    private Integer typeId;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Long createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Long updateTime;
}