|
|
@@ -1,7 +1,7 @@
|
|
|
# Story 008.007: 移植订单管理UI(order → @d8d/allin-order-management-ui)
|
|
|
|
|
|
## Status
|
|
|
-Ready for Review - 所有任务已完成,测试已修复。主要问题已解决:
|
|
|
+Ready for Development - 新增考勤打卡功能移植任务。已完成任务状态:
|
|
|
1. ✅ 薪资查询功能:现在调用真实的RPC API(@d8d/allin-salary-management-ui),支持字符串和数字ID格式
|
|
|
2. ✅ 获取已绑定人员功能:重新添加了DisabledPerson关联,订单详情API现在返回残疾人员的详细信息(姓名、性别、残疾类型、联系电话等)
|
|
|
3. ✅ 省市ID问题:测试mock已更新,使用数字ID而不是汉字
|
|
|
@@ -11,6 +11,7 @@ Ready for Review - 所有任务已完成,测试已修复。主要问题已解
|
|
|
7. ⚠️ 跳过测试:6个测试因DOM渲染时序问题标记为跳过(不影响核心功能):
|
|
|
- "应该成功批量添加人员到已存在订单"(旧设计,添加人员流程已改为在OrderDetailModal中)
|
|
|
- 任务12的5个测试(DOM渲染时序问题)
|
|
|
+8. ⚠️ 新增任务:任务14移植考勤打卡功能(出勤表导出)待完成
|
|
|
|
|
|
## Story
|
|
|
**As a** 开发者,
|
|
|
@@ -26,9 +27,15 @@ Ready for Review - 所有任务已完成,测试已修复。主要问题已解
|
|
|
6. 完成API客户端转换:复杂业务API(使用rpcClient + ClientManager模式)
|
|
|
7. 完成状态管理转换:订单工作流状态
|
|
|
8. 完成表单转换:多实体关联表单(包含区域选择)
|
|
|
-9. 配置package.json:复杂依赖管理(包含`@d8d/area-management-ui`)
|
|
|
-10. 编写组件测试:覆盖订单全生命周期(包含区域相关功能测试)
|
|
|
-11. 通过类型检查和基本测试验证
|
|
|
+9. **考勤打卡功能移植**:移植出勤表导出功能
|
|
|
+ - 创建`AttendanceModal`组件,从Ant Design转换为@d8d/shared-ui-components组件
|
|
|
+ - 集成到订单管理UI中,保持原有交互流程
|
|
|
+ - 完成技术栈转换:Modal、DatePicker、Select等组件转换
|
|
|
+ - 保持Excel导出功能(使用xlsx库)
|
|
|
+ - 编写组件测试:`tests/components/AttendanceModal.test.tsx`
|
|
|
+10. 配置package.json:复杂依赖管理(包含`@d8d/area-management-ui`、`xlsx`等)
|
|
|
+11. 编写组件测试:覆盖订单全生命周期(包含区域相关功能测试)
|
|
|
+12. 通过类型检查和基本测试验证
|
|
|
|
|
|
## Tasks / Subtasks
|
|
|
- [x] 任务1:创建订单管理UI包基础结构 (AC: 1, 9)
|
|
|
@@ -308,6 +315,52 @@ Ready for Review - 所有任务已完成,测试已修复。主要问题已解
|
|
|
- 验证入职日期使用当前日期
|
|
|
- 验证成功后清空待添加列表,刷新显示
|
|
|
|
|
|
+- [ ] 任务14:移植考勤打卡功能(出勤表导出)(新增)(AC: 9)
|
|
|
+ - [ ] **问题分析**:原系统中有考勤打卡功能(出勤表导出),位于订单管理模块的`AttendanceModal.tsx`组件中,用于为订单人员生成月度出勤Excel表
|
|
|
+ - [ ] **解决方案**:移植`AttendanceModal`组件,完成技术栈转换并集成到订单管理UI中
|
|
|
+ - [ ] **实现步骤**:
|
|
|
+ 1. **分析源系统考勤打卡组件**:`allin_system-master/client/app/admin/dashboard/order/AttendanceModal.tsx`
|
|
|
+ - **源文件**:`allin_system-master/client/app/admin/dashboard/order/AttendanceModal.tsx`
|
|
|
+ - **查看要点**:出勤表导出逻辑、月份选择、出勤天数选择、Excel生成逻辑、模拟出勤数据算法
|
|
|
+ 2. **创建AttendanceModal组件**:`src/components/AttendanceModal.tsx`
|
|
|
+ - **目标文件**:`allin-packages/order-management-ui/src/components/AttendanceModal.tsx`
|
|
|
+ - **功能**:出勤表导出模态框,支持选择月份和每周出勤天数,生成月度出勤Excel表
|
|
|
+ - **技术栈转换**:
|
|
|
+ - Ant Design Modal → @d8d/shared-ui-components Dialog
|
|
|
+ - Ant Design DatePicker → @d8d/shared-ui-components DatePicker
|
|
|
+ - Ant Design Select → @d8d/shared-ui-components Select
|
|
|
+ - Ant Design Button → @d8d/shared-ui-components Button
|
|
|
+ - **Excel导出功能**:保持使用xlsx库生成Excel文件
|
|
|
+ - **模拟出勤算法**:保持原系统的出勤模拟算法(√标记出勤,空白标记缺勤)
|
|
|
+ 3. **集成到订单管理UI中**:
|
|
|
+ - **集成位置**:在OrderDetailModal中集成AttendanceModal组件
|
|
|
+ - **交互流程**:保持原有交互流程,点击"出勤导出"按钮打开AttendanceModal
|
|
|
+ - **数据传递**:传递订单人员列表和订单名称到AttendanceModal
|
|
|
+ 4. **添加xlsx依赖**:
|
|
|
+ - **依赖配置**:在package.json中添加`xlsx`依赖
|
|
|
+ - **版本选择**:使用与原系统相同或兼容的版本
|
|
|
+ 5. **编写组件测试**:`tests/components/AttendanceModal.test.tsx`
|
|
|
+ - **测试文件**:`allin-packages/order-management-ui/tests/components/AttendanceModal.test.tsx`
|
|
|
+ - **测试场景**:
|
|
|
+ - 验证AttendanceModal正常打开和关闭
|
|
|
+ - 验证月份选择功能
|
|
|
+ - 验证出勤天数选择功能
|
|
|
+ - 验证Excel导出功能(模拟文件下载)
|
|
|
+ - 验证表单验证和错误处理
|
|
|
+ 6. **更新Dev Notes**:在Dev Notes中添加考勤打卡功能的技术要点
|
|
|
+ - [ ] **技术要求**:
|
|
|
+ - 保持与原系统相同的出勤表导出功能
|
|
|
+ - 保持Excel文件格式和内容一致性
|
|
|
+ - 保持模拟出勤数据的算法逻辑
|
|
|
+ - 集成到OrderDetailModal中,保持原有用户体验
|
|
|
+ - 添加xlsx依赖到package.json
|
|
|
+ - [ ] **测试要求**:
|
|
|
+ - 验证AttendanceModal组件正常渲染
|
|
|
+ - 验证月份选择器功能正常
|
|
|
+ - 验证出勤天数选择器功能正常
|
|
|
+ - 验证Excel导出功能正常工作(模拟测试)
|
|
|
+ - 验证组件集成到OrderDetailModal中正常工作
|
|
|
+
|
|
|
## Dev Notes
|
|
|
|
|
|
### 吸取前面故事的经验(基于故事008.006)
|
|
|
@@ -434,6 +487,7 @@ Ready for Review - 所有任务已完成,测试已修复。主要问题已解
|
|
|
- **枚举常量**:硬编码枚举 → 使用`@d8d/allin-enums`包中的枚举
|
|
|
- **订单人员资产管理**:自定义资产表格 → **创建订单人员资产关联组件**,关联订单、残疾人、文件三张表,支持6种资产类型管理
|
|
|
- **人员选择组件复用**:自定义人员选择 → **直接使用故事008.005的`DisabledPersonSelector`组件**,避免重复开发,实现组件复用
|
|
|
+- **考勤打卡功能**:出勤表导出 → **移植AttendanceModal组件**,保持Excel导出功能,集成xlsx库,保持模拟出勤算法
|
|
|
|
|
|
### Testing
|
|
|
|
|
|
@@ -457,6 +511,7 @@ Ready for Review - 所有任务已完成,测试已修复。主要问题已解
|
|
|
## Change Log
|
|
|
| Date | Version | Description | Author |
|
|
|
|------|---------|-------------|--------|
|
|
|
+| 2025-12-08 | 1.7 | 添加任务14移植考勤打卡功能(出勤表导出),更新验收标准 | John (PM) |
|
|
|
| 2025-12-08 | 1.6 | 添加任务12修正订单详情弹窗添加人员流程,与原系统保持一致 | John (PM) |
|
|
|
| 2025-12-08 | 1.5 | 添加任务11实现订单详情弹窗功能,与原系统功能对齐 | John (PM) |
|
|
|
| 2025-12-06 | 1.4 | 添加任务10修复订单创建时的人员绑定差异,确保与原系统功能一致 | John (PM) |
|