package com.ruoyi.course.domain.vo;

import lombok.Data;

import java.util.List;
import java.util.Map;

/**
 * 班级课表视图对象
 */
@Data
public class ClassScheduleVO {
    private Long classId;
    private String className;
    private String grade;
    private String classType;          // 普通班/特长班/实验班
    private Long headTeacherId;        // 班主任ID
    private String headTeacherName;    // 班主任姓名
    private Integer studentCount;      // 学生人数
    
    // 课表数据：key=weekDay, value=该天的课程列表
    private Map<Integer, List<ScheduleDetailVO>> schedule;
    
    // 统计信息
    private Integer totalLessons;      // 总课时数
    private Integer chineseLessons;    // 语文课时
    private Integer mathLessons;       // 数学课时
    private Integer englishLessons;    // 英语课时
    private Integer electiveLessons;   // 选修课时
    private Integer interestLessons;   // 兴趣课时
    
    // 学生走班情况
    private List<StudentElectiveVO> studentElectives;
    
    @Data
    public static class StudentElectiveVO {
        private Long studentId;
        private String studentNo;
        private String studentName;
        private List<String> electiveCourses; // 选修的课程列表
    }
}