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

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.Date;

/**
 * @author hgw
 * Created by 2022-04-06
 */
@ApiModel(value = "TeacherLiveCourseInfoVo", description = "老师直播课课程")
@Data
public class TeacherLiveCourseInfoVo implements Serializable {

    @ApiModelProperty(value = "课程组id")
    private Long courseGroupId;

    @ApiModelProperty(value = "名称")
    private String courseGroupName;

    @ApiModelProperty(value = "课程id")
    private Long courseId;

    @ApiModelProperty(value = "课堂编号")
    private Integer classNum;

    @ApiModelProperty(value = "声部名称")
    private String subjectName;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "开始时间")
    private Date startTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "结束时间")
    private Date endTime;

    @ApiModelProperty(value = "课程状态 NOT_START未开始 ING进行中 COMPLETE已完成 CANCEL已取消")
    private String status;

    @ApiModelProperty(value = "课程人数")
    private Integer studentCount;

    @ApiModelProperty(value = "课程图片")
    private String backgroundPic;

    @ApiModelProperty(value = "直播课成课后生成的im群id")
    private String imGroupId;

    @ApiModelProperty("用户名")
    private String username;

    @ApiModelProperty("头像")
    private String avatar;

    @ApiModelProperty("用户id")
    private Long userId;

    @ApiModelProperty(value = "课程数")
    private Integer courseNum;

    @ApiModelProperty(value = "课程介绍")
    private String courseIntroduce;

    @ApiModelProperty(value = "已上完课的课程数")
    private Integer completeCourseNum;
}
