Skip to content

Releases: FangSuYu/OrangeTools

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

Choose a tag to compare

@FangSuYu FangSuYu released this 17 Dec 10:57

🌈 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
# 前后端更新依赖后即可运行

v2.0.0 - 邮箱认证体系全面上线 📧

Choose a tag to compare

@FangSuYu FangSuYu released this 13 Dec 03:24

🌈 v2.0.0 更新日志

🎉 OrangeTools v2.0.0 正式发布!
本次更新带来了全新的邮箱认证体系,彻底解决了用户忘记密码无法找回的痛点,并新增了验证码快捷登录方式。为了支持这些功能,我们引入了 Redis 缓存组件,显著提升了系统的安全性和扩展性。

✨ 新特性 (New Features)

  • 📧 全场景邮箱支持:
    • 新增邮箱验证码发送接口,覆盖注册、登录、重置密码三大核心场景。
    • 注册升级: 注册流程增加邮箱验证步骤,确保用户身份真实有效。
    • 快捷登录: 支持使用“邮箱 + 验证码”直接登录,无需记忆密码。
    • 密码找回: 新增“忘记密码”功能,用户可通过邮箱验证码自助重置密码。
  • 🎨 前端界面更新:
    • 新增独立的邮箱登录页面。
    • 新增忘记密码/重置密码流程页面。
    • 优化认证流程的交互体验。

🏗️ 架构与后端 (Architecture & Backend)

  • Redis 集成: 引入 Redis 用于存储和校验短效验证码,提升系统性能与安全性。
  • Spring Mail 集成: 实现了标准的邮件发送服务。
  • 依赖升级: 项目整体依赖组件更新,版本号正式迈入 v2.0.0 时代。

⚡ 优化 (Improvements)

  • 系统稳定性: 调整了前端请求的超时时间配置,适应网络波动环境。
  • 配置管理: 更新了 application.yml 模板,规范了 Redis 和 Mail 的配置项。

⚠️ 升级注意事项 (Upgrade Guide)

由于 v2.0.0 引入了新的中间件和配置,老版本升级请务必执行以下操作:

  1. 中间件依赖: 服务器必须安装并启动 Redis 服务。
  2. 配置文件更新: 请在 application-prod.yml 中追加以下配置:
    spring:
      # Redis 配置
      data:
        redis:
          host: localhost
          port: 6379
          password: your_redis_password
      # 邮件配置
      mail:
        host: smtp.qq.com (或你的邮件服务商)
        username: your_email@domain.com
        password: your_email_auth_code
  3. 重新构建: 需重新拉取代码并构建前后端镜像。

v1.0.3 - 注册功能修复与404/500页面动画修复

Choose a tag to compare

@FangSuYu FangSuYu released this 08 Dec 14:28

🌈 变更日志 (Changelog)

本次更新重点解决了用户注册时一直转圈圈和前端404、500页面lottie动画资源未显示的问题。

🐛 问题修复 (Fixes)

  • 用户注册转圈圈问题:修复了用户在注册时,因前端组件加载问题卡住一直处于loading状态的问题。
  • 前端404、500页面lottie动画未显示问题:修复了前端对于静态资源引入的问题。

v1.0.2 - 剪贴板兼容性升级与细节打磨

Choose a tag to compare

@FangSuYu FangSuYu released this 08 Dec 08:27

🌈 变更日志 (Changelog)

本次更新重点解决了生产环境(HTTP/IP访问)下的交互兼容性问题,并修复了静态资源加载的若干 Bug。

✨ 新特性 (Features)

  • 📋 全环境剪贴板支持 (Clipboard Compatibility):
    • 重写了复制功能底层逻辑,新增智能降级方案。
    • 在支持 HTTPS 的现代环境中优先调用 Clipboard API。
    • 在 HTTP 或内网环境中自动降级为 execCommand 方案,彻底解决了非安全上下文无法复制课表/周报的问题。

🐛 问题修复 (Fixes)

  • 🖼️ 侧边栏 Logo 修复:
    • 修复了生产环境构建后,侧边栏 Logo 因路径问题无法显示的 Bug。
    • 统一了 Logo 资源引用源,现在默认使用高清的 favicon.png,视觉体验更统一。

♻️ 代码优化 (Refactors)

  • 🐟 赛博木鱼组件优化:
    • 优化了音频资源的引用方式(改为 ESM import),确保在 Docker 部署后音频能正确加载。
    • 清理了未使用的动画样式代码,提升组件代码纯净度。

Full Changelog: v1.0.1...v1.0.2

v1.0.1 - 样式优化与体验修复

Pre-release

Choose a tag to compare

@FangSuYu FangSuYu released this 08 Dec 02:30

🌈 变更日志 (Changelog)

本次更新主要修复了 UI 细节问题,并优化了部分链接跳转体验。

💄 样式与交互优化 (UI/UX)

  • 主控台: 优化了更新日志的展示方式,移除硬编码,改为CDN读取Github release信息。
  • 个人中心: 采用赛博浮岛风格重构,修复了左右栏高度不对齐的问题。
  • 导航栏: 修复了面包屑导航的显示逻辑。
  • 全局: 优化了暗黑模式下的部分颜色对比度。

🐛 修复 (Fixes)

  • 修复了头像加载的路径解析问题 (Avatar URL Fix)。
  • 修正了主控台快捷导航的链接跳转错误。

🔧 其他 (Chores)

  • 升级前后端版本号至 1.0.1。
  • 更新了 package.json 配置。

Full Changelog: v1.0.0...v1.0.1

OrangeTools v1.0.0 - 校园工具集合正式版

Choose a tag to compare

@FangSuYu FangSuYu released this 07 Dec 15:01

🎉 OrangeTools v1.0.0 正式发布!

这是 OrangeTools 的第一个里程碑版本。在这个版本中,我们为校园生活打造了一个集实用与趣味于一体的工具平台。

✨ 核心功能 (Features)

  • 📅 课表空闲统计助手:
    • 支持 Excel 批量上传与解析。
    • 全自动计算全班/全校空闲时间。
    • 支持周次切换、热力图展示、一键复制空闲名单。
  • 🎋 社区许愿墙:
    • 用户可提交功能建议或 Bug 反馈。
    • 支持“赛博木鱼”积攒功德,解压神器。
    • 极简交互,提交即上墙。
  • 🏆 贡献者荣誉墙:
    • 炫酷的 3D 悬浮卡片效果。
    • 赛博朋克风格的入场动画。
    • 致敬每一位项目参与者。
  • 👤 个人中心体系:
    • 支持修改资料、绑定学号、修改密码。
    • 精美的毛玻璃 UI 设计。
    • 全站头像统一管理。

🛠️ 技术栈 (Tech Stack)

  • Frontend: Vue 3, Vite, Pinia, Element Plus, VueUse
  • Backend: Spring Boot, MyBatis-Plus, MySQL, Spring Security + JWT
  • Design: Cyberpunk & Glassmorphism UI Style

致谢

特别感谢所有参与测试的同学以及核心开发团队!