# 返利班现行模式(给审计) 写代码以 `返利流程.md` 为准。班次入口 `run_batch.py`。节点名 `REBATE_IMPORT` 仍叫 IMPORT,页面走细单新增,**不做 Excel**。 ## 班次 1. 领表 4 `action_code=1 AND contract_status=1`(盖「查号中」);领表 3 只录协议行 `process_status` 0→3 2. 按合同号查返利中心,表里出现该号才算搜到 3. 勾已有总单(审批通过后已有一条,不要新增总单) 4. 补总单必填 → **卡片仍在编辑时**点总单工具栏保存 → 卡片确认 5. 细单:货品「新增」→ 货品编码三个点按表 3 `goods_id` 搜 → 货品卡片「确认 Ctrl + Enter」落到表 → 全部确认完再点货品工具栏保存 6. 总单工具栏送审;成功才写表 4 7. 同一合同一组一个结果 货品行:`load_contract_goods` 先按 `contract_no`,空则用表 4 该合同的 `oms_id` 对表 3。 ## 字段(现行) | 位置 | 字段 | 值 | | --- | --- | --- | | 总单 | 供应商编码 | 表 3 `supplier_mdm_code`,三个点搜 | | 总单 | 计划员 | 廖建琦(选择框,不要选 ID) | | 总单 | 联系人 | 苏文辉 | | 总单 | 返利合约 | 否 | | 总单 | 采购结算方式 | 电汇(不要点电汇—非直联) | | 总单 | 承付模式 | 下月N号结 | | 总单 | 承付参数 | **25**(数字框键盘输入) | | 总单 | 协议开始/结束 | 当天 | | 细单 | 货品 | 表 3 `goods_id` | | 细单 | 数量 / 含税单价 | 表 3 `qty` / `unit_price` | | 细单 | 无税单价 | `含税 / (1+税率)` | | 细单 | 承付模式 | 下月N号结 | | 细单 | 承付参数 | **25** | | 细单 | 采购结算方式 | 电汇 | | 细单 | 备注 | `oms_id` | | 细单 | 特定补偿 / 进货补偿 | 0 | | 细单 | 货源细单ID | 本期不填(下一会话:按总单联系人对货源,搜不到整组报错) | 落表:起草行 `contract_status=2`;送审成功每 `oms_id` 插 `action_code=2`、`agreement_status=1`,带协议总单ID / 协议细单ID;`push_status=0`。搜不到戳改回合同班。 ## 修改(相对旧稿 / Excel 方案) | 项 | 旧 | 现 | | --- | --- | --- | | 细单路径 | Agents / README 写「下模板 → 填 Excel → 上传」 | 页面「新增 + 货品ID搜」。`run_import_flow` 调 `add_detail_lines_by_goods_id` | | `返利流程(1).md` | 已知/未知草稿,Excel 与页面双轨 | 废稿,指向 `返利流程.md` | | 承付参数 | 「不要填 25 / 以销售定结」 | 总单、细单都填 **25** | | 总单保存 | 先卡片确认再保存 | 先总单工具栏保存(卡仍在编辑),再确认 | | 细单确认 | 容易点到总单「确认」 | 只点货品卡片「确认 Ctrl + Enter」,确认后核对货品表有该 `goods_id` | | 计划员弹层 | 适配器看见「货源选择」就关 | 计划员三点打开的货源层要按住再选廖建琦 | | 货品来源 | 只按表 3 `contract_no` | `contract_no` 空时用表 4 `oms_id` 对表 3 | | 落表 | (曾按行拆成功/失败,已撤回) | 同一合同一组一个结果 | ## 增加 | 项 | 落点 | | --- | --- | | 班次入口 | `run_batch.py`:查号 → 总单 → 细单新增 → 送审 → `save_group` | | 总单数字框键盘填 25 | `_fill_pay_param` | | 细单键盘填 25 | `_fill_last_detail_qty_price` / `_type_detail_field` | | 货品表核对 | `_goods_table_rows`、`_wait_goods_row` | | 原生点击 | 计划员附加按钮、总单/货品工具栏保存、卡片确认 | | 现行登记 | 本文件 | ## 代码里还留着、班次不走 `rebate_flow_steps.py` 仍有 Excel 下模板 / 填表 / 上传函数(`write_canonical_template`、`download_detail_template` 等)。`run_import_flow` 不调用它们。不要按这些函数写新逻辑。 ## 下一会话(未做) 细单「货源细单ID」三个点:用总单联系人对货源。弹层搜不到 → 整组停、写报错返回。不要按行一条成功两条失败。