# 订单导入功能模块 - FTP 集成功能 - 实现计划

## [x] 任务 1：修改前端订单导入表单，添加面单文件选择功能
- **优先级**：P0
- **依赖**：无
- **描述**：
  - 在订单导入标签页中添加面单文件选择控件
  - 允许用户选择多个面单文件
  - 保持界面简洁，不添加额外的目录输入字段
- **验收标准**：AC-1, AC-3
- **测试要求**：
  - `programmatic` TR-1.1: 表单能够正确选择面单文件
  - `human-judgment` TR-1.2: 界面简洁，操作流程顺畅
- **备注**：使用现有的文件选择控件样式，保持与现有界面的一致性

## [x] 任务 2：修改前端订单导入逻辑，整合 FTP 上传功能
- **优先级**：P0
- **依赖**：任务 1
- **描述**：
  - 修改 `importOrders` 函数，在导入订单后自动上传面单文件
  - 使用预设的上传目录路径，无需用户输入
  - 实现上传进度的显示
- **验收标准**：AC-1, AC-3, AC-4
- **测试要求**：
  - `programmatic` TR-2.1: 订单导入后自动上传面单文件
  - `programmatic` TR-2.2: 上传过程显示进度
  - `human-judgment` TR-2.3: 上传状态反馈清晰
- **备注**：使用现有的 FTP 上传 API 端点，保持与现有上传功能的一致性

## [x] 任务 3：修改前端订单导入逻辑，整合 FTP 上传检查功能
- **优先级**：P0
- **依赖**：任务 2
- **描述**：
  - 修改 `importOrders` 函数，在文件上传完成后自动检查 FTP 上传状态
  - 在导入结果中显示上传和检查的状态
- **验收标准**：AC-2, AC-4
- **测试要求**：
  - `programmatic` TR-3.1: 文件上传完成后自动检查 FTP 状态
  - `human-judgment` TR-3.2: 检查结果在导入结果中清晰显示
- **备注**：使用现有的 FTP 检查 API 端点，保持与现有检查功能的一致性

## [x] 任务 4：修改后端订单导入端点，支持面单文件上传
- **优先级**：P0
- **依赖**：无
- **描述**：
  - 修改 `OrderImport` 端点，支持接收面单文件
  - 实现文件上传到 FTP 服务器的逻辑
  - 使用预设的上传目录路径
- **验收标准**：AC-1, AC-3
- **测试要求**：
  - `programmatic` TR-4.1: 端点能够接收并处理面单文件
  - `programmatic` TR-4.2: 文件正确上传到预设的 FTP 目录
- **备注**：复用现有的 `FtpUploadService` 来处理文件上传

## [x] 任务 5：修改后端订单导入端点，支持 FTP 上传检查
- **优先级**：P0
- **依赖**：任务 4
- **描述**：
  - 修改 `OrderImport` 端点，在文件上传完成后检查 FTP 上传状态
  - 在响应中包含上传和检查的状态信息
- **验收标准**：AC-2, AC-4
- **测试要求**：
  - `programmatic` TR-5.1: 端点能够检查文件在 FTP 服务器上的存在性
  - `programmatic` TR-5.2: 响应中包含完整的上传和检查状态
- **备注**：复用现有的 `FtpUploadService.CheckFilesExistsAsync` 方法

## [x] 任务 6：测试整合后的订单导入功能
- **优先级**：P1
- **依赖**：任务 3, 任务 5
- **描述**：
  - 测试订单导入、面单文件上传和 FTP 上传检查的完整流程
  - 验证所有功能正常工作
  - 验证错误处理和边界情况
- **验收标准**：AC-1, AC-2, AC-3, AC-4
- **测试要求**：
  - `programmatic` TR-6.1: 完整流程测试通过
  - `human-judgment` TR-6.2: 用户体验流畅，反馈清晰
- **备注**：测试不同的文件类型和大小，确保系统能够正确处理