// ===============================================
// 班级和课程配置文件
// 2026春季学期 - 小Q老师
// ===============================================

const CONFIG = {
    // 学期配置
    semester: {
        startDate: '2026-03-02', // 学期开始日期
        totalWeeks: 20,
    },

    // 班级列表
    classes: [
        {
            id: '发现世界-周四19点',
            name: '发现世界-周四19:00',
            courseType: 'DISC',
            coursePrefix: 'DISC',
            weekday: '周四',
            time: '19:00-20:00',
            students: [
                { name: '梁昕乔', emoji: '👧', color: '#e8f5e9', trait: '活泼型 · 动觉学习 · 空间想象强' },
                { name: '钟昀昊', emoji: '🧒', color: '#e3f2fd', trait: '慢热型 · 视觉学习 · 双手协调' },
                { name: '林瀚丞', emoji: '🧒', color: '#fff3e0', trait: '平和型 · 需要拆解单步 · 螺丝刀标准' },
                { name: '杨佳兴', emoji: '🧒', color: '#fce4ec', trait: '活泼型 · 动觉学习 · 手部精细动作极佳【2026-05-22从周六09点班迁移】' }
            ]
        },
        {
            id: 'AICODE03小Q周五1900',
            name: 'AICODE03周五19:00',
            courseType: 'AICODE03',
            coursePrefix: 'AICODE03',
            weekday: '周五',
            time: '19:00-20:30',
            students: [
                { name: '李怡瞳', emoji: '👧', color: '#fff3e0', trait: '思维活跃 · 创意好' },
                { name: '沙佩琪', emoji: '👧', color: '#fce4ec', trait: '认真踏实 · 代码能力强' },
                { name: '黄榆斐', emoji: '🧒', color: '#f3e5f5', trait: '积极主动 · 爱提问' },
                { name: '谢善诺', emoji: '👧', color: '#fff3e0', trait: '待观察' }
            ]
        },
        {
            id: '发现世界-周六09点',
            name: '发现世界-周六09:00',
            courseType: 'DISC',
            coursePrefix: 'DISC',
            weekday: '周六',
            time: '09:00-10:00',
            students: [
                { name: '余韫', emoji: '👧', color: '#e8f5e9', trait: '活泼型 · 视觉学习 · 主动分类整理' },
                { name: '林嘉铭', emoji: '🧒', color: '#fff3e0', trait: '待观察' },
                { name: '胡瀚铭', emoji: '🧒', color: '#fce4ec', trait: '待观察' }
            ]
        },
        {
            id: '发现世界-周六19点',
            name: '发现世界-周六19:00',
            courseType: 'DISC',
            coursePrefix: 'DISC',
            weekday: '周六',
            time: '19:00-20:00',
            students: [
                { name: '赖韵恬', emoji: '👧', color: '#e8f5e9', trait: '待观察' }
            ]
        },
        {
            id: 'Wedo创造世界-周六1030',
            name: 'Wedo创造世界-周六10:30',
            courseType: 'CREATE',
            coursePrefix: 'CREATE',
            weekday: '周六',
            time: '10:30-12:00',
            students: [
                { name: '梁家铭', emoji: '🧒', color: '#e8f5e9', trait: '需鼓励建立自信 · 情绪调节有进步' },
                { name: '简思瑜', emoji: '🧒', color: '#e3f2fd', trait: '自信主动 · 结构搭建极坚固' },
                { name: '简思霖', emoji: '👧', color: '#fff3e0', trait: '平和慢热 · 代码理解需加强' },
                { name: '罗钧龄', emoji: '🧒', color: '#fce4ec', trait: '爱动手 · 精细动作好 · 越挫越勇' },
                { name: '黄晓瑜', emoji: '👧', color: '#f3e5f5', trait: '情绪稳定 · 独立完成度高' },
                { name: '黄馨宸', emoji: '👧', color: '#e0f2f1', trait: '慢热害羞→活泼 · 创意表达好' }
            ]
        },
        {
            id: 'AICODE03小Q周六1400',
            name: 'AICODE03周六14:00',
            courseType: 'AICODE03',
            coursePrefix: 'AICODE03',
            weekday: '周六',
            time: '14:00-15:30',
            students: [
                { name: '曾乐凯', emoji: '🧒', color: '#e8f5e9', trait: '待观察' },
                { name: '李汶浩', emoji: '🧒', color: '#e3f2fd', trait: '待观察' },
                { name: '陈昕柔', emoji: '👧', color: '#fce4ec', trait: '待观察' }
            ]
        },
        {
            id: 'Wedo创造世界-周六16点',
            name: 'Wedo创造世界-周六16:00',
            courseType: 'CREATE',
            coursePrefix: 'CREATE',
            weekday: '周六',
            time: '16:00-17:30',
            students: [
                { name: '冯彦哲', emoji: '🧒', color: '#e8f5e9', trait: '待观察' },
                { name: '马悦然', emoji: '👧', color: '#e3f2fd', trait: '待观察' }
            ]
        },
        {
            id: 'SPIKE02-周日1030',
            name: 'SPIKE02-周日10:30',
            courseType: 'SPIKE',
            coursePrefix: 'SPIKE',
            weekday: '周日',
            time: '10:30-12:00',
            students: [
                { name: '吴浩洋', emoji: '🧒', color: '#e8f5e9', trait: '待观察' },
                { name: '吴浩骏', emoji: '🧒', color: '#e3f2fd', trait: '待观察' },
                { name: '洪一栩', emoji: '🧒', color: '#fff3e0', trait: '待观察' },
                { name: '王骏诚', emoji: '🧒', color: '#fce4ec', trait: '待观察' },
                { name: '邓琬曦', emoji: '👧', color: '#f3e5f5', trait: '待观察' },
                { name: '邓琬颖', emoji: '👧', color: '#e0f2f1', trait: '待观察' }
            ]
        }
    ],

    // 课程主题映射
    courses: {
        // 发现世界 DISC
        DISC: {
            1: { code: 'DISC-001', theme: '认识螺丝刀', knowledge: '螺丝刀握持、螺丝正反转' },
            2: { code: 'DISC-002', theme: '天文望远镜', knowledge: '管道连接、延长结构' },
            3: { code: 'DISC-003', theme: '卫星天线', knowledge: '旋转结构、底座稳定' },
            4: { code: 'DISC-004', theme: '概率转盘', knowledge: '圆形结构、中心轴' },
            5: { code: 'DISC-005', theme: '天平秤', knowledge: '杠杆原理、平衡判断' },
            6: { code: 'DISC-006', theme: '长颈鹿', knowledge: '高度建构、稳定性' },
            7: { code: 'DISC-007', theme: '旋转飞机', knowledge: '游乐园旋转设施、侧面连接' },
            8: { code: 'DISC-008', theme: '蜥蜴', knowledge: '关节连接、可动结构' },
            9: { code: 'DISC-009', theme: '机器人瓦力', knowledge: '履带结构、收纳功能' },
            10: { code: 'DISC-010', theme: '梳妆台', knowledge: '功能分区、镜子安装' },
            11: { code: 'DISC-011', theme: '鳄鱼', knowledge: '嘴巴开合、铰链结构' },
            12: { code: 'DISC-012', theme: '数字宝箱', knowledge: '密码锁、数字认知' },
            13: { code: 'DISC-013', theme: '战斗机', knowledge: '机翼结构、尾翼平衡' },
            14: { code: 'DISC-014', theme: '交通法规', knowledge: '红绿灯、道路标志' },
            15: { code: 'DISC-015', theme: '龙舟', knowledge: '船体浮力、划桨动作' },
            16: { code: 'DISC-016', theme: '钓鱼竿', knowledge: '伸缩结构、线轮控制' },
            17: { code: 'DISC-017', theme: '八大行星', knowledge: '太阳系模型、轨道运行' },
            18: { code: 'DISC-018', theme: '蝎子', knowledge: '多足结构、钳子开合' },
            19: { code: 'DISC-019', theme: '霸王龙', knowledge: '大型恐龙、角色扮演' },
            20: { code: 'DISC-020', theme: '投石车', knowledge: '杠杆原理、弹射机制' }
        },
        // SPIKE
        SPIKE: {
            1: { code: 'SPIKE-001', theme: '排障小车', knowledge: '电机控制、基础移动' },
            2: { code: 'SPIKE-002', theme: '超级大摆锤', knowledge: '齿轮传动、摆动结构' },
            3: { code: 'SPIKE-003', theme: '碰碰车', knowledge: '碰撞检测、方向控制' },
            4: { code: 'SPIKE-004', theme: '电吉他', knowledge: '声音模块、按钮触发' },
            5: { code: 'SPIKE-005', theme: '杯子盖球', knowledge: '传感器应用、条件判断' },
            6: { code: 'SPIKE-006', theme: '智能台灯', knowledge: '光线传感器、亮度调节' },
            7: { code: 'SPIKE-007', theme: '惯性小车', knowledge: '惯性原理、无动力设计' },
            8: { code: 'SPIKE-008', theme: '留声机', knowledge: '记录播放、循环结构' },
            9: { code: 'SPIKE-009', theme: '公交摆门', knowledge: '门控结构、传感器触发' },
            10: { code: 'SPIKE-010', theme: '电动螺丝刀', knowledge: '工具复刻、扭矩控制' },
            11: { code: 'SPIKE-011', theme: '摩天轮', knowledge: '圆周运动、速度控制' },
            12: { code: 'SPIKE-012', theme: '直升机', knowledge: '螺旋桨、升力原理' },
            13: { code: 'SPIKE-013', theme: '匀加减速', knowledge: '速度曲线、平滑控制' },
            14: { code: 'SPIKE-014', theme: '体操运动员', knowledge: '倒立结构、平衡控制' },
            15: { code: 'SPIKE-015', theme: '投篮计数器', knowledge: '计数逻辑、传感器应用' },
            16: { code: 'SPIKE-016', theme: '机械手', knowledge: '抓取结构、自由度' },
            17: { code: 'SPIKE-017', theme: '质检机', knowledge: '分类逻辑、颜色识别' },
            18: { code: 'SPIKE-018', theme: '智能叉车', knowledge: '升降结构、搬运功能' },
            19: { code: 'SPIKE-019', theme: '电子滚轮米尺', knowledge: '距离测量、数据显示' },
            20: { code: 'SPIKE-020', theme: '感应道闸', knowledge: '自动识别、开关控制' }
        },
        // AICODE03
        AICODE03: {
            1: { code: 'AICODE03-001', theme: 'AI是怎么"想"的？', knowledge: '概率预测原理、AI幻觉现象、提问质量影响' },
            2: { code: 'AICODE03-002', theme: 'AI的记忆之谜', knowledge: '长期记忆与短期记忆、上下文窗口机制、系统提示词作用' },
            3: { code: 'AICODE03-003', theme: 'AI训练师', knowledge: '系统提示词三要素、越狱与防护、迭代优化逻辑' },
            4: { code: 'AICODE03-004', theme: '我是大作家（上）', knowledge: 'Trae Builder模式、Markdown基础、项目化思维' },
            5: { code: 'AICODE03-005', theme: '我是大作家-2', knowledge: '故事大纲设计、项目上下文、章节结构' },
            6: { code: 'AICODE03-006', theme: '我是大作家（完结篇）', knowledge: '完整书籍结构、精彩片段选择、路演技巧' },
            7: { code: 'AICODE03-007', theme: '我是大作家【小说插图】', knowledge: 'AI图像生成提示词工程、占位符标注、文档化管理提示词' },
            8: { code: 'AICODE03-008', theme: '我的个人主页（上）', knowledge: '内容先行原则、板块化结构、Trae自定义智能体' },
            9: { code: 'AICODE03-009', theme: '我的个人主页（下）', knowledge: '交互元素设计、设计一致性、作品发布' },
            10: { code: 'AICODE03-010', theme: '魔幻俄罗斯方块（上）', knowledge: 'Plan Mode计划模式、需求质量与输出质量、侦探模式分析' },
            11: { code: 'AICODE03-011', theme: '魔幻俄罗斯方块（下）', knowledge: '自动化测试概念、测试覆盖、增量思维' },
            12: { code: 'AICODE03-012', theme: '涂鸦PK（一）', knowledge: '精准需求编写、新窗口审核、角色属性设计' },
            13: { code: 'AICODE03-013', theme: '涂鸦PK（二）', knowledge: '边界情况定义、独立窗口审核原则、测试脚本' },
            14: { code: 'AICODE03-014', theme: '像素角色特效生成器', knowledge: 'HTML5 Canvas绘图基础、表单交互与本地存储、像素风格特效设计、GIF动画生成、Spritesheet精灵图导出、帧动画控制' },
            15: { code: 'AICODE03-015', theme: '涂鸦PK（四）', knowledge: '数据驱动设计、角色选择界面、路演设计决策' },
            16: { code: 'AICODE03-016', theme: 'Skills入门—用game-studio做跳一跳', knowledge: 'Skills工具箱概念、插件机制、game-studio插件、Three.js' },
            17: { code: 'AICODE03-017', theme: '期末项目开发（上）', knowledge: '功能实现、代码调试、迭代优化' },
            18: { code: 'AICODE03-018', theme: '期末项目开发（下）', knowledge: '功能完善、测试验证、bug修复' },
            19: { code: 'AICODE03-019', theme: '项目优化与美化', knowledge: 'UI优化、交互改进、性能提升' },
            20: { code: 'AICODE03-020', theme: '项目展示准备', knowledge: '演示文稿制作、路演排练、作品包装' },
            21: { code: 'AICODE03-021', theme: '学期成果展示', knowledge: '作品展示、成果分享、学习总结' }
        },
        // CREATE (Wedo)
        CREATE: {
            1: { code: 'CREATE-001', theme: '风力发电站', knowledge: '直角传动、角度传感器、清洁能源' },
            2: { code: 'CREATE-002', theme: '智能洗车场', knowledge: '多齿轮传动、皮筋传动、距离传感器、自动化流程' },
            3: { code: 'CREATE-003', theme: '啄木鸟', knowledge: '皮筋传动、伺服电机、造型设计' },
            4: { code: 'CREATE-004', theme: '破壁机', knowledge: '直角传动、角度传感器、健康生活' },
            5: { code: 'CREATE-005', theme: '微波炉', knowledge: '齿轮减速、定时器、安全使用' },
            6: { code: 'CREATE-006', theme: '送餐机器人', knowledge: '直角传动、距离传感器、智能导航' },
            7: { code: 'CREATE-007', theme: '道闸', knowledge: '升降结构、传感器、交通控制' },
            8: { code: 'CREATE-008', theme: '智能晾衣架', knowledge: '升降结构、光传感器、自动控制' },
            9: { code: 'CREATE-009', theme: '打桩机', knowledge: '往复运动、重力原理、工程设备' },
            10: { code: 'CREATE-010', theme: '小鸟喂食', knowledge: '倾斜传感器、自动喂养、动物关爱' },
            11: { code: 'CREATE-011', theme: '推磨机器人', knowledge: '偏心圆、距离传感器、往复运动' },
            12: { code: 'CREATE-012', theme: '雷达巡逻车', knowledge: '旋转机构、距离检测、巡逻模式' },
            13: { code: 'CREATE-013', theme: '皮筋手枪', knowledge: '弹性原理、射击机构、安全操作' },
            14: { code: 'CREATE-014', theme: '剪刀式升降机', knowledge: '剪叉结构、升降原理、工程应用' },
            15: { code: 'CREATE-015', theme: '推车小人', knowledge: '传动机构、人形模型、运动控制' },
            16: { code: 'CREATE-016', theme: '平衡运水', knowledge: '平衡结构、传感器、稳定控制' },
            17: { code: 'CREATE-017', theme: '自动发球机', knowledge: '发球机构、速度控制、体育科技' },
            18: { code: 'CREATE-018', theme: '摇头风扇', knowledge: '摇头机构、齿轮传动、智能家居' },
            19: { code: 'CREATE-019', theme: '直升机', knowledge: '螺旋桨、升力原理、飞行控制' },
            20: { code: 'CREATE-020', theme: '联合收割机', knowledge: '复合传动、收获机制、农业科技' }
        }
    }
};

// 导出配置
if (typeof module !== 'undefined') {
    module.exports = CONFIG;
}