# 04b2 校正队列流程 > 状态:✅ 已实现 ## 1. 操作入口 | 方式 | 入口 | |------|------| | GUI | 导航栏「校正队列」→ `CorrectionQueueView` | 校正队列用于隔离导入时校验失败或需人工干预的销售计划记录。 ## 2. 涉及配置 | 配置文件 | 说明 | |----------|------| | `config/quarantine.yaml` | 隔离规则、放行条件 | ## 3. 涉及代码文件 | 层 | 文件 | 职责 | |----|------|------| | View | `views/correction_queue_view.py` | 队列视图 | | View | `views/correction_flag_query_view.py` | 隔离标记查询 | | Controller | `controllers/correction_queue_controller.py` | 编排 | | Service | `services/correction_queue_service.py` | 入队/放行/删除逻辑 | | Model | `models/quarantine_sale_plan.py` | 隔离队列表 | ## 4. 逐步流程 ### 4.1 入队(自动) 导入流程中,`ImportGateService` 检测到校验失败的记录时,调用 `CorrectionQueueService` 将记录写入 `quarantine_sale_plan` 表,并标记隔离原因。 ### 4.2 查看队列 1. 导航「校正队列」 2. 表格展示所有隔离记录,含原始字段 + 隔离原因 3. 支持按原因/日期/客户筛选 ### 4.3 处理记录(右键菜单 / 工具栏) | 操作 | action | 方法 | 说明 | |------|--------|------|------| | 编辑并放行 | `edit_and_release` | `on_edit_and_release_quarantine` | 弹窗编辑字段后放行回主表 | | 直接放行 | `release` | `on_release_quarantine` | 不修改直接放行 | | 删除 | `delete` | `on_delete_quarantine` | **危险操作**(红色按钮),永久删除 | | 刷新 | `refresh` | `refresh` | 重新加载队列 | ### 4.4 放行后 记录从 `quarantine_sale_plan` 表移回 `sale_plan` 表,可在查询页正常查看。 ## 5. action 派发 校正队列的 action 通过 `actions/registry.py` 注册(category="correction"),统一经 `dispatch(view, action_name, item)` 派发,item 为右键菜单项的上下文 dict。 ## 6. CLI 支持 校正队列目前主要通过 GUI 操作;CLI 无直接命令,但可通过 `certflow clean-duplicates` 清理重复记录、`certflow check-consistency` 检查一致性辅助维护。