按已确认方案:合同允许同产品同包装多行(不同单价);段次可多选合同;选品先选产品/包装,多命中则弹拆分量; 装/送独立维护,提供「一键从装货同步到送货」;归档按行录实际量(安排阶段已拆好,不做事后划分)。
特殊情况:同一合同内,同一产品 + 同一包装规格可以有多行,单价不同(如批次/议价差异)。
| 明细行 id | 产品 | 包装规格 | 合同数量 | 单价 | 已安排 | 剩余 | 说明 |
|---|
| 明细行 id | 产品 | 包装规格 | 合同数量 | 单价 | 已安排 | 剩余 | 说明 |
|---|
特殊②③④:段次可选多份合同;先选产品/包装,命中多条明细则弹拆分量;装/送独立,可一键同步。
| 绑定明细 | 合同 | 产品 / 包装 | 单价 | 计划量 |
|---|
尚未添加产品。点「添加产品」演示:选「烧碱 32% / 25kg袋」将命中 3 条明细。
| 绑定明细 | 合同 | 产品 / 包装 | 单价 | 计划量 |
|---|
送货可另选合同明细;本 Demo 默认可与装货选同一批合同。
特殊⑤:不做「事后按比例划分」。安排阶段已拆成多行,归档时每行各自填写实际量;合同已归档量按 contract_product_id 累加。
| 绑定明细 | 合同 | 产品 / 包装 | 单价 | 计划量 | 实际入库量 |
|---|
| 绑定明细 | 合同 | 产品 / 包装 | 单价 | 计划量 | 实际出库量 |
|---|
把客户三点需求与 Demo 操作、数据键对齐,便于评审。
| 特殊情况 | 客户诉求 | Demo 怎么体现 | 实现要点(方案 1) |
|---|---|---|---|
| ① 合同同品同包装多行 | 同产品同包装可多条,因单价可能不同 | 步骤 1:HT-A 两行烧碱/25kg,单价 2100 / 2350 | 去掉包装唯一校验;行主键即计量键 |
| ② 段次多合同 | 一次运输可送两个合同的同品同包装货 | 步骤 2:装货 chips 显示 HT-A + HT-B | 取消 assert_at_most_one_contract |
| ③ 选品拆行 | 安排阶段拆好,归档不再事后划分 | 步骤 2:选烧碱/25kg → 弹窗对 3 条明细填计划量 → 生成 3 行 | 段产品行绑定 contract_product_id |
| ④ 装/送独立 | 送货不强制与装货一一对应 | 步骤 2:送货可单独加品;「从装货同步」覆盖 | 取消默认自动同步;保留手动按钮 |
| ⑤ 归档按行实际量 | 多合同 / 同合同多单价行的已执行按实际划分 | 步骤 3:每行各自填入库/出库实际量;确认后回写各 cp 行 | 聚合键改为 contract_product_id;无事后分摊算法 |
将在当前段已选合同中匹配「产品+包装 ∈ 明细」的所有行(含同合同多单价 + 跨合同)。
| 明细行 | 合同 | 单价 | 剩余可安排 | 本次计划量 |
|---|