worklog/doc/CHANGELOG.md

2.6 KiB
Raw Blame History

功能更新日志

V1.1 版本 (2026-02-26)

新增功能

1. 日志类型管理

  • 日志分类:新增日志类型字段,支持 4 种类型
    • 1 - 工作计划
    • 2 - 工作日志(默认)
    • 3 - 个人日志
    • 9 - 其他

2. 业务规则优化

  • 唯一性约束:工作计划和工作日志,同一天只能各创建一条
  • 灵活性支持:个人日志和其他类型,同一天可以创建多条

3. 日历交互升级

  • 原交互:点击日期直接显示单条日志详情
  • 新交互:点击日期显示日志列表弹窗
    • 列表按类型排序显示(工作计划 → 工作日志 → 个人日志 → 其他)
    • 点击列表项查看详情
    • 详情页支持返回列表

数据库变更

work_log 表

  • 新增字段:log_type TINYINT(1) NOT NULL DEFAULT 2
  • 新增索引:idx_user_date_type (user_id, log_date, log_type)

API 变更

破坏性变更

  • 接口GET /api/v1/log/by-date
  • 变更:返回值从单个 LogVO 改为 List<LogVO>
  • 影响:前端需同步更新

新增字段

  • LogCreateDTO:新增 logType 字段可选默认值2
  • LogVO:新增 logTypelogTypeDesc 字段

前端变更

管理后台 (worklog-web)

  1. 日志管理页面:增加类型选择下拉框和类型列显示
  2. 首页日历:重构为列表+详情双层弹窗交互
  3. 首页人员查询:新增“添加日志”按钮,跳转日志管理并打开新建弹窗

移动端 (worklog-mobile)

  1. 首页日历:重构为列表模式+详情模式切换
  2. 日志创建:增加类型选择器

测试覆盖

  • 单元测试:新增 15 个测试用例,覆盖类型创建、唯一性约束、列表排序等
  • 测试通过率35/36 (97.2%)
  • 跳过测试1 个deleteLog_success原因MyBatis Plus Lambda缓存在Mock环境下的限制

文档更新

  • 产品需求文档 PRD (V1.0 → V1.1)
  • 数据库初始化脚本注释
  • 数据库迁移脚本 (v1.1_add_log_type.sql)
  • 功能更新日志

兼容性说明

  • 现有日志数据的 log_type 字段自动设置为默认值 2工作日志
  • 前后端需同步部署API 接口有破坏性变更

回滚方案

如需回滚到 V1.0 版本:

-- 删除日志类型字段和索引
ALTER TABLE work_log DROP INDEX idx_user_date_type;
ALTER TABLE work_log DROP COLUMN log_type;

然后部署 V1.0 版本的前后端代码。


V1.0 版本 (初始版本)

  • 基础的工作日志管理功能
  • 用户管理
  • 日志模板管理
  • PC 端和移动端支持