package com.ym.mec.education.resp;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.List;

/**
 * @program: mec
 * @description: 学员出参
 * @author: xw
 * @create: 2019-10-06 19:24
 */
@Data
@ApiModel(description = "学员出参")
@Accessors(chain = true)
public class StudentResp implements Serializable {

    @ApiModelProperty(value = "学员姓名")
    private String studentName;
    @ApiModelProperty(value = "学员性别")
    private String studentGender;
    @ApiModelProperty(value = "授课科目")
    private List<String> subjectName;
    @ApiModelProperty(value = "学校")
    private String studentSchool;
    @ApiModelProperty(value = "学员年级")
    private String studentGrade;
    @ApiModelProperty(value = "手机号(父母)")
    private String parentsPhone;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "进行中课程计划")
    private List<StudentCourseSchedule> inProgressCourseSchedule;
    @ApiModelProperty(value = "已完成课程计划")
    private List<StudentCourseSchedule> completedCourseSchedule;

    @Data
    @ApiModel(value = "课程计划")
    @Accessors(chain = true)
    public static class StudentCourseSchedule {
        @ApiModelProperty(value = "乐团名称")
        private String musicGroupName;
        @ApiModelProperty(value = "乐团id", example = "1")
        private Integer musicGroupId;
        @ApiModelProperty(value = "课程名称", example = "基础知识课")
        private String courseName;
        @ApiModelProperty(value = "班级名称", example = "长笛1班")
        private String className;
        @ApiModelProperty(value = "课程日期", example = "9月19日")
        private String classDate;
        @ApiModelProperty(value = "课程星期", example = "星期一")
        private String classWeek;
        @ApiModelProperty(value = "课程时间", example = "12:00-17:00")
        private String classTime;
        @ApiModelProperty(value = "缴费状态，已缴费，待续费，已续费", example = "已续费")
        private String renewStatus;
        @ApiModelProperty(value = "学校名称", example = "武汉市红领巾小学")
        private String schoolName;
        @ApiModelProperty(value = "课程类别 1 乐团 2 vip", example = "1")
        private Integer courseType;
        @ApiModelProperty(value = "讲课老师", example = "张老师")
        private String teacher;
        @ApiModelProperty(value = "教学形式 线上 线下", example = "线上")
        private String teachMode;
        @ApiModelProperty(value = "课程总数", example = "60分钟/次，共30节")
        private String totalClassTimes;
        @ApiModelProperty(value = "剩余课时", example = "20")
        private Integer remainderClassTimes;
        @ApiModelProperty(value = "上课学生")
        private List<String> studentList;
    }

    public static StudentCourseSchedule getStudentCourseSchedule() {
        return new StudentCourseSchedule();
    }
}
