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 检查一致性辅助维护。