# mini-demo 页面迁移项目 产品需求文档 (PRD) ## 版本信息 | 版本 | 日期 | 描述 | 作者 | |------|------|------|------| | 1.0 | 2025-10-15 | 基于项目简报更新为出行服务项目 | John (PM) | ## 1. 项目介绍和分析 ### 1.1 项目概览 **项目名称**: mini-demo 页面迁移项目 **产品概念**: 将现有的 mini-demo(纯前端出行小程序演示)的16个功能页面迁移到 mini 项目中,并基于 src 目录构建完整的后端和管理后台系统。 **当前项目状态**: - 🚗 **mini-demo**: 微信原生小程序,16个出行服务页面,纯前端演示 - 🛠️ **mini**: Taro + React 小程序项目,基础框架已搭建 - 🔧 **src**: Hono + TypeORM 后端API和管理后台,用户管理基础已实现 ### 1.2 问题陈述 **当前痛点**: - mini-demo 仅有前端界面,所有数据都是模拟的 - 无数据持久化,用户信息、订单数据无法保存 - 缺乏真实业务逻辑:订单处理、支付、司机匹配等 - 无管理后台,无法进行运营管理 **问题影响**: - 无法作为真实产品上线运营 - 用户体验不完整,无法完成完整的出行服务流程 - 技术债务积累,难以迭代和维护 ### 1.3 解决方案概述 **核心方法**: 将 mini-demo 的16个功能页面迁移到 mini 项目(Taro + React 技术栈),并基于 src 目录构建完整的后端 API 和管理后台系统。 **关键差异化**: - 技术现代化:从微信原生迁移到 Taro + React - 完整业务闭环:构建真实的后端服务 - 管理后台:提供运营管理界面 - 数据持久化:基于 PostgreSQL 实现数据存储 ### 1.4 目标和背景 #### 业务目标 - 🚀 **产品转化**: 将演示原型转化为功能完整的出行服务平台 - 📈 **用户增长**: 3个月内达到1000名注册用户 - 💰 **收入目标**: 6个月内实现月订单收入10,000元 - 🔄 **技术升级**: 统一技术架构,提升可维护性和扩展性 #### 技术背景 项目已具备优秀的技术基础: - mini: Taro + React + TypeScript + TailwindCSS 多端框架 - src: Hono + TypeORM + PostgreSQL 现代化后端架构 - 完整的用户认证和权限管理系统 - 生产就绪的部署配置和环境 ## 2. 需求定义 ### 2.1 功能需求 基于项目简报和实际项目分析,定义以下出行服务功能需求: **FR1: 用户认证和基础管理** - 支持微信小程序登录和注册 - 用户信息持久化存储到PostgreSQL数据库 - 乘客信息管理:身份证、姓名等基本信息 - 基础用户设置和偏好管理 **FR2: 出行服务核心功能 (MVP)** - 路线查询和活动筛选(去程活动/返程活动) - 线路管理:上车点、下车点、出发日期时间、车型、人数上限 - 订单管理:下单、支付、状态跟踪(待出发、行程中、已完成、已取消) - 支付集成:微信支付完整流程 **FR3: 前端页面迁移和优化** - 将mini-demo的核心页面迁移到Taro + React技术栈 - 响应式设计,支持多端发布(微信小程序、H5) - 统一的UI组件库和设计规范 - 优化用户体验和交互流程 **FR4: 后端业务逻辑实现** - 活动管理:活动创建、关联多条线路 - 订单处理流程:下单、支付、状态更新 - 线路和车型管理业务逻辑 - 基础数据统计功能 **FR5: 管理后台系统** - 活动管理:活动配置、线路关联 - 订单管理:订单监控、状态管理 - 用户管理:用户信息、乘客信息管理 - 线路管理:线路配置、车型管理 ### 详细 rationale (决策依据): 这些需求基于对mini-demo功能分析和现有技术架构的评估: - **业务连续性**: 保持mini-demo的核心出行服务功能 - **技术现代化**: 利用现有Taro + React + Hono技术栈优势 - **数据完整性**: 基于现有用户管理基础扩展出行业务数据模型 - **运营需求**: 为商业化运营提供完整的管理后台支持 **关键假设**: - 目标用户是出行服务需求人群和司机/运营人员 - 主要使用场景是城市内拼车、商务车、包车服务 - 微信小程序是主要发布平台 - 需要支持完整的出行服务业务流程 **需要验证的领域**: - 现有用户数据如何迁移到新系统? - mini-demo中模拟数据的转换策略? - 司机端功能是否需要在MVP中实现? - 积分系统的具体规则和兑换机制? ### 2.2 非功能性需求 **NFR1: 性能和响应速度** - 页面加载时间 < 2秒,API响应时间 < 500ms - 支持实时位置更新和状态同步 - 数据库查询优化,支持高并发访问 - 前端资源优化,减少首屏加载时间 **NFR2: 可靠性和稳定性** - 订单处理流程必须保证数据一致性 - 支付系统需要99.9%的可用性 - 支持事务处理和异常恢复 - 系统监控和告警机制 **NFR3: 安全性和数据保护** - 用户数据加密存储和传输 - 支付信息安全保护 - 防止SQL注入和XSS攻击 - 用户隐私数据合规处理 **NFR4: 可扩展性和维护性** - 模块化架构,支持功能扩展 - 清晰的代码结构和文档 - 自动化测试覆盖核心业务逻辑 - 支持灰度发布和回滚 **NFR5: 用户体验和易用性** - 直观的操作流程和界面设计 - 错误提示和引导信息清晰 - 支持离线操作和网络异常处理 - 多端体验一致性 ### 详细 rationale (决策依据): 这些非功能性需求基于出行服务业务特点: - **性能关键**: 出行服务需要快速响应和实时更新 - **可靠性优先**: 订单和支付系统必须稳定可靠 - **安全合规**: 用户数据和支付信息需要严格保护 - **扩展需求**: 业务增长需要系统能够水平扩展 **技术约束**: - 必须兼容微信小程序平台限制 - 支持PostgreSQL关系型数据库 - 基于现有Taro + Hono技术栈 - 多八多云端开发容器环境部署 ### 3.2 集成策略 **数据库集成策略**: - 基于现有TypeORM实体扩展出行业务数据模型 - 支持订单、乘客、积分等复杂业务关系 - 数据库迁移和版本控制 - 连接池管理和性能优化 **API集成策略**: - RESTful API设计,支持微信小程序调用 - Hono RPC确保前后端类型安全 - 统一的错误处理和响应格式 - 第三方服务集成:微信支付、地图服务 **前端集成策略**: - Taro多端框架,支持微信小程序和H5 - 统一的UI组件库和设计规范 - 状态管理和数据流优化 - 微信小程序API集成 ## 5. Epic和故事结构 ### 5.1 Epic方法 **Epic结构决策**: 按业务领域划分Epic - 针对出行服务不同业务模块分别开发 **决策依据**: - 项目需要从演示原型转化为完整产品 - 不同业务模块有明确的依赖关系和优先级 - 独立Epic便于并行开发和专门团队负责 - 每个Epic对应一个完整的业务功能模块 ### 5.2 Epic详情 **Epic 005: 出行服务核心功能 (MVP优先)** **Epic目标**: 实现路线查询、活动筛选、订单管理、乘客管理、支付集成等核心出行服务功能。 **成功标准**: 用户能够完成从查询路线到支付完成的完整出行流程,订单数据正确存储 **Epic 006: 前端页面迁移和基础框架** **Epic目标**: 将mini-demo的核心页面迁移到Taro + React技术栈,建立统一的前端架构和组件库。 **成功标准**: MVP相关页面功能完整迁移,UI组件库建立,多端发布支持正常 **Epic 007: 用户认证和基础管理** **Epic目标**: 基于现有用户管理基础,支持微信小程序登录和基础用户信息管理。 **成功标准**: 用户注册登录流程完整,乘客信息管理功能可用 **Epic 008: 管理后台系统** **Epic目标**: 构建运营管理后台,支持订单管理、用户管理、数据统计等运营功能。 **成功标准**: 管理后台功能完整,运营人员能够正常进行日常管理操作 ### 5.3 各Epic用户故事概览 **Epic 005 - 出行服务核心功能 (MVP优先)**: - 路线查询和活动筛选功能(去程活动/返程活动) - 线路管理:上车点、下车点、出发日期时间、车型、人数上限 - 订单管理:订单创建、支付、状态管理(待出发、行程中、已完成、已取消) - 乘客信息管理:身份证、姓名 - 微信支付集成 **Epic 006 - 前端页面迁移和基础框架**: - 首页迁移(静态焦点图) - 路线查询和活动选择页面迁移 - 订单相关页面迁移(下单、支付、订单列表、详情) - 乘客管理页面迁移 - 统一的UI组件库建设 **Epic 007 - 用户认证和基础管理**: - 微信小程序登录注册功能 - 基础用户信息管理 - 乘客信息维护功能 - 用户设置和偏好管理 **Epic 008 - 管理后台系统**: - 活动管理:活动创建、关联线路 - 线路管理:线路配置、车型管理 - 订单管理:订单监控、状态管理 - 用户管理:用户信息、乘客信息管理 ## 6. 成功指标和验收标准 ### 6.1 关键绩效指标(KPI) **Epic 005 - 出行服务核心功能指标**: - 🚗 路线查询准确率 > 95% - 📦 订单创建到支付完成转化率 > 85% - 💳 微信支付集成正常,支付成功率 > 98% - 👥 乘客信息管理功能完整 **Epic 006 - 前端页面迁移指标**: - ✅ MVP相关页面完整迁移,功能测试通过率100% - ⚡ 页面加载时间 < 2秒,API响应时间 < 500ms - 🎨 UI组件库建立,设计一致性达到95% - 📱 多端发布支持正常(微信小程序、H5) **Epic 007 - 用户认证和基础管理指标**: - 👥 用户注册登录成功率 > 99% - 👤 乘客信息管理功能完整,数据准确 - 🔐 微信小程序登录集成正常 - ⚙️ 基础用户设置功能正常 **Epic 008 - 管理后台系统指标**: - 📊 订单管理功能完整,监控数据准确 - 👤 用户管理功能正常,行为分析可用 - 📈 运营数据统计报表生成正常 - 🚕 活动管理和线路配置功能完整 **总体业务指标**: - 📈 **用户增长**: 3个月内达到1000名注册用户 - 💰 **收入目标**: 6个月内实现月订单收入10,000元 - 🔄 **用户留存**: 30天用户留存率达到40% - ⚡ **订单转化**: 首页到下单转化率达到15% ### 6.2 验收标准 **项目级验收**: - 所有16个页面功能完整迁移并测试通过 - 用户能够完成从查询路线到支付完成的完整出行流程 - 核心业务数据能够正确存储和展示 - 管理后台能够处理基本的订单和用户管理 - 系统稳定运行,无明显性能问题 **阶段性验收**: - 每个Epic完成后进行功能演示和用户测试 - 每周演示进度和获取业务反馈 - 每月进行整体质量评估和业务指标检查 - MVP完成后进行上线前综合测试 ## 7. 附录 ### 7.1 参考资料 - 项目简报: `docs/brief.md` - mini-demo项目: `./mini-demo/` - mini项目: `./mini/` - src后端项目: `./src/` ### 7.2 相关文档 - 技术架构文档: `docs/architecture.md` - API文档: 通过 `/ui` 端点访问 - 开发指南: `docs/development.md` - 部署指南: `docs/deployment.md` ### 7.3 联系方式 - 产品负责人: [待指定] - 技术负责人: [待指定] - 开发团队: [待指定] ### 7.4 项目约束和假设 **约束**: - 预算:基于现有开发资源,无额外预算 - 时间线:MVP在4-6周内完成 - 资源:现有开发团队,无额外人员 - 技术:必须兼容微信小程序平台 **关键假设**: - Taro框架能够满足出行小程序的功能需求 - 现有后端架构能够扩展支持出行业务 - 微信支付接口能够正常集成 - 用户接受新的界面设计和交互方式 - 市场对出行服务有持续需求 - MVP功能能够满足用户基本出行需求 --- **文档状态**: 已更新 **最后更新**: 2025-10-15 **下次评审**: 2025-10-22