Skip to content

feat(backend): 实现 WebSocket 日程创建更新与列表查询 #107

Description

@yyy-router

背景

MVP 需要通过现有 WebSocket 长连接完成日程写入和列表初始化,不再增加独立 HTTP 日程接口。

实现范围

  • 实现 schedule.upsert.command 日程创建与更新
  • 支持 manual 和 voice 两种来源
  • 支持 time 和 location 两种日程类型及必填规则校验
  • 实现时间冲突检测,并以非阻断提示返回
  • 实现 schedule.list.query 日程列表查询
  • 支持状态筛选和 include_deleted 查询参数
  • 增加 SQLAlchemy 日程仓储并接入应用组合根
  • 增加业务服务、仓储和 WebSocket handler 测试

验收标准

  • WebSocket 握手后可以创建和更新日程
  • 可以查询当前默认用户的日程列表
  • 参数错误和日程不存在时返回约定的错误消息
  • 时间重叠时返回 conflicts,但不阻止日程保存
  • Ruff、Mypy 和 Pytest 检查通过

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions