# 情绪博物馆功能模块详细梳理 **文档版本**: v1.0 **创建时间**: 2025-07-12 **基于**: 现有代码分析和需求文档 --- ## 📋 目录 - [1. 记录页面 (RecordView)](#1-记录页面-recordview) - [2. 治愈页面 (GrowthView)](#2-治愈页面-growthview) - [3. 探索页面 (ExploreView)](#3-探索页面-exploreview) - [4. 个人页面 (InsightView)](#4-个人页面-insightview) - [5. 公共组件和服务](#5-公共组件和服务) - [6. 缺失功能清单](#6-缺失功能清单) --- ## 1. 记录页面 (RecordView) ### 1.1 已实现功能 ✅ #### 主界面组件 - [x] **顶部导航栏** - 左上角:聊天记录入口按钮 - 中间:页面标题 - 右上角:设置按钮 - [x] **情绪日历组件** - 单行日历显示 - 日期选择功能 - 基础情绪标记 - [x] **AI助手头像区域** - 静态头像显示 - 欢迎文案 - 基础动画效果 - [x] **聊天区域** - 消息列表显示 - 消息气泡样式 - 滚动到底部功能 - [x] **输入区域** - 文本输入框 - 发送按钮 - 语音模式切换按钮 - 图片添加按钮 #### 状态管理 - [x] 加载状态管理 - [x] 骨架屏显示 - [x] 错误状态处理 - [x] 刷新功能 ### 1.2 待实现功能 ❌ #### 核心功能 - [ ] **聊天记录入口页面 (ChatHistoryView)** - 对话列表展示 - 搜索和筛选功能 - 对话摘要显示 - 删除和管理功能 - [ ] **全屏对话页面 (FullScreenChatView)** - 全屏聊天界面 - 语音/文字模式切换 - 消息发送状态 - 对话收起功能 - [ ] **设置页面 (SettingsView)** - 主题设置 - 音效设置 - 隐私设置 - 关于页面 #### 高级功能 - [ ] **语音识别功能** - 语音转文字 - 语音消息录制 - 语音播放控制 - [ ] **AI对话增强** - 真实AI服务集成 - 情绪分析反馈 - 智能回复建议 - [ ] **情绪日历增强** - 日历展开/收起 - 情绪趋势图表 - 历史回顾功能 ### 1.3 数据流设计 ```mermaid graph TD A[用户输入] --> B[NavigationManager] B --> C[MockDataManager] C --> D[AI服务] D --> E[情绪分析] E --> F[数据存储] F --> G[UI更新] ``` --- ## 2. 治愈页面 (GrowthView) ### 2.1 已实现功能 ✅ #### 数据模型 - [x] **GrowthTopic模型** - 课题基本信息 - 进度追踪 - 分类系统 - 难度等级 - [x] **TopicInteraction模型** - 互动类型定义 - 完成状态追踪 - 评分系统 - [x] **Reward模型** - 奖励类型 - 稀有度系统 - 积分机制 #### 基础界面 - [x] 页面框架结构 - [x] 主题适配 - [x] 加载状态 ### 2.2 待实现功能 ❌ #### 主界面组件 - [ ] **成长概览卡片** - 个人成长数据展示 - 本周进展摘要 - 成长轨迹可视化 - [ ] **五维雷达图** - 自我感知维度 - 情绪韧性维度 - 行动力维度 - 共情力维度 - 生活热度维度 - [ ] **课题分类标签** - 分类筛选功能 - 进度指示器 - 解锁状态显示 - [ ] **课题列表** - 课题卡片展示 - 进度条显示 - 快速操作按钮 #### 详情页面 - [ ] **课题详情页 (TopicDetailView)** - 课题完整信息 - 学习路径展示 - 相关资源链接 - 进度统计 - [ ] **课题互动页 (TopicInteractionView)** - AI对话互动 - 知识文章阅读 - 练习活动 - 反思日记 #### 子功能页面 - [ ] **TopicChatView** - AI对话 - [ ] **TopicArticleView** - 文章阅读 - [ ] **TopicExerciseView** - 练习活动 - [ ] **TopicReflectionView** - 反思日记 ### 2.3 成长数据算法 ```swift // 成长数据计算逻辑 class GrowthCalculator { static func calculateGrowthStats(from interactions: [TopicInteraction]) -> GrowthStats { // 基于互动数据计算五维成长数据 } static func updateProgressBasedOnActivity(topic: GrowthTopic, activity: TopicInteraction) -> Float { // 根据活动类型和质量更新进度 } } ``` --- ## 3. 探索页面 (ExploreView) ### 3.1 已实现功能 ✅ #### 数据模型 - [x] **LocationPin模型** - 地理坐标 - 地点信息 - 情绪标签 - 社区数据 - [x] **CommunityPost模型** - 帖子内容 - 图片支持 - 点赞评论 - 分类标签 #### 基础界面 - [x] 页面框架 - [x] 主题适配 ### 3.2 待实现功能 ❌ #### 地图功能 - [ ] **地图SDK集成** - 高德地图集成 - 地图显示和控制 - 定位服务 - 地点标记 - [ ] **地点管理** - 地点详情页 (LocationDetailView) - 添加地点页 (AddLocationView) - 地点分类筛选 - 收藏和访问记录 #### 社区功能 - [ ] **社区动态页 (CommunityFeedView)** - 帖子列表展示 - 图文混排 - 无限滚动加载 - 刷新机制 - [ ] **帖子详情页 (PostDetailView)** - 完整帖子内容 - 评论区域 - 点赞分享功能 - 相关推荐 - [ ] **发布功能** - 图片选择和上传 - 文字编辑 - 地点关联 - 标签添加 #### 视图切换 - [ ] **地图/社区模式切换** - 平滑过渡动画 - 状态保持 - 数据同步 ### 3.3 地图服务架构 ```swift // 地图服务管理 class MapService: ObservableObject { @Published var currentLocation: CLLocationCoordinate2D? @Published var nearbyLocations: [LocationPin] = [] func searchNearbyPlaces(radius: Double) async { // 搜索周边地点 } func addCustomLocation(_ location: LocationPin) { // 添加自定义地点 } } ``` --- ## 4. 个人页面 (InsightView) ### 4.1 已实现功能 ✅ #### 数据模型 - [x] **User模型** - 用户基本信息 - 成长统计数据 - 会员等级 - [x] **Achievement模型** - 成就系统 - 进度追踪 - 分类管理 - [x] **UserStats模型** - 统计数据 - 活跃度指标 #### 基础界面 - [x] 页面框架(当前为UniverseView) - [x] 主题适配 ### 4.2 待实现功能 ❌ #### 主界面组件 - [ ] **用户资料卡片** - 头像和基本信息 - 会员等级显示 - 注册天数统计 - [ ] **本周数据统计** - 心情指数 - 对话次数 - 成长轨迹 - 活跃度图表 - [ ] **成就展示区域** - 最新成就 - 进度展示 - 快速查看 - [ ] **快捷功能区域** - 设置入口 - 邀请好友 - 反馈建议 - 帮助中心 #### 详情页面 - [ ] **用户资料页 (UserProfileView)** - 个人信息编辑 - 头像上传 - 隐私设置 - 账户管理 - [ ] **成就页面 (AchievementsView)** - 成就分类展示 - 进度详情 - 解锁条件 - 奖励查看 - [ ] **会员中心 (MemberCenterView)** - 会员权益 - 升级选项 - 使用统计 - 特权功能 ### 4.3 统计数据计算 ```swift // 用户统计数据计算 class UserStatsCalculator { static func calculateWeeklyStats(user: User) -> WeeklyStats { // 计算本周统计数据 } static func calculateMoodTrend(records: [EmotionRecord]) -> EmotionTrend { // 分析情绪趋势 } static func updateAchievementProgress(user: User) -> [Achievement] { // 更新成就进度 } } ``` --- ## 5. 公共组件和服务 ### 5.1 已实现组件 ✅ #### 管理服务 - [x] **NavigationManager** - 导航状态管理 - [x] **MockDataManager** - 模拟数据管理 - [x] **ThemeManager** - 主题管理 #### UI组件 - [x] **LoadingComponents** - 加载组件 - [x] **AnimationComponents** - 动画组件 - [x] **ThemeAdapter** - 主题适配器 ### 5.2 待实现组件 ❌ #### 核心服务 - [ ] **CoreDataManager** - 数据持久化 - [ ] **AIService** - AI服务集成 - [ ] **LocationService** - 位置服务 - [ ] **NotificationService** - 通知服务 - [ ] **ImageService** - 图片处理服务 #### 通用UI组件 - [ ] **EmotionPicker** - 情绪选择器 - [ ] **RadarChart** - 雷达图组件 - [ ] **ProgressRing** - 进度环组件 - [ ] **TagView** - 标签组件 - [ ] **PhotoPicker** - 图片选择器 - [ ] **VoiceRecorder** - 语音录制器 #### 工具类 - [ ] **DateFormatter** - 日期格式化 - [ ] **ValidationHelper** - 数据验证 - [ ] **NetworkMonitor** - 网络状态监控 - [ ] **PermissionManager** - 权限管理 --- ## 6. 缺失功能清单 ### 6.1 高优先级 (P0) - [ ] 聊天记录页面 (ChatHistoryView) - [ ] 全屏对话页面 (FullScreenChatView) - [ ] 成长课题主页完善 - [ ] 地图功能集成 - [ ] 用户资料页面 ### 6.2 中优先级 (P1) - [ ] 设置页面 (SettingsView) - [ ] 课题详情页面 - [ ] 社区动态页面 - [ ] 成就系统页面 - [ ] AI服务集成 ### 6.3 低优先级 (P2) - [ ] 语音识别功能 - [ ] 高级数据可视化 - [ ] 社交分享功能 - [ ] 会员中心 - [ ] 通知系统 ### 6.4 技术债务 - [ ] Core Data集成 - [ ] 真实API集成 - [ ] 性能优化 - [ ] 错误处理完善 - [ ] 单元测试覆盖 --- *本文档基于当前代码状态分析,将随开发进度更新*