AutoRpa/rpa_rebate/现行模式.md

81 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 返利班现行模式(给审计)
写代码以 `返利流程.md` 为准。班次入口 `run_batch.py`。节点名 `REBATE_IMPORT` 仍叫 IMPORT,页面走细单新增,**不做 Excel**。
## 班次
1. 领表 4 `action_code=1 AND contract_status=1 AND process_status=0`(改成 3,同一合同号整组);领表 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`、`process_status=1`;送审成功每 `oms_id` 插 `action_code=2`、`agreement_status=1`,带协议总单ID / 协议细单ID;`push_status=0`。人名固定「系统管理员」。搜不到表 4 `process_status` 改回 0。
## 修改(相对旧稿 / Excel 方案)
| 项 | 旧 | 现 |
| --- | --- | --- |
| 细单路径 | Agents / README 写「下模板 → 填 Excel → 上传」 | 页面「新增 + 货品ID搜」。`run_import_flow` 调 `add_detail_lines_by_goods_id` |
| `返利流程(1).md` | 已知/未知草稿,Excel 与页面双轨 | 废稿,指向 `返利流程.md` |
| 计划员 | 映射表 / 口径:订单中心 `planner_name` | 选择框「廖建琦」,后期改回 |
| 联系人 | 映射表无 | 「苏文辉」。货源弹层按此人过滤 |
| 采购结算方式 | 映射表总单默认「否」、细单代码 `3` | 总单、细单都精确点「电汇」 |
| 承付参数 | 「不要填 25 / 以销售定结」 | 总单、细单都填 **25** |
| 关税税率 | 映射表 `0.13` | 不填 |
| 税率 | 映射表固定 `0.13` | 表 3 `purchase_tax_rate`,空则 `0.13` |
| 细单日期 | 映射表开始当天、结束年底 | 先用页面默认,报错再看 |
| 总单保存 | 先卡片确认再保存 | 先总单工具栏保存(卡仍在编辑),再确认 |
| 细单确认 | 容易点到总单「确认」 | 只点货品卡片「确认 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_import.py` 仍有 Excel 下模板 / 填表 / 上传函数(`write_canonical_template`、`download_detail_template` 等)。`run_import_flow` 不调用它们。不要按这些函数写新逻辑。对外仍从 `rebate_flow_steps` import。
## 下一会话(未做)
1. **货源细单ID**:三个点搜表 3 `goods_source_id`。弹层只出总单联系人(现苏文辉)名下货源,不是全局搜号。空 → 整组停、`KIND_FAIL`、不送审。不要按行一条成功两条失败。
2. **计划员**:现阶段「廖建琦」;改回表 3 `planner_name`。
口 2 / 口 4 HTTP、M5、药帮忙支付不在本包,见根 `README.md`「本期未做」。