Files
2026-06-18 09:48:05 +08:00

2.6 KiB
Raw Permalink Blame History

PCM 孕妇端 (patient-app · T-8.1)

孕产个案管理平台 孕妇/家属端。移动优先 Web 应用,AI 对话优先,对接 backend 已完成的 REST API。

UI 依据 ../../3-ui-style-PCM.md(温暖、柔和、低焦虑),功能映射 ../../1-prd-PCM.md §3.2 / REQ-7、REQ-1、REQ-9 等。

技术栈

  • Vite + React 18 + TypeScript
  • react-router-dom 路由
  • 原生 CSS + Design Tokenssrc/styles/tokens.css,双端可共享品牌色)

目录

src/
├── api/          # 后端契约类型 + fetch 客户端
├── auth/         # 会话/鉴权上下文与持久化
├── components/   # 底部导航、Toast、建档表单
├── lib/          # usePatient 钩子、格式化工具
├── pages/        # 登录/首页/聊天/数据/任务/我/知情同意
└── styles/       # 设计令牌与全局样式

开发

npm install
npm run dev      # http://localhost:5173 /api 代理到后端 (默认 http://localhost:3000)

先启动后端:在 ../backend 执行 npm run start

可用环境变量 PCM_API_TARGET 覆盖代理目标,生产构建用 VITE_API_BASE 指定网关地址。

脚本

  • npm run dev:开发服务器
  • npm run build:类型检查 + 生产构建
  • npm run lintESLint(零警告门槛)
  • npm run preview:预览构建产物

已实现页面(T-8.1

页面 说明 映射
登录/注册 含孕妇/家属知情同意签署(未签拒绝注册) NFR-1、T-1.1
首页(助手) 问候+孕周、聊天主入口、今日健康、意图卡片、更多功能 REQ-7/10.1、UI §5
聊天页 RAG 问答,气泡 + 强制溯源 citations,无依据明确提示就医 REQ-7.2/7.3
数据页 手动录入指标 + 观测列表 + 可解释预警(含规则溯源) REQ-1.1、REQ-3
任务/打卡页 提醒列表 + 打卡,高风险运动→休息自动调整提示 REQ-9.1/9.2
我的页 档案/孕周/风险分层、知情同意与隐私、退出 REQ-2、NFR-1

与后端对接的接口

POST /auth/register/auth/loginPOST/GET /patients/patients/:idPOST/GET /patients/:id/observationsGET /patients/:id/alertsGET /ai/askGET/POST /patients/:id/reminders

迁移到微信小程序

本端按 4-arch-PCM.md 定位最终目标为微信小程序。当前以可运行、可验证的移动 Web 实现核心交互与设计; 生产可经 Taro(React 语法编译到小程序 + H5)迁移,复用本项目的 Design Token 与组件结构, API 客户端 (src/api) 与领域类型可直接沿用。