Преглед изворни кода

docs(story): 更新故事011.005和011.006文档并集成Navbar

- 故事011.005:数据统计功能 - 更新Navbar集成规范,添加页面层级结构
- 故事011.006:视频与系统管理功能 - 更新Navbar集成规范,添加页面层级结构
- 统一所有用人小程序页面的Navbar集成标准

🤖 Generated with [Claude Code](https://claude.com/claude-code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
yourname пре 4 недеља
родитељ
комит
5937b6131a
2 измењених фајлова са 135 додато и 31 уклоњено
  1. 58 15
      docs/stories/011.005.story.md
  2. 77 16
      docs/stories/011.006.story.md

+ 58 - 15
docs/stories/011.005.story.md

@@ -47,7 +47,15 @@ Draft
   - [ ] 添加图表数据缓存机制
   - [ ] 优化移动端图表显示和交互
   - [ ] 确保页面加载速度符合性能要求
-- [ ] 任务6:编写集成测试
+- [ ] 任务6:集成Navbar导航栏组件(页面层级结构规范)
+  - [ ] 数据统计页:集成Navbar组件,标题"数据统计",隐藏左侧返回按钮(主页面配置)
+    - 导入Navbar组件:`import { Navbar } from '@d8d/mini-shared-ui-components/components/navbar'`
+    - 配置navbar:`title="数据统计"`,`leftIcon=""`,`leftText=""`
+    - 保持YongrenTabBarLayout包裹,`activeTab="statistics"`
+    - 调整ScrollView布局:`px-4 pb-4 pt-0`(移除顶部内边距适配navbar占位)
+  - [ ] 统一页面层级结构:主页面使用YongrenTabBarLayout+Navbar(无返回)
+  - [ ] 验证类型检查:确保所有页面类型检查通过
+- [ ] 任务7:编写集成测试
   - [ ] 编写图表数据加载测试
   - [ ] 测试数据筛选功能
   - [ ] 测试图表交互功能
@@ -57,10 +65,10 @@ Draft
 
 ### 依赖关系
 **依赖故事**:
-- 011.001(基础框架搭建):提供API客户端、路由、基础布局
-- 011.002(认证与首页):提供认证状态管理
-- 011.003(人才管理):统计基于人才数据
-- 011.004(订单管理):统计可能涉及订单数据
+- 011.001(基础框架搭建):提供API客户端、路由、基础布局、企业认证框架
+- 011.002(认证与首页):提供认证状态管理,Navbar组件集成规范
+- 011.003(人才管理):统计基于人才数据,页面层级结构规范
+- 011.004(订单管理):统计可能涉及订单数据,Navbar集成和页面结构规范
 
 ### API规范
 **数据统计API**(史诗012提供):
@@ -137,27 +145,49 @@ Draft
 - 交互反馈(悬停、点击、选中状态)
 
 **UI组件使用**:
+- **基础组件来源**(现在来自独立的UI包):
+  - `YongrenTabBarLayout` - 从`@d8d/yongren-shared-ui/components/YongrenTabBarLayout`导入(底部导航布局组件,主页面必须使用,数据统计标签激活状态)
+  - `Navbar` - 从`@d8d/mini-shared-ui-components/components/navbar`导入(顶部导航栏组件,所有页面必须使用)
+  - `PageContainer` - 从`@d8d/mini-shared-ui-components/components/page-container`导入(页面容器组件)
+- **页面层级结构规范**:
+  - **主页面**(数据统计页):使用`YongrenTabBarLayout` + `Navbar`组合
+    - Navbar配置:`title="数据统计"`,`leftIcon=""`,`leftText=""`(无返回按钮)
+    - ScrollView布局:`px-4 pb-4 pt-0`(移除顶部内边距适配navbar占位)
 - **独立开发小程序UI组件**:基于原型文件独立设计开发数据统计相关UI组件
 - **复用现有基础组件**:复用mini项目中已有的基础UI组件(卡片、筛选器、按钮等),根据原型设计调整样式
 - **注意**:史诗011针对mini小程序,UI组件应独立设计,而非复用管理后台的`@d8d/allin-*`系列UI包
 
 ### 文件位置
-**页面组件位置**:
-- `mini/src/pages/yongren/statistics/` - 数据统计页面
-
-**图表组件位置**:
-- `mini/src/components/charts/` - 图表组件目录
-  - `DisabilityTypeChart.tsx` - 残疾类型分布图表
-  - `GenderDistributionChart.tsx` - 性别分布图表
-  - `AgeDistributionChart.tsx` - 年龄分布图表
-  - `ProvinceDistributionChart.tsx` - 省份分布图表
-  - `ChartFilters.tsx` - 图表筛选组件
+**当前架构(已按mini-ui-packages拆分)**:
+
+**数据统计UI包**:
+- **包名称**:`@d8d/yongren-statistics-ui`(位于`mini-ui-packages/yongren-statistics-ui/`)
+- **主要页面组件**:
+  - `src/pages/Statistics/Statistics.tsx` - 数据统计页面组件
+    - 使用`YongrenTabBarLayout`布局,`activeTab="statistics"`
+    - 集成`Navbar`组件,标题"数据统计",隐藏左侧返回按钮(主页面)
+    - 使用`ScrollView`作为内容容器,布局`px-4 pb-4 pt-0`适配navbar占位
+    - 路由路径:`pages/yongren/statistics`
+- **依赖的UI包**:
+  - **布局组件**:
+    - `@d8d/yongren-shared-ui/components/YongrenTabBarLayout` - 底部导航布局组件(主页面使用)
+    - `@d8d/mini-shared-ui-components/components/navbar` - 顶部导航栏组件(所有页面使用)
+    - `@d8d/mini-shared-ui-components/components/page-container` - 页面容器组件
+  - **业务模块**:
+    - `@d8d/allin-statistics-module` - 数据统计模块类型定义(如存在)
+
+**桥接文件位置**(在mini项目中):
+- `mini/src/pages/yongren/statistics/index.tsx` - 数据统计页面桥接文件
+  - 从`@d8d/yongren-statistics-ui`导入`Statistics`组件
+  - 路由路径:`pages/yongren/statistics`
 
 ### 技术约束
 - **性能优化**:多个图表同时加载需优化请求和渲染性能
 - **数据准确性**:统计口径需明确,与企业业务逻辑一致
 - **移动端适配**:图表在移动端需保持良好的可读性和交互性
 - **数据权限**:统计仅限本企业数据,不能跨企业访问
+- **页面结构**:主页面必须使用YongrenTabBarLayout+Navbar(无返回按钮),遵循统一的页面层级结构规范
+- **布局渲染**:Taro小程序中View容器内的Text组件默认内联显示,需要使用`flex flex-col`强制垂直排列,确保布局符合原型设计
 
 ### 图表技术选型
 **现有技术栈参考**:
@@ -183,14 +213,27 @@ Draft
 4. **集成测试**:
    - 与统计API的集成测试
    - 页面导航和数据流测试
+5. **页面结构测试**:
+   - Navbar组件集成测试(主页面无返回按钮)
+   - 页面层级结构验证(主页面使用YongrenTabBarLayout)
+   - 类型检查验证
 
 ## 变更日志
 | 日期 | 版本 | 描述 | 作者 |
 |------|------|------|------|
 | 2025-12-17 | 1.0 | 初始创建(数据统计故事) | Bob(Scrum Master) |
+| 2025-12-20 | 1.1 | 更新Navbar集成规范,添加页面层级结构,反映mini-ui-packages架构 | Claude Code |
 
 ## 开发代理记录
 *此部分由开发代理在实施过程中填充*
 
+**文档更新记录 (2025-12-20)**:
+- 根据史诗011最新实现,更新Navbar组件集成规范
+- 添加任务6:集成Navbar导航栏组件(页面层级结构规范)
+- 更新UI组件使用规范,反映mini-ui-packages拆分后的架构
+- 更新技术约束,添加页面结构要求和布局渲染约束
+- 更新测试要求,添加页面结构测试场景
+- 统一所有用人小程序页面的Navbar集成标准
+
 ## QA结果
 *来自QA代理对已完成故事实施的QA审查结果*

+ 77 - 16
docs/stories/011.006.story.md

@@ -47,7 +47,19 @@ Draft
   - [ ] 实现降级方案(如本地配置、默认值)
   - [ ] 添加功能不可用的友好提示
   - [ ] 标记延期功能为"后期优化"状态
-- [ ] 任务6:编写集成测试
+- [ ] 任务6:集成Navbar导航栏组件(页面层级结构规范)
+  - [ ] 视频管理页:集成Navbar组件,标题"视频管理",隐藏左侧返回按钮(主页面配置)
+    - 导入Navbar组件:`import { Navbar } from '@d8d/mini-shared-ui-components/components/navbar'`
+    - 配置navbar:`title="视频管理"`,`leftIcon=""`,`leftText=""`
+    - 保持YongrenTabBarLayout包裹,`activeTab="settings"`(视频管理在企业设置页面内)
+    - 调整ScrollView布局:`px-4 pb-4 pt-0`(移除顶部内边距适配navbar占位)
+  - [ ] 企业设置页:集成Navbar组件,标题"企业设置",隐藏左侧返回按钮(主页面配置)
+    - 导入Navbar组件,配置:`title="企业设置"`,`leftIcon=""`,`leftText=""`
+    - 保持YongrenTabBarLayout包裹,`activeTab="settings"`
+    - 调整ScrollView布局:`px-4 pb-4 pt-0`(移除顶部内边距适配navbar占位)
+  - [ ] 统一页面层级结构:主页面使用YongrenTabBarLayout+Navbar(无返回)
+  - [ ] 验证类型检查:确保所有页面类型检查通过
+- [ ] 任务7:编写集成测试
   - [ ] 编写视频管理功能测试
   - [ ] 测试批量下载功能
   - [ ] 测试企业信息展示功能
@@ -57,9 +69,9 @@ Draft
 
 ### 依赖关系
 **依赖故事**:
-- 011.001(基础框架搭建):提供API客户端、路由、基础布局
-- 011.002(认证与首页):提供认证状态管理
-- 011.004(订单管理):视频与订单关联,可能需要订单筛选
+- 011.001(基础框架搭建):提供API客户端、路由、基础布局、企业认证框架
+- 011.002(认证与首页):提供认证状态管理,Navbar组件集成规范
+- 011.004(订单管理):视频与订单关联,可能需要订单筛选,Navbar集成和页面结构规范
 
 **API依赖状态**:
 - ✅ 视频管理API:史诗012已提供 [来源:docs/prd/epic-011-employer-mini-program-implementation.md#史诗012完成状态更新]
@@ -176,23 +188,57 @@ Draft
   - 点击时显示提示:"该功能正在开发中,预计下一版本上线"
 
 **UI组件使用**:
+- **基础组件来源**(现在来自独立的UI包):
+  - `YongrenTabBarLayout` - 从`@d8d/yongren-shared-ui/components/YongrenTabBarLayout`导入(底部导航布局组件,主页面必须使用,设置标签激活状态)
+  - `Navbar` - 从`@d8d/mini-shared-ui-components/components/navbar`导入(顶部导航栏组件,所有页面必须使用)
+  - `PageContainer` - 从`@d8d/mini-shared-ui-components/components/page-container`导入(页面容器组件)
+- **页面层级结构规范**:
+  - **主页面**(视频管理页、企业设置页):使用`YongrenTabBarLayout` + `Navbar`组合
+    - Navbar配置:`title="视频管理"`或`title="企业设置"`,`leftIcon=""`,`leftText=""`(无返回按钮)
+    - ScrollView布局:`px-4 pb-4 pt-0`(移除顶部内边距适配navbar占位)
 - **独立开发小程序UI组件**:基于原型文件独立设计开发视频管理和企业设置相关UI组件
 - **复用现有基础组件**:复用mini项目中已有的基础UI组件(卡片、列表、表单等),根据原型设计调整样式
 - **注意**:史诗011针对mini小程序,UI组件应独立设计,而非复用管理后台的`@d8d/allin-*`系列UI包
 
 ### 文件位置
-**页面组件位置**:
-- `mini/src/pages/yongren/video/` - 视频管理页面
-- `mini/src/pages/yongren/settings/` - 企业设置页面
-
-**业务组件位置**:
-- `mini/src/components/video/` - 视频相关组件
-  - `VideoGrid.tsx` - 视频网格组件
-  - `VideoPlayer.tsx` - 视频播放器组件
-  - `VideoBatchToolbar.tsx` - 批量操作工具栏
-- `mini/src/components/settings/` - 设置相关组件
-  - `CompanyInfoCard.tsx` - 企业信息卡片
-  - `FeaturePlaceholder.tsx` - 功能占位组件
+**当前架构(已按mini-ui-packages拆分)**:
+
+**设置UI包**:
+- **包名称**:`@d8d/yongren-settings-ui`(位于`mini-ui-packages/yongren-settings-ui/`)
+- **主要页面组件**:
+  - `src/pages/Settings/Settings.tsx` - 企业设置页面组件
+    - 使用`YongrenTabBarLayout`布局,`activeTab="settings"`
+    - 集成`Navbar`组件,标题"企业设置",隐藏左侧返回按钮(主页面)
+    - 使用`ScrollView`作为内容容器,布局`px-4 pb-4 pt-0`适配navbar占位
+    - 路由路径:`pages/yongren/settings`
+- **依赖的UI包**:
+  - **布局组件**:
+    - `@d8d/yongren-shared-ui/components/YongrenTabBarLayout` - 底部导航布局组件(主页面使用)
+    - `@d8d/mini-shared-ui-components/components/navbar` - 顶部导航栏组件(所有页面使用)
+    - `@d8d/mini-shared-ui-components/components/page-container` - 页面容器组件
+  - **业务模块**:
+    - `@d8d/allin-company-module` - 企业管理模块类型定义
+
+**视频管理UI包**(可能需要新建):
+- **包名称**:`@d8d/yongren-video-management-ui`(建议位置:`mini-ui-packages/yongren-video-management-ui/`)
+- **主要页面组件**:
+  - `src/pages/VideoManagement/VideoManagement.tsx` - 视频管理页面组件
+    - 使用`YongrenTabBarLayout`布局,`activeTab="settings"`(视频管理在企业设置页面内)
+    - 集成`Navbar`组件,标题"视频管理",隐藏左侧返回按钮(主页面)
+    - 使用`ScrollView`作为内容容器,布局`px-4 pb-4 pt-0`适配navbar占位
+    - 路由路径:`pages/yongren/video`
+- **依赖的UI包**:
+  - **布局组件**:同上设置UI包
+  - **业务模块**:
+    - `@d8d/allin-video-module` - 视频管理模块类型定义(如存在)
+
+**桥接文件位置**(在mini项目中):
+- `mini/src/pages/yongren/settings/index.tsx` - 企业设置页面桥接文件
+  - 从`@d8d/yongren-settings-ui`导入`Settings`组件
+  - 路由路径:`pages/yongren/settings`
+- `mini/src/pages/yongren/video/index.tsx` - 视频管理页面桥接文件
+  - 从`@d8d/yongren-video-management-ui`导入`VideoManagement`组件(或从设置UI包导入)
+  - 路由路径:`pages/yongren/video`
 
 ### 数据模型
 基于史诗012扩展的数据库schema:
@@ -206,6 +252,8 @@ Draft
 - **权限控制**:视频访问权限验证(仅关联企业可访问)
 - **API延期**:系统设置功能需优雅降级处理
 - **移动端适配**:视频播放在移动端的用户体验
+- **页面结构**:主页面必须使用YongrenTabBarLayout+Navbar(无返回按钮),遵循统一的页面层级结构规范
+- **布局渲染**:Taro小程序中View容器内的Text组件默认内联显示,需要使用`flex flex-col`强制垂直排列,确保布局符合原型设计
 
 ### 延期功能处理
 **受影响的系统设置功能**:
@@ -238,14 +286,27 @@ Draft
 4. **性能测试**:
    - 大视频文件加载性能测试
    - 批量操作性能测试
+5. **页面结构测试**:
+   - Navbar组件集成测试(主页面无返回按钮)
+   - 页面层级结构验证(主页面使用YongrenTabBarLayout)
+   - 类型检查验证
 
 ## 变更日志
 | 日期 | 版本 | 描述 | 作者 |
 |------|------|------|------|
 | 2025-12-17 | 1.0 | 初始创建(视频与系统管理故事) | Bob(Scrum Master) |
+| 2025-12-20 | 1.1 | 更新Navbar集成规范,添加页面层级结构,反映mini-ui-packages架构 | Claude Code |
 
 ## 开发代理记录
 *此部分由开发代理在实施过程中填充*
 
+**文档更新记录 (2025-12-20)**:
+- 根据史诗011最新实现,更新Navbar组件集成规范
+- 添加任务6:集成Navbar导航栏组件(页面层级结构规范)
+- 更新UI组件使用规范,反映mini-ui-packages拆分后的架构
+- 更新技术约束,添加页面结构要求和布局渲染约束
+- 更新测试要求,添加页面结构测试场景
+- 统一所有用人小程序页面的Navbar集成标准
+
 ## QA结果
 *来自QA代理对已完成故事实施的QA审查结果*