Commit Graph

9 Commits

Author SHA1 Message Date
LoveLosita
63500b3b2a Version: 0.3.0.dev.260212
refactor: ♻️ 基于 gorm 钩子实现自动缓存失效机制,再也不用牵一发而动全身写删缓存逻辑了~

- 通过 gorm hook 监听 MySQL 数据变更 🧩
- 自动删除对应表相关缓存,实现缓存失效自动化 🔄
- 移除原本写在 sv 层的手动删缓存逻辑 🧹
- 解耦业务逻辑与缓存控制,结构更加清晰 

fix: 🐛 修复将任务类加入日程接口的时间字段遗漏问题

- 由于前版本 MySQL 表结构更新
- 漏写插入起始时间字段逻辑,导致500报错,现已补充 ⏱️

fix: 🐛 修复获取最近已完成任务列表接口的多个问题

- 移除不应存在的幂等键 🔁
- 修复“一个event输出多次”的问题(原因出自 dto 转换函数) 🔧

undo: ⚠️ 删除任务类接口未处理已安排任务块的解除逻辑

- 当前删除任务类时,未解除已被安排的任务块
- 该逻辑存在缺陷,计划在后续版本内修复 🛠️
2026-02-12 21:34:01 +08:00
LoveLosita
6dd1f656dc Version: 0.2.6.dev.260211
feat: 🕒 为 schedule_events 表新增 start_time 与 end_time 字段

- 新增 start_time 与 end_time 两列
- 支持最近已完成任务列表接口
- 为后续获取当前正在进行的任务接口做准备 🚧

feat:  新增最近已完成任务列表接口并通过测试

- 完成接口实现与测试 🧪
- 当前 sv 层使用测试时间进行逻辑验证
- ⚠️ 生产环境需改回使用当前时间
2026-02-11 21:08:50 +08:00
LoveLosita
6d857d16c2 Version: 0.1.4.dev.260208
feat: 📆 新增查看用户整周日程接口
2026-02-08 20:22:49 +08:00
LoveLosita
79b6be5f40 Version: 0.1.3.dev.260208
refactor: ♻️ 重命名部分接口接收器以避免与 dao 层包名冲突

- 调整部分接口接收器命名,避免与 dao 层包名重名 🧩

feat: 📅 新增获取用户今日日程接口并完成实现

fix: 🐛 修复现实日期与相对日期转换逻辑中的初始化时序问题

- 修复 conv/time.go 中日期转换函数的一个 bug ⏱️
- 解决 viper 在包级变量初始化时机过早的问题
- 避免因过早初始化导致无法读取配置中的学期开学/结束时间 📆
2026-02-08 19:09:40 +08:00
LoveLosita
75a44f2edd Version: 0.1.2.dev.260207
feat: ⚠️ 批量导入课程接口支持冲突预检测与冲突提示

- 批量导入课程接口支持预先检测冲突
- 返回并展示具体发生冲突的课程信息 📚💥
- 补全此前规划的冲突提示功能(把大饼补上了 🍞)

refactor: 🧱 使用工作单元模式管理 dao 层事务

- 引入工作单元模式(Unit of Work)统一管理 dao 层
- 新建全局事务,使跨 repo 的 gorm 事务管理更加方便 🔁

fix: 🐛 修复将任务块添加进日程接口的多个问题

- 修复核心逻辑 bug(费了老大劲 😵‍💫)
- 补充并覆盖该接口的多种异常与错误场景测试 🧪
2026-02-07 22:08:13 +08:00
LoveLosita
f4bea0576c feat: 🗓️ 新增任务块排期能力并完善课程与日程模型
Version: 0.1.1.dev.260207

- 新增并测试通过将任务块排进日程接口 
- 批量导入课程接口增加单双周功能,支持只在单双周上课的课程 📚
- 任务块时间定位逻辑调整为「第几周-周几」模式 🧭

refactor: 🔨 重构时间与日程数据结构

- 完成绝对日期与相对时间的转换逻辑 🔄
  - 后续可根据需求灵活决定时间的传入与输出类型
- 再次重构 schedule 表单结构
  - 拆分为 schedule_event(单)与 schedule(多)
  - 建立前者对后者的一对多关系 🧩

fix: 🐛 大幅调整表结构与业务逻辑,修复大量历史遗留 bug 🔥
2026-02-07 16:33:30 +08:00
LoveLosita
1bcbd41bec Version:0.0.7.dev.260204
feat:  新增获取完整任务类与修改任务类接口并完成测试

- 新增获取完整任务类接口 📋
  - 实现创建任务类的逆向数据转换函数 🔄
  - 工程量较大,涉及完整数据结构还原 🏗️

- 新增修改任务类接口 ✏️
  - 调整 service 层 AddOrUpdateTaskClass 函数逻辑
  - 复用创建任务类的大部分实现,并通过 method 区分创建/更新操作 ♻️

- 更新 dao 层操作逻辑 🗄️
  - 增加防止越权修改其它用户任务类的机制 🔒

- 两个接口代码量巨大,但均已测试通过 🧪💪
2026-02-04 22:08:58 +08:00
LoveLosita
af8e8bd804 Version:0.0.5.dev.260204
feat: 🏗️ 完成任务分类创建与列表查询接口并通过测试

- 历经复杂嵌套逻辑处理 🌀
- 实现创建任务分类接口 
- 实现获取任务分类列表接口 📋
- 接口测试全部通过 🧪

perf: 🚀 下个版本将为任务分类列表接口加入 Redis 缓存以提升查询速度 
2026-02-04 19:26:22 +08:00
LoveLosita
a59bcfbc5e Version:0.0.3.dev.260203
feat:  新增任务队列任务获取与创建接口
- 编写获取任务队列中任务的接口
- 编写新增任务接口
- 完成相关测试并验证通过 
2026-02-03 20:27:36 +08:00