Files
happy-life-star/功能模块详细梳理.md
T

8.8 KiB
Raw Blame History

情绪博物馆功能模块详细梳理

文档版本: v1.0
创建时间: 2025-07-12
基于: 现有代码分析和需求文档


📋 目录


1. 记录页面 (RecordView)

1.1 已实现功能

主界面组件

  • 顶部导航栏

    • 左上角:聊天记录入口按钮
    • 中间:页面标题
    • 右上角:设置按钮
  • 情绪日历组件

    • 单行日历显示
    • 日期选择功能
    • 基础情绪标记
  • AI助手头像区域

    • 静态头像显示
    • 欢迎文案
    • 基础动画效果
  • 聊天区域

    • 消息列表显示
    • 消息气泡样式
    • 滚动到底部功能
  • 输入区域

    • 文本输入框
    • 发送按钮
    • 语音模式切换按钮
    • 图片添加按钮

状态管理

  • 加载状态管理
  • 骨架屏显示
  • 错误状态处理
  • 刷新功能

1.2 待实现功能

核心功能

  • 聊天记录入口页面 (ChatHistoryView)

    • 对话列表展示
    • 搜索和筛选功能
    • 对话摘要显示
    • 删除和管理功能
  • 全屏对话页面 (FullScreenChatView)

    • 全屏聊天界面
    • 语音/文字模式切换
    • 消息发送状态
    • 对话收起功能
  • 设置页面 (SettingsView)

    • 主题设置
    • 音效设置
    • 隐私设置
    • 关于页面

高级功能

  • 语音识别功能

    • 语音转文字
    • 语音消息录制
    • 语音播放控制
  • AI对话增强

    • 真实AI服务集成
    • 情绪分析反馈
    • 智能回复建议
  • 情绪日历增强

    • 日历展开/收起
    • 情绪趋势图表
    • 历史回顾功能

1.3 数据流设计

graph TD
    A[用户输入] --> B[NavigationManager]
    B --> C[MockDataManager]
    C --> D[AI服务]
    D --> E[情绪分析]
    E --> F[数据存储]
    F --> G[UI更新]

2. 治愈页面 (GrowthView)

2.1 已实现功能

数据模型

  • GrowthTopic模型

    • 课题基本信息
    • 进度追踪
    • 分类系统
    • 难度等级
  • TopicInteraction模型

    • 互动类型定义
    • 完成状态追踪
    • 评分系统
  • Reward模型

    • 奖励类型
    • 稀有度系统
    • 积分机制

基础界面

  • 页面框架结构
  • 主题适配
  • 加载状态

2.2 待实现功能

主界面组件

  • 成长概览卡片

    • 个人成长数据展示
    • 本周进展摘要
    • 成长轨迹可视化
  • 五维雷达图

    • 自我感知维度
    • 情绪韧性维度
    • 行动力维度
    • 共情力维度
    • 生活热度维度
  • 课题分类标签

    • 分类筛选功能
    • 进度指示器
    • 解锁状态显示
  • 课题列表

    • 课题卡片展示
    • 进度条显示
    • 快速操作按钮

详情页面

  • 课题详情页 (TopicDetailView)

    • 课题完整信息
    • 学习路径展示
    • 相关资源链接
    • 进度统计
  • 课题互动页 (TopicInteractionView)

    • AI对话互动
    • 知识文章阅读
    • 练习活动
    • 反思日记

子功能页面

  • TopicChatView - AI对话
  • TopicArticleView - 文章阅读
  • TopicExerciseView - 练习活动
  • TopicReflectionView - 反思日记

2.3 成长数据算法

// 成长数据计算逻辑
class GrowthCalculator {
    static func calculateGrowthStats(from interactions: [TopicInteraction]) -> GrowthStats {
        // 基于互动数据计算五维成长数据
    }
    
    static func updateProgressBasedOnActivity(topic: GrowthTopic, activity: TopicInteraction) -> Float {
        // 根据活动类型和质量更新进度
    }
}

3. 探索页面 (ExploreView)

3.1 已实现功能

数据模型

  • LocationPin模型

    • 地理坐标
    • 地点信息
    • 情绪标签
    • 社区数据
  • CommunityPost模型

    • 帖子内容
    • 图片支持
    • 点赞评论
    • 分类标签

基础界面

  • 页面框架
  • 主题适配

3.2 待实现功能

地图功能

  • 地图SDK集成

    • 高德地图集成
    • 地图显示和控制
    • 定位服务
    • 地点标记
  • 地点管理

    • 地点详情页 (LocationDetailView)
    • 添加地点页 (AddLocationView)
    • 地点分类筛选
    • 收藏和访问记录

社区功能

  • 社区动态页 (CommunityFeedView)

    • 帖子列表展示
    • 图文混排
    • 无限滚动加载
    • 刷新机制
  • 帖子详情页 (PostDetailView)

    • 完整帖子内容
    • 评论区域
    • 点赞分享功能
    • 相关推荐
  • 发布功能

    • 图片选择和上传
    • 文字编辑
    • 地点关联
    • 标签添加

视图切换

  • 地图/社区模式切换
    • 平滑过渡动画
    • 状态保持
    • 数据同步

3.3 地图服务架构

// 地图服务管理
class MapService: ObservableObject {
    @Published var currentLocation: CLLocationCoordinate2D?
    @Published var nearbyLocations: [LocationPin] = []
    
    func searchNearbyPlaces(radius: Double) async {
        // 搜索周边地点
    }
    
    func addCustomLocation(_ location: LocationPin) {
        // 添加自定义地点
    }
}

4. 个人页面 (InsightView)

4.1 已实现功能

数据模型

  • User模型

    • 用户基本信息
    • 成长统计数据
    • 会员等级
  • Achievement模型

    • 成就系统
    • 进度追踪
    • 分类管理
  • UserStats模型

    • 统计数据
    • 活跃度指标

基础界面

  • 页面框架(当前为UniverseView
  • 主题适配

4.2 待实现功能

主界面组件

  • 用户资料卡片

    • 头像和基本信息
    • 会员等级显示
    • 注册天数统计
  • 本周数据统计

    • 心情指数
    • 对话次数
    • 成长轨迹
    • 活跃度图表
  • 成就展示区域

    • 最新成就
    • 进度展示
    • 快速查看
  • 快捷功能区域

    • 设置入口
    • 邀请好友
    • 反馈建议
    • 帮助中心

详情页面

  • 用户资料页 (UserProfileView)

    • 个人信息编辑
    • 头像上传
    • 隐私设置
    • 账户管理
  • 成就页面 (AchievementsView)

    • 成就分类展示
    • 进度详情
    • 解锁条件
    • 奖励查看
  • 会员中心 (MemberCenterView)

    • 会员权益
    • 升级选项
    • 使用统计
    • 特权功能

4.3 统计数据计算

// 用户统计数据计算
class UserStatsCalculator {
    static func calculateWeeklyStats(user: User) -> WeeklyStats {
        // 计算本周统计数据
    }
    
    static func calculateMoodTrend(records: [EmotionRecord]) -> EmotionTrend {
        // 分析情绪趋势
    }
    
    static func updateAchievementProgress(user: User) -> [Achievement] {
        // 更新成就进度
    }
}

5. 公共组件和服务

5.1 已实现组件

管理服务

  • NavigationManager - 导航状态管理
  • MockDataManager - 模拟数据管理
  • ThemeManager - 主题管理

UI组件

  • LoadingComponents - 加载组件
  • AnimationComponents - 动画组件
  • 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集成
  • 性能优化
  • 错误处理完善
  • 单元测试覆盖

本文档基于当前代码状态分析,将随开发进度更新