Files
ShaoHua 14868c45c7 feat: 实现v1.2.0云同步与实体重构核心功能
1.  重构用户与任务实体:UserEntity实现IUser<Guid>,TaskEntity继承ABP风格FullAuditedEntityWithUser,主键从int改为Guid
2.  新增云同步代理系统:嵌入式WebServer支持CloudSyncProxy转发云同步请求,新增配置API与持久化
3.  完善前端适配:新增Guid工具函数,更新任务类型定义与API交互逻辑,调整云同步设置弹窗适配本地代理
4.  文档与配置优化:更新文档结构,新增部署文档、版本记录,统一各项目配置项
5.  补充测试与迁移:新增单元测试,更新EF Core数据库迁移快照
2026-06-14 04:51:22 +08:00

4.2 KiB
Raw Permalink Blame History

Hua.Todo v1.2.0 研发工单总览

术语澄清:本目录下"工单 / 子工单 / 研发工单"指编码工作项;文中提到的"任务/任务列表/任务标题/父子任务/拉取任务/同步任务"等指 Hua.Todo 项目业务领域的 Todo 待办项(Task 实体),二者请勿混淆。详见 .trae/rules/全局/05-研发工单规则.md

本目录用于把 产品需求文档-1.2.0.md 拆解为可落地、可并行推进的子工单。各工单文件之间尽量解耦;存在明确依赖时会在工单内标注。

目标(来自 PRD

  • Linux 平台官方支持:MAUI 入口保持不动,Linux 新增 Avalonia 入口;继续用 WebView 承载同一套 Vue 前端;复用既有"本地 API ↔ 前端"的交互协议
  • Todo 待办项检索(Search):主界面顶部新增搜索框,按 Todo 待办项标题模糊匹配
  • 云同步(基础可用):用户手动配置服务端地址;RBAC + 二次认证;用户级数据隔离;服务端配置驱动的"可控落盘"

当前实现基线(用于工单定位)

  • MAUI 启动与内嵌 WebServersrc/Hua.Todo.Maui
  • 前端(Vue)与 API clientsrc/Hua.Todo.Web
  • 后端宿主(ASP.NET,动态 API):src/Hua.Todo.Host + src/Hua.Todo.Application/DynamicApi
  • 现有 WebView ↔ 前端注入协议(示例):window.__API_BASE_URL__window.mauiInterop(用于 JS 侧拿到 API base 与若干事件桥接)

工单流(并行建议)

  • Linux 入口线01-* + 02-*
    • 01:新增 Avalonia 入口、选择 Linux 可用的 WebView 控件、复用现有前后端协议
    • 02:Linux 打包/交付产物(已落地:.tar.gz 发布脚本 + Flatpak 基础结构;详见 publish-linux.ps1pack/linux/
  • Search 线03-*
    • 主要在前端完成;与云同步/平台入口基本无耦合,可并行
    • 03:已完成:主界面搜索框(按 Todo 待办项标题包含匹配;命中即显示含上下文;Esc 清空;英文大小写不敏感)
  • 云同步线04-* + 05-* + 06-*
    • 04:服务端基础能力(登录、Todo 数据同步/读取、配置下发、用户隔离)
    • 05:客户端配置与同步工作流(手动指定服务端地址、登录后拉取 Todo 数据)
    • 06:安全与落盘策略(RBAC、二次认证、可控落盘与"内存模式")
  • 文档与验收线07-*
    • 对齐文档与现实现状/接口;补齐验收步骤与自测清单

待验证表

子工单 实现状态 验证状态 备注
01 - Linux 入口 已完成 待验证 基于 Avalonia + WebView.Avalonia 实现
02 - Linux 打包/交付 已落地 待验证 .tar.gz 发布脚本 + Flatpak 基础结构
03 - Search 关键词检索 已完成 待验证 搜索框 + 树状 Todo 待办项标题包含匹配
04 - 云同步 服务端基础能力 已完成 已验证 API 契约与错误码已固化到 04 文档
05 - 云同步 客户端配置与同步 已完成 待验证 新增"云同步设置"弹窗:地址校验+保存探测、登录/登出、登录后拉取云端 Todo 数据并在主界面只读展示
06 - 安全与落盘策略 未标注 待验证
07 - 文档与验收 未标注 待验证
08 - 同源 Host 重构 已设计 待实现 Vite proxy 补 /auth /tasks /sync /security /cloud-sync
09 - 同步策略改进 待实现 待验证 重构 TaskEntity 继承 ABP 基类(FullAuditedEntityWithUser<Guid, IdentityUser>),主键从 int 改为 Guid,新增 ABP 审计字段(ExtraProperties/ConcurrencyStamp/CreationTime/CreatorId/LastModificationTime/LastModifierId/IsDeleted/DeletionTime/DeleterId

交付判定(v1.2.0 Done Definition

  • Linux:在基线发行版(建议 Ubuntu LTS)上可启动、可渲染前端、可调用本地 API;且有可安装/可运行的交付产物
  • Search:可在主界面按 Todo 待办项标题实时过滤(含层级 Todo 的展示策略清晰)
  • 云同步(基础可用):可配置服务端地址;登录后可拉取该用户的 Todo 数据;服务端可下发"是否允许落盘";客户端在禁止落盘时不产生本地持久化