Skip to content

v2.3.0 - 智能排班助手 & 深度课表解析上线 📅

Pre-release
Pre-release

Choose a tag to compare

@FangSuYu FangSuYu released this 17 Dec 10:57
· 7 commits to dev since this release

🌈 v2.3.0 更新日志

🚀 OrangeTools v2.3.0 来了!
距离上一个大版本 v2.0.0 发布不久,我们又迎来了一次重磅更新。本次更新重点聚焦于生产力工具的增强。我们新增了可视化的「智能排班助手」,并对核心的「课表解析引擎」进行了底层重构,支持了单双周与详细课程信息的读取。

✨ 新功能 (New Features)

📅 智能排班助手 (Intelligent Scheduler)

这是一个全新的模块,旨在解决社团、班级活动排班难的问题:

  • 可视化交互: 基于 VueDraggable 实现,支持拖拽分配人员,操作丝滑。
  • Excel 解析: 支持直接上传包含课表的 Excel 文件,自动解析空闲时间。
  • 冲突检测: 实时高亮显示时间冲突项,避免人为排班失误。
  • 🧪 自动排班 (Beta): 内置多种算法策略(贪心均衡、匈牙利全局最优、连续班次优先...以及随机分配),一键生成排班方案(注:算法处于实验阶段,仅供参考)。
  • 导出与分享: 支持截图分享排班表,或导出 JSON 存档以便下次编辑。

🎓 深度课表解析 (Advanced Course Parsing)

核心解析逻辑全面升级,不再只看“有课/没课”,现在有更懂你的课表:

  • 详情解析: 支持解析课程名、教师姓名、上课地点等详细信息。
  • 单双周识别: 完美支持如 3-5(单), 8-10(双) 等复杂周次规则。
  • 交互升级: 课表界面支持点击查看课程详情弹窗。
  • 信息补全: 新增“完善学生信息”功能,支持批量导入/粘贴名单来补全班级与学号。

⚡ 优化与改进 (Improvements)

  • Auth: 优化登录体验,移除了用户名输入框中冗余的占位符文本;修正了注册时学号的默认值处理逻辑。
  • UI/UX:
    • 优化了截图功能的清晰度与宽度适配。
    • 改进了暗黑模式下的部分组件样式。
    • 调整了移动端和特殊时段的视觉区分。
  • Dev: 为 .vscode 添加了 Docker Compose 文件的默认格式化配置。

📦 依赖更新

  • 前端引入 html2canvas (用于截图) 和 vuedraggable (用于拖拽交互)。

⚠️ 升级指南 (Upgrade Guide)

由于引入了新的前端依赖库和后端解析逻辑变更,请务必执行以下操作:

  1. 前端: 必须重新构建镜像,以安装新增的 npm 依赖。
  2. 后端: 必须重新构建镜像,以应用新的数据库模型(CourseDetail)和解析算法。
# 拉取最新代码
git pull

# Docker
# 重新构建镜像并启动
docker compose up -d --build

# 本地
# 清除数据库表并重新运行init.sql
# 前后端更新依赖后即可运行