# ERP系统与MOM系统数据库表映射对照表 > 版本: 1.2.0 > 创建日期: 2026-01-26 > 更新日期: 2026-02-07 > 说明: 本文档定义ERP系统与MOM系统之间的数据库表结构映射关系,为数据同步和系统集成提供参考。 > **关联文档**: [MOM系统数据升级方案-销售采购生产计划](mom系统数据升级方案-销售采购生产计划.md)(MOM 升级后新增 erp_sl/erp_po/erp_mp 镜像表,本文档已按升级后结构梳理) --- ## 目录 1. [概述](#1-概述) 2. [表级映射关系](#2-表级映射关系) 3. [基础数据模块字段映射](#3-基础数据模块字段映射) 4. [销售管理模块字段映射](#4-销售管理模块字段映射) 5. [采购管理模块字段映射](#5-采购管理模块字段映射) 6. [仓库管理模块字段映射](#6-仓库管理模块字段映射) 7. [生产计划模块字段映射](#7-生产计划模块字段映射) 8. [数据同步规则](#8-数据同步规则) 9. [附录](#9-附录) --- ## 1. 概述 ### 1.1 系统说明 | 系统 | 说明 | 表前缀 | |------|------|--------| | ERP系统 | 企业资源计划系统,管理销售、采购、生产计划等业务 | erp_ | | MOM系统 | 制造运营管理系统,管理车间生产执行、物料追溯等 | md_, wm_, pro_ 等 | ### 1.2 映射原则 1. **表名映射**: ERP表名通常以 `erp_模块_业务` 命名;MOM 侧分为两类:**镜像表**(MOM 升级后新建的 `erp_sl_`/`erp_po_`/`erp_mp_` 表,与 ERP 同结构、同主键)与 **业务表**(MOM 原生 `pro_`/`wm_`/`md_` 等) 2. **MOM 升级后(参见《MOM系统数据升级方案-销售采购生产计划》)**: 销售、采购、生产计划模块在 MOM 中新增 **ERP 数据镜像表**(erp_sl_order、erp_po_order、erp_mp_plan、erp_mp_mbom 等),ERP 数据先 1:1 同步到 MOM 的 erp_* 表,再按业务需要写入 pro_workorder、wm_arrival_notice 等业务表 3. **字段命名**: 两系统均采用下划线命名法;**镜像表** 与 ERP 字段名一致,**业务表** 可能存在字段名差异(见各节字段映射) 4. **数据同步方向**: 主数据与计划层数据从 ERP 同步到 MOM(含镜像表与业务表),生产执行数据从 MOM 反馈到 ERP 5. **租户隔离**: 两系统均支持多租户,通过 `tenant_id` 字段隔离 ### 1.3 模块对照 | 模块 | ERP表前缀 | MOM表前缀 | 说明 | |------|-----------|-----------|------| | 基础数据-物料 | erp_md_ | md_ | 物料、BOM、单位等 | | 基础数据-客户 | erp_sl_client | md_client | 客户档案 | | 基础数据-供应商 | erp_po_supplier | md_vendor | 供应商档案 | | 仓库管理 | erp_wm_ | wm_ | 仓库、库存等 | | 销售管理 | erp_sl_ | - | 销售订单、发货等 | | 采购管理 | erp_po_ | - | 采购订单、到货等 | | 生产计划 | erp_mp_ | pro_ | 生产计划、工单等 | --- ## 2. 表级映射关系 ### 2.1 基础数据模块 | 序号 | ERP表名 | MOM表名 | 中文名 | 同步方向 | 说明 | |------|---------|---------|--------|----------|------| | 1 | erp_md_item_type | md_item_type | 物料分类表 | ERP → MOM | 主数据同步 | | 2 | erp_md_item | md_item | 物料档案表 | ERP → MOM | 主数据同步 | | 3 | erp_md_unit | md_unit_measure | 计量单位表 | ERP → MOM | 主数据同步 | | 4 | erp_md_bom | md_bom | BOM表头 | ERP → MOM | 新增独立表 | | 5 | erp_md_bom_line | md_product_bom | BOM明细表 | ERP → MOM | 通过bom_id关联 | | 6 | erp_sl_client | md_client | 客户档案表 | ERP → MOM | 字段已合并 | | 7 | erp_po_supplier | md_vendor | 供应商档案表 | ERP → MOM | 字段已合并 | ### 2.2 仓库管理模块 | 序号 | ERP表名 | MOM表名 | 中文名 | 同步方向 | 说明 | |------|---------|---------|--------|----------|------| | 1 | erp_wm_warehouse | wm_warehouse | 仓库表 | ERP → MOM | 主数据同步 | | 2 | erp_wm_location | wm_storage_location | 库区表 | ERP → MOM | 主数据同步 | | 3 | erp_wm_area | wm_storage_area | 库位表 | ERP → MOM | 主数据同步 | | 4 | erp_wm_stock | wm_material_stock | 库存表 | 双向同步 | 库存实时同步 | | 5 | erp_wm_item_recpt | wm_item_recpt | 入库单表头 | 双向同步 | 入库单据同步 | | 6 | erp_wm_item_recpt_line | wm_item_recpt_line | 入库单明细 | 双向同步 | 入库明细同步 | | 7 | erp_wm_issue | wm_issue_header | 出库单表头 | 双向同步 | 出库单据同步 | | 8 | erp_wm_issue_line | wm_issue_line | 出库单明细 | 双向同步 | 出库明细同步 | ### 2.3 销售管理模块 **说明(MOM 升级后)**: MOM 侧新增 **erp_sl_order**、**erp_sl_order_line** 作为 ERP 销售订单的 1:1 镜像表(主键与 ERP 一致);工单仍通过 pro_workorder.source_code 等关联订单。 | 序号 | ERP表名 | MOM表名 | 中文名 | 同步方向 | 说明 | |------|---------|---------|--------|----------|------| | 1 | erp_sl_order | **erp_sl_order** | 销售订单表头 | ERP → MOM | **MOM 镜像表**(1:1,主键一致);供排程/发货查询 | | 2 | erp_sl_order_line | **erp_sl_order_line** | 销售订单明细 | ERP → MOM | **MOM 镜像表**(1:1);订单物料完整信息 | | 3 | erp_sl_order | pro_workorder (source) | 销售订单→工单来源 | ERP → MOM | 工单下发时 source_code=order_code 等关联 | | 4 | erp_sl_contract | - | 销售合同表头 | 不同步 | ERP专有,MOM不涉及合同管理 | | 5 | erp_sl_contract_line | - | 销售合同明细 | 不同步 | ERP专有 | | 6 | erp_sl_deliver | wm_product_salse | 发货通知单表头 | 双向同步 | ERP发货 ↔ MOM产品销售出库 | | 7 | erp_sl_deliver_line | wm_product_salse_line | 发货通知单明细 | 双向同步 | 发货明细 | | 8 | erp_sl_invoice | - | 销售发票表头 | 不同步 | ERP专有财务单据 | | 9 | erp_sl_invoice_line | - | 销售发票明细 | 不同步 | ERP专有财务单据 | | 10 | erp_sl_saleback | wm_rt_salse | 销售退货单表头 | 双向同步 | ERP退货 ↔ MOM退货入库 | | 11 | erp_sl_saleback_line | wm_rt_salse_line | 销售退货单明细 | 双向同步 | 退货明细 | ### 2.4 采购管理模块 **说明(MOM 升级后)**: MOM 侧新增 **erp_po_order**、**erp_po_order_line** 作为 ERP 采购订单的 1:1 镜像表;wm_arrival_notice.po_code、wm_item_recpt.po_order_id 等仍用于到货/入库关联。 | 序号 | ERP表名 | MOM表名 | 中文名 | 同步方向 | 说明 | |------|---------|---------|--------|----------|------| | 1 | erp_po_order | **erp_po_order** | 采购订单表头 | ERP → MOM | **MOM 镜像表**(1:1,主键一致);入库/齐套时溯源 | | 2 | erp_po_order_line | **erp_po_order_line** | 采购订单明细 | ERP → MOM | **MOM 镜像表**(1:1);采购物料完整信息 | | 3 | erp_po_order | wm_arrival_notice (po_code) | 采购订单→到货通知 | ERP → MOM | 到货通知单关联 po_code;wm_item_recpt 增加 po_order_id/po_line_id | | 4 | erp_po_checkin | wm_item_recpt | 采购到货/入库单 | 双向同步 | ERP到货 ↔ MOM入库单 | | 5 | erp_po_checkin_line | wm_item_recpt_line | 采购到货明细 | 双向同步 | 到货明细行 | | 6 | erp_po_invoice | - | 采购发票表头 | 不同步 | ERP专有财务单据 | | 7 | erp_po_invoice_line | - | 采购发票明细 | 不同步 | ERP专有财务单据 | | 8 | erp_po_reject | wm_rt_vendor | 采购退货单表头 | 双向同步 | ERP退货 ↔ MOM退料出库 | | 9 | erp_po_reject_line | wm_rt_vendor_line | 采购退货明细 | 双向同步 | 退货明细 | ### 2.5 生产计划模块 **说明(MOM 升级后)**: MOM 侧新增 **erp_mp_plan**、**erp_mp_plan_line**、**erp_mp_mbom**、**erp_mp_mbom_line**、**erp_mp_purchase** 作为 ERP 生产计划层数据的 1:1 镜像表;计划审核后先同步到 MOM 的 erp_mp_* 表,**下发车间**时再按供应方式拆解写入 pro_workorder、pro_workorder_bom。pro_workorder 增加 plan_id、plan_code、bom_version、delivery_date、mbom_id 等字段关联计划层。 | 序号 | ERP表名 | MOM表名 | 中文名 | 同步方向 | 说明 | |------|---------|---------|--------|----------|------| | 1 | erp_mp_plan | **erp_mp_plan** | 生产计划单表头 | ERP → MOM | **MOM 镜像表**(1:1,主键一致);保留计划层完整信息 | | 2 | erp_mp_plan_line | **erp_mp_plan_line** | 生产计划单明细 | ERP → MOM | **MOM 镜像表**(1:1);计划物料行 | | 3 | erp_mp_plan | pro_workorder | 生产计划单 → 工单 | ERP → MOM | 计划**下发**时按供应方式拆解创建工单;pro_workorder.plan_code=plan_code | | 4 | erp_mp_plan_line | pro_workorder_bom | 计划明细 → 工单BOM | ERP → MOM | 计划物料 → 工单BOM(下发时) | | 5 | erp_mp_mbom | **erp_mp_mbom** | 计划物料清单表头 | ERP → MOM | **MOM 镜像表**(1:1);BOM 运算结果,齐套/下发用 | | 6 | erp_mp_mbom_line | **erp_mp_mbom_line** | 计划物料清单明细 | ERP → MOM | **MOM 镜像表**(1:1);MBOM 明细 | | 7 | erp_mp_mbom | pro_workorder (拆解) | 物料清单 → 子工单 | ERP → MOM | 下发时按供应方式拆解为多个 pro_workorder;erp_mp_mbom.workorder_id 关联 | | 8 | erp_mp_mbom_line | pro_workorder_bom | 物料清单明细 → 工单BOM | ERP → MOM | 下发时写入工单 BOM | | 9 | erp_mp_purchase | **erp_mp_purchase** | 采购计划单 | ERP → MOM | **MOM 镜像表**(1:1);采购需求;可关联 wm_arrival_notice.purchase_plan_code | | 10 | erp_mp_parts | pro_workorder | 零部件订单 | ERP → MOM | 零部件生产 → 子工单 | --- ## 3. 基础数据模块字段映射 ### 3.1 物料分类表 (erp_md_item_type → md_item_type) | ERP字段名 | MOM字段名 | 类型 | 说明 | 备注 | |-----------|-----------|------|------|------| | item_type_id | item_type_id | bigint | 分类ID | 主键 | | tenant_id | tenant_id | varchar(20) | 租户ID | 新增字段 | | item_type_code | item_type_code | varchar(32) | 分类编码 | - | | item_type_name | item_type_name | varchar(50) | 分类名称 | - | | parent_type_id | parent_type_id | bigint | 父分类ID | - | | ancestors | ancestors | varchar(500) | 祖级列表 | 扩展长度 | | order_num | order_num | int | 排序号 | - | | enable_flag | enable_flag | char(1) | 启用状态 | - | | del_flag | del_flag | char(1) | 删除标志 | 新增字段 | | create_by | create_by | varchar(64) | 创建者 | - | | create_time | create_time | datetime | 创建时间 | - | | update_by | update_by | varchar(64) | 更新者 | - | | update_time | update_time | datetime | 更新时间 | - | ### 3.2 物料档案表 (erp_md_item → md_item) | ERP字段名 | MOM字段名 | 类型 | 说明 | 备注 | |-----------|-----------|------|------|------| | item_id | item_id | bigint | 物料ID | 主键 | | tenant_id | tenant_id | varchar(20) | 租户ID | 新增字段 | | item_code | item_code | varchar(32) | 物料编码 | - | | item_name | item_name | varchar(100) | 物料名称 | - | | specification | specification | varchar(200) | 规格型号 | - | | unit_of_measure | unit_of_measure | varchar(20) | 主计量单位 | - | | item_type_id | item_type_id | bigint | 物料分类ID | - | | item_type_code | item_type_code | varchar(32) | 分类编码 | - | | item_type_name | item_type_name | varchar(50) | 分类名称 | - | | item_sub_type_code | item_sub_type_code | varchar(32) | 二级分类编码 | 新增字段 | | item_sub_type_name | item_sub_type_name | varchar(50) | 二级分类名称 | 新增字段 | | item_or_product | item_or_product | varchar(20) | 物料/产品标识 | ITEM/PRODUCT | | safe_stock_flag | safe_stock_flag | char(1) | 启用安全库存 | - | | min_stock | min_stock | decimal(18,4) | 最小库存 | - | | max_stock | max_stock | decimal(18,4) | 最大库存 | - | | default_warehouse_id | default_warehouse_id | bigint | 默认仓库ID | 新增字段 | | default_warehouse_name | default_warehouse_name | varchar(50) | 默认仓库名称 | 新增字段 | | weight | weight | decimal(18,6) | 重量(kg) | 新增字段 | | volume | volume | decimal(18,6) | 体积(m³) | 新增字段 | | enable_flag | enable_flag | char(1) | 启用状态 | - | | del_flag | del_flag | char(1) | 删除标志 | 新增字段 | | remark | remark | varchar(500) | 备注 | 新增字段 | | *(冗余字段-关联md_bom)* | default_bom_id | bigint | 默认BOM ID | 关联md_bom.bom_id(冗余字段) | | *(冗余字段-关联md_bom)* | default_bom_code | varchar(32) | 默认BOM编码 | 关联md_bom.bom_code(冗余字段) | | *(冗余字段-关联md_bom)* | default_bom_name | varchar(100) | 默认BOM名称 | 关联md_bom.bom_name(冗余字段) | | *(冗余字段-关联md_bom)* | base_qty | decimal(18,4) | 基本数量 | 关联md_bom.base_qty(冗余字段) | | *(冗余字段-关联md_bom)* | default_bom_version | varchar(20) | 默认BOM版本 | 关联md_bom.version(冗余字段) | **说明**: `md_item`表中的BOM相关字段为冗余字段,用于快速查询产品的默认BOM信息,实际BOM数据存储在`md_bom`表中。 ### 3.3 计量单位表 (erp_md_unit → md_unit_measure) | ERP字段名 | MOM字段名 | 类型 | 说明 | 备注 | |-----------|-----------|------|------|------| | unit_id | measure_id | bigint | 单位ID | 主键名不同 | | tenant_id | tenant_id | varchar(20) | 租户ID | 新增字段 | | unit_code | measure_code | varchar(32) | 单位编码 | 字段名不同 | | unit_name | measure_name | varchar(50) | 单位名称 | 字段名不同 | | primary_id | primary_id | bigint | 主单位ID | 新增字段 | | primary_flag | primary_flag | char(1) | 是否主单位 | 新增字段 | | change_rate | change_rate | decimal(18,6) | 换算比例 | 新增字段 | | enable_flag | enable_flag | char(1) | 启用状态 | - | | del_flag | del_flag | char(1) | 删除标志 | 新增字段 | ### 3.4 BOM表头映射 (erp_md_bom → md_bom) **说明**: ERP系统BOM表头独立映射到MOM系统的`md_bom`表。`md_bom`是一个独立的表,不再将BOM信息存储在`md_item`表中。`md_item`表中的BOM相关字段(如`default_bom_id`)仅作为冗余字段,用于快速查询产品的默认BOM信息。 | ERP字段名 | MOM字段名 | 类型 | 说明 | 备注 | |-----------|-----------|------|------|------| | bom_id | bom_id | bigint | BOM ID | 主键 | | tenant_id | tenant_id | varchar(20) | 租户ID | - | | bom_code | bom_code | varchar(32) | BOM编码 | 唯一索引 | | bom_name | bom_name | varchar(100) | BOM名称 | - | | item_id | item_id | bigint | 产品物料ID | 外键关联md_item | | item_code | item_code | varchar(32) | 产品物料编码 | 冗余字段 | | item_name | item_name | varchar(100) | 产品物料名称 | 冗余字段 | | unit_name | unit_name | varchar(20) | 计量单位 | - | | base_qty | base_qty | decimal(18,4) | 基本数量 | 母件基数 | | version | version | varchar(20) | 版本号 | - | | version_desc | version_desc | varchar(200) | 版本说明 | - | | status | status | varchar(20) | BOM状态 | DRAFT/APPROVED/OBSOLETE | | enable_flag | enable_flag | char(1) | 启用状态 | Y/N | | remark | remark | varchar(500) | 备注 | - | | del_flag | del_flag | char(1) | 删除标志 | 0/1 | | create_by | create_by | varchar(64) | 创建者 | - | | create_time | create_time | datetime | 创建时间 | - | | update_by | update_by | varchar(64) | 更新者 | - | | update_time | update_time | datetime | 更新时间 | - | **索引设计**: - 主键: `pk_md_bom` (bom_id) - 唯一索引: `uk_bom_code` (bom_code, tenant_id) - 普通索引: `idx_bom_item` (item_id) - 普通索引: `idx_bom_tenant` (tenant_id) - 普通索引: `idx_bom_status` (status) ### 3.5 BOM明细映射 (erp_md_bom_line → md_product_bom) **说明**: ERP系统BOM明细映射到MOM产品BOM关系表,通过`bom_id`外键关联`md_bom`表 | ERP字段名 | MOM字段名 | 类型 | 说明 | 备注 | |-----------|-----------|------|------|------| | line_id | bom_line_id | bigint | 明细行ID | **MOM主键**(建议重命名,原字段名为bom_id) | | bom_id | bom_id | bigint | BOM表头ID | **外键关联md_bom.bom_id**(新增字段) | | line_no | line_no | int | 行号 | - | | item_id | bom_item_id | bigint | 子件物料ID | 字段名不同 | | item_code | bom_item_code | varchar(32) | 子件物料编码 | 字段名不同 | | item_name | bom_item_name | varchar(100) | 子件物料名称 | 字段名不同 | | specification | bom_item_spec | varchar(200) | 子件规格型号 | 字段名不同 | | unit_name | unit_name | varchar(20) | 计量单位名称 | - | | - | unit_of_measure | varchar(20) | 计量单位编码 | MOM专用 | | base_qty | quantity / base_qty | decimal(18,6) | 基本用量 | 两字段存储 | | loss_rate | loss_rate | decimal(5,2) | 损耗率(%) | - | | supply_type | supply_type | varchar(20) | 供应方式 | PURCHASE/PRODUCE/OUTSOURCE | | - | item_or_product | varchar(20) | 物料/产品标识 | MOM专用 | | - | enable_flag | char(1) | 启用状态 | MOM专用 | | remark | remark | varchar(200) | 备注 | - | | del_flag | del_flag | char(1) | 删除标志 | 0/1 | | tenant_id | tenant_id | varchar(20) | 租户ID | - | | - | create_by | varchar(64) | 创建者 | MOM专用 | | - | create_time | datetime | 创建时间 | MOM专用 | | - | update_by | varchar(64) | 更新者 | MOM专用 | | - | update_time | datetime | 更新时间 | MOM专用 | **关联关系**: - `md_product_bom.bom_id` → `md_bom.bom_id` (外键) - 一个`md_bom`记录可以有多条`md_product_bom`明细记录(1:N关系) **重要说明**: - `md_product_bom.bom_id`字段在明细表中**作为外键**,指向`md_bom.bom_id`(BOM表头的主键) - **字段名冲突问题**: 明细表的主键字段名也是`bom_id`,但实际存储的是明细行的ID(对应ERP的`line_id`) - **建议**: 将明细表主键重命名为`bom_line_id`或`line_id`,以避免与外键字段`bom_id`混淆 - **当前实现**: 如果保持现状,需要通过字段用途区分: - 作为主键的`bom_id`: 存储明细行ID(自增主键) - 作为外键的`bom_id`: 存储BOM表头ID(关联`md_bom.bom_id`) **表关系图**: ``` md_bom (BOM表头) ├─ bom_id (PK) ← 主键 ├─ bom_code (UK) ← 唯一编码 ├─ item_id (FK) → md_item.item_id ← 产品物料 ├─ version ← 版本号 ├─ status ← 状态 └─ ... md_product_bom (BOM明细) ├─ bom_line_id (PK) ← 明细行ID(主键,建议重命名自bom_id) ├─ bom_id (FK) → md_bom.bom_id ← 外键关联BOM表头 ├─ item_id → md_item.item_id ← 产品物料ID(冗余字段) ├─ bom_item_id → md_item.item_id ← 子件物料ID ├─ line_no ← 行号 ├─ quantity ← 用量 └─ ... ``` **字段重命名说明**: - 原`md_product_bom.bom_id`(主键)建议重命名为`bom_line_id`,避免与外键字段混淆 - 新增`md_product_bom.bom_id`字段作为外键,关联`md_bom.bom_id` - 详见: `alter_md_product_bom_for_md_bom.sql` ### 3.6 客户档案表 (erp_sl_client → md_client) | ERP字段名 | MOM字段名 | 类型 | 说明 | 备注 | |-----------|-----------|------|------|------| | client_id | client_id | bigint | 客户ID | 主键 | | tenant_id | tenant_id | varchar(20) | 租户ID | 新增字段 | | client_code | client_code | varchar(32) | 客户编码 | - | | client_name | client_name | varchar(100) | 客户名称 | - | | client_nick | client_nick | varchar(50) | 客户简称 | - | | client_en | client_en | varchar(100) | 英文名称 | - | | client_type | client_type | varchar(20) | 客户类型 | - | | client_level | client_level | varchar(10) | 客户级别 | 新增字段 | | client_source | client_source | varchar(50) | 客户来源 | 新增字段 | | client_industry | client_industry | varchar(50) | 所属行业 | 新增字段 | | province | province | varchar(50) | 省份 | 新增字段 | | city | city | varchar(50) | 城市 | 新增字段 | | address | address | varchar(200) | 公司地址 | - | | website | website | varchar(200) | 网址 | - | | email | email | varchar(100) | 邮箱 | - | | tel | tel | varchar(20) | 电话 | - | | fax | fax | varchar(20) | 传真 | 新增字段 | | contact1 | contact1 | varchar(50) | 联系人1 | - | | contact1_tel | contact1_tel | varchar(20) | 联系人1电话 | - | | contact1_email | contact1_email | varchar(100) | 联系人1邮箱 | - | | contact2 | contact2 | varchar(50) | 联系人2 | - | | contact2_tel | contact2_tel | varchar(20) | 联系人2电话 | - | | contact2_email | contact2_email | varchar(100) | 联系人2邮箱 | - | | credit_code | credit_code | varchar(30) | 统一社会信用代码 | - | | bank_name | bank_name | varchar(100) | 开户银行 | 新增字段 | | bank_account | bank_account | varchar(30) | 银行账号 | 新增字段 | | tax_no | tax_no | varchar(30) | 税号 | 新增字段 | | invoice_address | invoice_address | varchar(200) | 开票地址电话 | 新增字段 | | enable_flag | enable_flag | char(1) | 启用状态 | - | | del_flag | del_flag | char(1) | 删除标志 | 新增字段 | | remark | remark | varchar(500) | 备注 | - | ### 3.7 供应商档案表 (erp_po_supplier → md_vendor) | ERP字段名 | MOM字段名 | 类型 | 说明 | 备注 | |-----------|-----------|------|------|------| | supplier_id | vendor_id | bigint | 供应商ID | 主键名不同 | | tenant_id | tenant_id | varchar(20) | 租户ID | - | | supplier_code | vendor_code | varchar(32) | 供应商编码 | 字段名不同 | | supplier_name | vendor_name | varchar(100) | 供应商名称 | 字段名不同 | | supplier_nick | vendor_nick | varchar(50) | 供应商简称 | 字段名不同 | | - | vendor_en | varchar(100) | 英文名称 | MOM专用 | | - | vendor_des | varchar(500) | 供应商简介 | MOM专用 | | supplier_type | vendor_type | varchar(20) | 供应商类型 | 新增字段 | | supplier_level | vendor_level | varchar(10) | 供应商等级 | 字段名不同 | | - | vendor_score | int | 供应商评分 | MOM专用 | | - | vendor_logo | varchar(255) | Logo地址 | MOM专用 | | province | province | varchar(50) | 省份 | 新增字段 | | city | city | varchar(50) | 城市 | 新增字段 | | address | address | varchar(200) | 公司地址 | - | | zip_code | zip_code | varchar(20) | 邮编 | 新增字段 | | website | website | varchar(200) | 网址 | - | | email | email | varchar(100) | 邮箱 | - | | tel | tel | varchar(20) | 电话 | - | | fax | fax | varchar(20) | 传真 | 新增字段 | | contact1 | contact1 | varchar(50) | 联系人1 | - | | contact1_tel | contact1_tel | varchar(20) | 联系人1电话 | - | | - | contact1_email | varchar(100) | 联系人1邮箱 | MOM专用 | | contact2 | contact2 | varchar(50) | 联系人2 | - | | contact2_tel | contact2_tel | varchar(20) | 联系人2电话 | - | | - | contact2_email | varchar(100) | 联系人2邮箱 | MOM专用 | | - | credit_code | varchar(30) | 统一社会信用代码 | MOM专用 | | bank_name | bank_name | varchar(100) | 开户银行 | 新增字段 | | bank_account | bank_account | varchar(30) | 银行账号 | 新增字段 | | tax_no | tax_no | varchar(30) | 税号 | 新增字段 | | bank_address | invoice_address | varchar(200) | 开票地址 | 字段名不同 | | supply_items | supply_items | varchar(500) | 供应料品 | 新增字段 | | enable_flag | enable_flag | char(1) | 启用状态 | - | | del_flag | del_flag | char(1) | 删除标志 | 新增字段 | | remark | remark | varchar(500) | 备注 | - | --- ## 4. 销售管理模块字段映射 ### 4.0 模块差异总览(含 MOM 升级后镜像表) **MOM 升级后**:MOM 侧新增 **erp_sl_order**、**erp_sl_order_line** 作为 ERP 销售订单的 **1:1 镜像表**(主键与 ERP 一致);工单仍通过 pro_workorder.source_code 等与订单关联,用于排程与发货溯源。 | 对比项 | ERP系统 | MOM系统 | 差异说明 | |--------|---------|---------|----------| | 定位 | 完整销售业务管理(合同→订单→发货→开票→退货) | 不直接管理销售,仅接收订单信息用于生产排程 | MOM无独立销售模块 | | 客户档案 | erp_sl_client | md_client | 已映射至基础数据模块 | | 销售合同 | erp_sl_contract / _line | 无对应表 | ERP专有,MOM不涉及 | | 销售订单 | erp_sl_order / _line (含合同、金额、销售员) | **erp_sl_order / erp_sl_order_line**(MOM 镜像表,1:1)+ pro_workorder (source_code 关联) | MOM 升级后:订单先同步到镜像表,工单通过 source_code 关联订单 | | 发货管理 | erp_sl_deliver / _line (含收货地址、客户) | wm_product_salse / _line (产品销售出库) | 概念不同:ERP=发货通知,MOM=出库操作 | | 销售发票 | erp_sl_invoice / _line | 无对应表 | ERP专有财务单据 | | 退货管理 | erp_sl_saleback / _line | wm_rt_salse / _line (销售退货入库) | ERP=退货通知,MOM=退货入库 | | 金额/价格 | 支持单价、金额、已发货金额 | 不涉及价格和金额 | MOM仅关注数量 | | 销售报表 | 订单执行表、发货明细表等 | 无 | ERP专有 | **镜像表映射(1:1)**:ERP erp_sl_order → MOM erp_sl_order(主键 id 一致,字段一一对应,含 erp_sync_time);ERP erp_sl_order_line → MOM erp_sl_order_line(主键 id 一致,order_id 指向 MOM erp_sl_order.id)。镜像表用于 MOM 侧按订单查询、齐套、发货关联,不转换为 MOM 业务状态。 ### 4.1 销售订单 → MOM工单 (erp_sl_order → pro_workorder) > 说明: ERP 销售订单审核后先 1:1 同步到 MOM 的 erp_sl_order / erp_sl_order_line 镜像表;通过生产计划转化为 MOM 工单时,将订单关键信息作为工单的来源引用(source_code=order_code 等)。 | ERP字段名 (erp_sl_order) | MOM字段名 (pro_workorder) | 类型 | 说明 | 映射方式 | |--------------------------|--------------------------|------|------|----------| | order_id | - | bigint | 订单ID | 不直接映射 | | order_code | source_code | varchar(64) | 订单编码 → 来源单据编码 | 直接映射 | | - | order_source | varchar(64) | - → 来源类型 | 固定值 'ORDER' | | order_date | - | date | 订单日期 | 不映射 | | client_id | client_id | bigint | 客户ID | 直接映射 | | client_code | client_code | varchar(64) | 客户编码 | 直接映射 | | client_name | client_name | varchar(255) | 客户名称 | 直接映射 | | delivery_date | request_date | datetime | 交货日期 → 需求日期 | 类型转换 date→datetime | | total_quantity | quantity | double(14,2) | 总数量 → 生产数量 | 精度转换 decimal→double | | status | - | varchar(20) | 订单状态 | 不映射(工单有独立状态) | **ERP独有字段(MOM不需要):** | ERP字段名 | 说明 | 原因 | |-----------|------|------| | order_name | 订单名称 | MOM工单有独立名称 | | order_type | 订单类型 | MOM使用 workorder_type | | contract_id / contract_code | 合同关联 | MOM不涉及合同 | | sales_user_id / sales_user_name | 销售员 | MOM不涉及销售人员 | | dept_id / dept_name | 销售部门 | MOM不涉及销售部门 | | delivery_address | 收货地址 | MOM不涉及物流 | | total_amount / delivered_amount | 金额 | MOM不涉及价格 | | delivered_quantity | 已发货数量 | MOM通过出库单统计 | | operator_id / operator_name | 操作员 | MOM有独立操作员 | | approver_id / approver_name / approve_date | 审核 | MOM有独立审核流程 | | business_status | 业务状态 | MOM使用独立状态 | ### 4.2 销售订单明细 → 工单BOM (erp_sl_order_line → pro_workorder_bom) > 说明: 销售订单明细中的物料信息,在经过BOM计算后,转化为工单的BOM明细。非直接一对一映射,需通过生产计划中的BOM计算环节转换。 | ERP字段名 (erp_sl_order_line) | MOM字段名 (pro_workorder_bom) | 说明 | 映射方式 | |-------------------------------|-------------------------------|------|----------| | item_id | item_id | 产品物料ID | 间接映射(BOM计算后) | | item_code | item_code | 产品物料编码 | 间接映射 | | item_name | item_name | 产品物料名称 | 间接映射 | | specification | item_spc | 规格型号 | 字段名不同 | | unit_name | unit_of_measure | 计量单位 | 字段名不同 | | quantity | quantity | 订单数量 → 预计使用量 | 间接映射(BOM计算后) | **ERP独有字段(MOM不需要):** - `line_no`, `track_code`, `contract_line_id`: 订单行管理字段 - `unit_price`, `amount`: 价格金额字段 - `delivered_qty`: 发货统计字段 - `quality_req`: 质量要求(MOM通过qc模块管理) ### 4.3 发货通知单 → 产品销售出库 (erp_sl_deliver → wm_product_salse) | ERP字段名 (erp_sl_deliver) | MOM字段名 (wm_product_salse) | 类型 | 说明 | 映射方式 | |---------------------------|------------------------------|------|------|----------| | deliver_id | record_id | bigint | 主键 | 独立生成 | | deliver_code | salse_code | varchar(64) | 发货编码 → 出库编码 | 编码映射 | | deliver_date | salse_date | datetime | 发货日期 → 出库日期 | 类型转换 | | order_id | workorder_id | bigint | 订单ID → 工单ID | 间接关联 | | order_code | workorder_code | varchar(64) | 订单编码 → 工单编码 | 间接关联 | | client_id | client_id | bigint | 客户ID | 直接映射 | | client_name | client_name | varchar(255) | 客户名称 | 直接映射 | | warehouse_id | warehouse_id | bigint | 仓库ID | 直接映射 | | warehouse_name | warehouse_name | varchar(255) | 仓库名称 | 直接映射 | | status | status | varchar(64) | 状态 | 值转换 | **核心差异:** - ERP侧重**销售发货流程**(关联合同、客户地址、金额),MOM侧重**仓库出库操作**(关联工单、库区库位、批次) - ERP的`delivery_address`在MOM中不体现 - MOM增加了`batch_code`批次号、`location_id`库区、`area_id`库位等仓储细粒度字段 --- ## 5. 采购管理模块字段映射 ### 5.0 模块差异总览(含 MOM 升级后镜像表) **MOM 升级后**:MOM 侧新增 **erp_po_order**、**erp_po_order_line** 作为 ERP 采购订单的 **1:1 镜像表**(主键与 ERP 一致);到货/入库仍通过 wm_arrival_notice.po_code、wm_item_recpt.po_order_id / po_line_id 等关联订单。 | 对比项 | ERP系统 | MOM系统 | 差异说明 | |--------|---------|---------|----------| | 定位 | 完整采购业务管理(订单→到货→入库→发票→退货) | 仅管理到货入库和退货环节 | MOM不管理采购订单和发票 | | 供应商档案 | erp_po_supplier | md_vendor | 已映射至基础数据模块 | | 采购订单 | erp_po_order / _line (含价格、合同、计划关联) | **erp_po_order / erp_po_order_line**(MOM 镜像表,1:1)+ wm_arrival_notice.po_code、wm_item_recpt.po_order_id | MOM 升级后:订单先同步到镜像表,到货/入库通过 po_code、po_order_id 关联 | | 到货管理 | erp_po_checkin / _line (到货单) | wm_item_recpt / _line (入库单) | ERP=到货确认,MOM=入库操作;wm_item_recpt 增加 po_order_id/po_line_id | | 采购发票 | erp_po_invoice / _line | 无对应表 | ERP专有财务单据 | | 退货管理 | erp_po_reject / _line | wm_rt_vendor / _line | ERP=退货通知,MOM=退料出库 | | 价格/金额 | 支持单价、金额、已到货金额 | 不涉及价格和金额 | MOM仅关注数量 | | 采购计划 | 在生产计划模块 (erp_mp_purchase) | erp_mp_purchase(MOM 镜像)+ wm_arrival_notice (到货通知) | 采购需求先同步到 MOM erp_mp_purchase,再转化为到货预期 | **镜像表映射(1:1)**:ERP erp_po_order → MOM erp_po_order;ERP erp_po_order_line → MOM erp_po_order_line。主键一致,字段一一对应,含 erp_sync_time。 ### 5.1 采购订单 → 到货通知 (erp_po_order → wm_arrival_notice) > 说明: ERP 采购订单审核后先 1:1 同步到 MOM 的 erp_po_order / erp_po_order_line 镜像表;MOM 接收订单编码创建到货通知单(po_code=order_code),用于后续来料检验和入库;入库单 wm_item_recpt 增加 po_order_id、po_line_id 与镜像表关联。 | ERP字段名 (erp_po_order) | MOM字段名 (wm_arrival_notice) | 类型 | 说明 | 映射方式 | |--------------------------|-------------------------------|------|------|----------| | order_id | - | bigint | 订单ID | 不映射(MOM有独立主键) | | order_code | po_code | varchar(64) | 订单编码 → 采购单号 | 直接映射 | | supplier_id | vendor_id | bigint | 供应商ID | 字段名不同 | | supplier_code | vendor_code | varchar(64) | 供应商编码 | 字段名不同 | | supplier_name | vendor_name | varchar(255) | 供应商名称 | 字段名不同 | | - | vendor_nick | varchar(255) | - → 供应商简称 | MOM新增 | | delivery_date | arrival_date | datetime | 到货日期 | 字段名不同,类型转换 | | status | status | varchar(64) | 状态 | 值转换 | **ERP独有字段(MOM不需要):** - `order_date`: 订单日期(MOM以到货日期为准) - `business_status`, `business_type`, `order_type`: 业务分类字段 - `material_need`: 用料需求 - `dept_id`, `dept_name`, `user_id`, `user_name`: 采购部门/人员 - `contract_no`, `contract_file`: 合同信息 - `total_quantity`, `total_amount`, `arrived_quantity`: 汇总统计字段 ### 5.2 采购订单明细 → 到货通知明细 (erp_po_order_line → wm_arrival_notice_line) | ERP字段名 (erp_po_order_line) | MOM字段名 (wm_arrival_notice_line) | 类型 | 说明 | 映射方式 | |-------------------------------|-------------------------------------|------|------|----------| | line_id | - | bigint | 行ID | 不映射 | | order_code | - | varchar(32) | 订单编码 | 通过表头关联 | | line_no | - | int | 行号 | MOM独立编号 | | item_id | item_id | bigint | 物料ID | 直接映射 | | item_code | item_code | varchar(64) | 物料编码 | 直接映射 | | item_name | item_name | varchar(255) | 物料名称 | 直接映射 | | specification | specification | varchar(500) | 规格型号 | 直接映射 | | unit_name | unit_of_measure | varchar(64) | 计量单位 | 字段名不同 | | quantity | quantity_arrive | double | 采购数量 → 到货数量 | 字段名不同 | **ERP独有字段(MOM不需要):** - `track_code`, `plan_code`, `plan_line_id`: 跟单和计划关联 - `unit_price`, `amount`: 价格金额 - `arrived_quantity`: 已到货统计(MOM通过入库单统计) - `need_date`: 需求日期 ### 5.3 采购到货 → 入库单 (erp_po_checkin → wm_item_recpt) | ERP字段名 (erp_po_checkin) | MOM字段名 (wm_item_recpt) | 类型 | 说明 | 映射方式 | |---------------------------|---------------------------|------|------|----------| | checkin_id | recpt_id | bigint | 主键 | 独立生成 | | checkin_code | recpt_code | varchar(64) | 到货编码 → 入库编码 | 编码映射 | | - | recpt_name | varchar(255) | - → 入库单名称 | MOM新增 | | order_id | - | bigint | 采购订单ID | 不映射 | | order_code | po_code | varchar(64) | 订单编码 | 直接映射 | | supplier_id | vendor_id | bigint | 供应商 | 字段名不同 | | supplier_code | vendor_code | varchar(64) | 供应商编码 | 字段名不同 | | supplier_name | vendor_name | varchar(255) | 供应商名称 | 字段名不同 | | warehouse_id | warehouse_id | bigint | 仓库ID | 直接映射 | | checkin_date | recpt_date | datetime | 到货日期 → 入库日期 | 字段名不同 | | status | status | varchar(64) | 状态 | 值转换 | **MOM新增字段(ERP不具备):** - `iqc_id`, `iqc_code`: 来料检验单关联(MOM质检环节) - `location_id`, `area_id`: 库区库位(MOM仓储细粒度管理) - `expire_date`: 有效日期(MOM批次管理) ### 5.4 采购退货映射 (erp_po_reject → wm_rt_vendor) | ERP字段名 (erp_po_reject) | MOM字段名 (wm_rt_vendor) | 说明 | 映射方式 | |--------------------------|--------------------------|------|----------| | reject_code | rt_code | 退货编码 → 退料编码 | 编码映射 | | supplier_id | vendor_id | 供应商ID | 字段名不同 | | supplier_name | vendor_name | 供应商名称 | 字段名不同 | | warehouse_id | warehouse_id | 仓库ID | 直接映射 | | reject_date | rt_date | 退货日期 → 退料日期 | 字段名不同 | | status | status | 状态 | 值转换 | --- ## 6. 仓库管理模块字段映射 ### 6.1 仓库表 (erp_wm_warehouse → wm_warehouse) | ERP字段名 | MOM字段名 | 类型 | 说明 | |-----------|-----------|------|------| | warehouse_id | warehouse_id | bigint | 仓库ID | | warehouse_code | warehouse_code | varchar(32) | 仓库编码 | | warehouse_name | warehouse_name | varchar(50) | 仓库名称 | | warehouse_type | warehouse_type | varchar(20) | 仓库类型 | | location | location | varchar(100) | 位置 | | area | area | decimal(10,2) | 面积(m²) | | charge | charge | varchar(50) | 负责人 | | enable_flag | enable_flag | char(1) | 启用状态 | ### 6.2 库存表 (erp_wm_stock → wm_material_stock) | ERP字段名 | MOM字段名 | 类型 | 说明 | |-----------|-----------|------|------| | stock_id | stock_id | bigint | 库存ID | | item_id | item_id | bigint | 物料ID | | item_code | item_code | varchar(32) | 物料编码 | | item_name | item_name | varchar(100) | 物料名称 | | warehouse_id | warehouse_id | bigint | 仓库ID | | warehouse_name | warehouse_name | varchar(50) | 仓库名称 | | batch_no | batch_code | varchar(50) | 批次号 | | quantity_on_hand | quantity_onhand | decimal(18,4) | 在库数量 | | quantity_available | quantity_available | decimal(18,4) | 可用数量 | --- ## 7. 生产计划模块字段映射 ### 7.0 模块差异总览(含 MOM 升级后镜像表) **MOM 升级后**:MOM 侧新增 **erp_mp_plan**、**erp_mp_plan_line**、**erp_mp_mbom**、**erp_mp_mbom_line**、**erp_mp_purchase** 作为 ERP 生产计划层数据的 **1:1 镜像表**(主键与 ERP 一致)。计划审核后先同步到 MOM 的 erp_mp_* 表;**下发车间**时再按供应方式拆解写入 pro_workorder、pro_workorder_bom。pro_workorder 增加 plan_id、plan_code、bom_version、delivery_date、mbom_id、mbom_code 等字段关联计划层(见《MOM系统数据升级方案-销售采购生产计划》)。 | 对比项 | ERP系统 | MOM系统 | 差异说明 | |--------|---------|---------|----------| | 定位 | 生产计划与物料需求计算 | 生产执行与车间管理 | ERP=计划层,MOM=执行层 | | 核心单据 | erp_mp_plan (生产计划单) | **erp_mp_plan**(MOM 镜像)+ pro_workorder (生产工单) | 计划先同步到镜像表,下发时拆解为多个 MOM 工单 | | 计划明细 | erp_mp_plan_line (计划明细行) | **erp_mp_plan_line**(MOM 镜像)+ pro_workorder_bom | 计划明细在镜像表;下发时拆解为工单BOM | | 物料清单 | erp_mp_mbom / _line (BOM计算结果) | **erp_mp_mbom / erp_mp_mbom_line**(MOM 镜像)+ pro_workorder_bom | 先同步到镜像表,下发时按供应方式拆解为工单及工单BOM | | 采购计划 | erp_mp_purchase (采购需求) | **erp_mp_purchase**(MOM 镜像)+ wm_arrival_notice (到货通知) | 采购需求先同步到 MOM 镜像表,可关联 wm_arrival_notice.purchase_plan_code | | 零部件 | erp_mp_parts (零部件订单) | pro_workorder (子工单) | ERP零部件订单 → MOM子工单 | | BOM关联 | bom_id, bom_version, bom_desc | pro_workorder.bom_id/bom_version + pro_route_product_bom | 工单增加 bom_id、bom_version、mbom_id 等字段 | | 下发状态 | erp_mp_mbom.issue_status | pro_workorder.status | ERP独有下发概念,MOM用工单状态 | | 工序管理 | 无(ERP不管理工序) | pro_task, pro_route, pro_process | MOM独有,ERP不涉及 | | 报工管理 | 无 | pro_feedback | MOM独有 | | 齐套检查 | 有(ERP端执行) | 无 | ERP独有 | | 排产甘特 | 无 | pro_task (通过日期排列) | MOM独有 | **镜像表映射(1:1)**:ERP erp_mp_plan → MOM erp_mp_plan;erp_mp_plan_line → MOM erp_mp_plan_line;erp_mp_mbom → MOM erp_mp_mbom;erp_mp_mbom_line → MOM erp_mp_mbom_line;erp_mp_purchase → MOM erp_mp_purchase。主键一致,字段一一对应,含 erp_sync_time;镜像表状态与 ERP 一致(DRAFT/APPROVED 等),不转换为 MOM 业务状态。 ### 7.1 生产计划单 → 工单 (erp_mp_plan → pro_workorder) > 说明: ERP 生产计划单审核后先 1:1 同步到 MOM 的 erp_mp_plan / erp_mp_plan_line 镜像表;执行 BOM 计算并**下发**到 MOM 车间时,按供应方式拆解创建 pro_workorder(plan_code=source_code,plan_id 等写入 pro_workorder 新增字段)。一个计划单可拆解为多个工单。 | ERP字段名 (erp_mp_plan) | MOM字段名 (pro_workorder) | 类型 | 说明 | 映射方式 | |-------------------------|--------------------------|------|------|----------| | plan_id | plan_id | bigint | 计划ID | MOM 升级后 pro_workorder 新增 plan_id,直接映射 | | plan_code | source_code / plan_code | varchar(64) | 计划编码 → 来源单据编码 / 计划编码 | 直接映射;pro_workorder 新增 plan_code | | - | order_source | varchar(64) | - → 来源类型 | 固定值 'ORDER' | | - | workorder_code | varchar(64) | - → 工单编码 | MOM自动生成 | | - | workorder_name | varchar(255) | - → 工单名称 | MOM自动生成 | | plan_date | - | date | 计划日期 | 不映射(参考用) | | status | status | varchar(64) | 计划状态 → 工单状态 | **值转换** (见下方) | | business_status | - | varchar(20) | 业务状态 | 不映射 | | work_type | workorder_type | varchar(64) | 工作类型 → 工单类型 | **值转换** (见下方) | | sales_order_id | - | bigint | 销售订单ID | 通过source_code间接关联 | | sales_order_code | source_code | varchar(64) | 销售订单编码 | 直接映射(订单来源时) | | sales_user_name | sales_user_name | varchar(50) | 销售员 | MOM 升级后 pro_workorder 新增,直接映射 | | delivery_date | request_date / delivery_date | datetime | 订单交期 → 需求日期/交期 | 类型转换;MOM 升级后 pro_workorder 新增 delivery_date | | bom_id | bom_id | bigint | BOM ID | MOM 升级后 pro_workorder 新增,直接映射 | | bom_version | bom_version | varchar(20) | BOM版本 | MOM 升级后 pro_workorder 新增,直接映射 | | total_quantity | quantity | double(14,2) | 生产总量 → 生产数量 | 精度转换 | | remark | remark | varchar(500) | 备注 | 直接映射 | **MOM 升级后 pro_workorder 新增字段(与计划层关联)**:plan_id、plan_code、bom_id、bom_version、delivery_date、sales_user_name、pp_number、mbom_id、mbom_code、erp_sync_time(详见《MOM系统数据升级方案-销售采购生产计划》)。mbom_id、mbom_code 来自 erp_mp_mbom,pp_number 为计划单号等。 **计划明细关联:** | ERP字段名 (erp_mp_plan_line) | MOM字段名 (pro_workorder) | 说明 | 映射方式 | |------------------------------|--------------------------|------|----------| | item_id (明细行产品) | product_id | 产品ID | 直接映射 | | item_code | product_code | 产品编码 | 直接映射 | | item_name | product_name | 产品名称 | 直接映射 | | specification | product_spc | 规格型号 | 字段名不同 | | unit_name | unit_of_measure / unit_name | 计量单位 | 直接映射 | | quantity | quantity | 计划数量 → 生产数量 | 直接映射 | | supply_type | workorder_type | 供应方式 → 工单类型 | 值转换 | **状态值转换:** | ERP状态 (erp_mp_plan.status) | MOM状态 (pro_workorder.status) | 说明 | |------------------------------|-------------------------------|------| | DRAFT | PREPARE | 草稿 → 准备中 | | APPROVED | CONFIRMED | 已审核 → 已确认 | | - | PRODUCING | MOM独有:生产中 | | CLOSED | FINISHED | 已关闭 → 已完成 | | CANCELLED | CANCELLED | 已取消 | **工作类型/工单类型转换:** | ERP work_type | ERP含义 | MOM workorder_type | 说明 | |---------------|---------|-------------------|------| | 0 | 生产计划单 | SELF | 自制工单 | | 1 | 零部件计划单 | SELF | 自制工单(子件) | | 2 | 零部件订单 | OUTSOURCE | 委外工单 | ### 7.2 物料清单 → 工单BOM (erp_mp_mbom → pro_workorder + pro_workorder_bom) > 说明: ERP的物料清单(MBOM)是BOM计算的结果,按供应方式将产品BOM展开为具体的生产/采购/委外需求。MOM中没有独立的MBOM概念,而是将其拆解为多个工单及工单BOM。 | ERP字段名 (erp_mp_mbom) | MOM字段名 (pro_workorder) | 类型 | 说明 | 映射方式 | |-------------------------|--------------------------|------|------|----------| | mbom_id | - | bigint | 物料清单ID | 不映射 | | mbom_code | - | varchar(32) | 物料清单编码 | 不映射 | | plan_id | - | bigint | 生产计划ID | 通过source_code间接关联 | | plan_code | source_code | varchar(64) | 计划编码 | 间接映射 | | item_id | product_id | bigint | 产品物料ID | 直接映射 | | item_code | product_code | varchar(64) | 产品编码 | 直接映射 | | item_name | product_name | varchar(255) | 产品名称 | 直接映射 | | unit_name | unit_of_measure | varchar(64) | 计量单位 | 直接映射 | | supply_type | workorder_type | varchar(64) | 供应方式 → 工单类型 | 值转换 | | quantity | quantity | double(14,2) | 生产数量 | 直接映射 | | workshop_id | - | bigint | 下发车间ID | MOM通过工作站关联车间 | | issue_status | status | varchar(64) | 下发状态 → 工单状态 | 值转换 | **供应方式→工单类型转换:** | ERP supply_type | MOM workorder_type | 说明 | |----------------|-------------------|------| | 生产 | SELF | 自制工单,需要领料生产 | | 加工 | SELF | 自制工单(加工件) | | 装配 | SELF | 自制工单(装配件) | | 委外 | OUTSOURCE | 委外工单,发料给委外商 | | 采购 | - | 不创建工单,转入采购计划 | ### 7.3 物料清单明细 → 工单BOM (erp_mp_mbom_line → pro_workorder_bom) | ERP字段名 (erp_mp_mbom_line) | MOM字段名 (pro_workorder_bom) | 类型 | 说明 | 映射方式 | |-----------------------------|-------------------------------|------|------|----------| | mbom_line_id | line_id | bigint | 行ID | 独立生成 | | mbom_id | workorder_id | bigint | 物料清单ID → 工单ID | 关联映射 | | item_id | item_id | bigint | 子件物料ID | 直接映射 | | item_code | item_code | varchar(64) | 子件编码 | 直接映射 | | item_name | item_name | varchar(255) | 子件名称 | 直接映射 | | specification | item_spc | varchar(255) | 规格型号 | 字段名不同 | | unit_name | unit_of_measure | varchar(64) | 计量单位 | 字段名不同 | | quantity | quantity | double(14,2) | 需求数量 | 直接映射 | | supply_type | item_or_product | varchar(20) | 供应方式 → 物料标识 | 值转换 | **ERP独有字段(MOM不需要):** - `need_qty`, `available_qty`, `lack_qty`: 需求量/可用量/缺少量(ERP齐套检查字段) - `plan_qty`, `ordered_qty`, `received_qty`: 计划/已订/已收数量(ERP采购跟踪字段) ### 7.4 采购计划 → 到货通知 (erp_mp_purchase → wm_arrival_notice) | ERP字段名 (erp_mp_purchase) | MOM字段名 (wm_arrival_notice) | 类型 | 说明 | 映射方式 | |---------------------------|-------------------------------|------|------|----------| | purchase_code | notice_code | varchar(64) | 采购计划编码 → 通知编码 | 编码映射 | | plan_code | - | varchar(32) | 计划单号 | 不映射(参考信息) | | item_id | → notice_line.item_id | bigint | 物料ID | 映射到明细行 | | item_code | → notice_line.item_code | varchar(64) | 物料编码 | 映射到明细行 | | item_name | → notice_line.item_name | varchar(255) | 物料名称 | 映射到明细行 | | purchase_qty | → notice_line.quantity_arrive | double | 采购数量 | 映射到明细行 | | delivery_date | arrival_date | datetime | 交期 → 到货日期 | 字段名不同 | | status | status | varchar(64) | 状态 | 值转换 | ### 7.5 MOM独有表(ERP无对应) 以下MOM表在ERP系统中没有对应的表,是MOM车间执行层的专有数据: | MOM表名 | 中文名 | 说明 | ERP中的近似概念 | |---------|--------|------|----------------| | pro_task | 生产任务 | 工单拆解到工位的具体任务 | 无(ERP不管理到工位级别) | | pro_feedback | 报工记录 | 工序级别的产量报工 | erp_mp_mbom.completed_qty(仅完成数量) | | pro_route | 工艺路线 | 产品工艺定义 | 无(ERP仅有简单的工艺路线字段) | | pro_process | 工序 | 工序定义 | 无 | | pro_route_process | 工艺路线工序 | 工序间关系 | 无 | | pro_trans_order | 流转单 | 工序间流转 | 无 | | pro_card | 工序流转卡 | 产品流转追溯 | 无 | | pro_andon_record | 安灯记录 | 异常呼叫 | 无 | | pro_shutdown_record | 停机记录 | 设备停机 | 无 | ### 7.6 ERP 表在 MOM 的对应关系(MOM 升级后) | ERP表名 | 中文名 | MOM 升级后对应 | 说明 | |---------|--------|----------------|------| | erp_mp_plan_line | 生产计划明细 | **erp_mp_plan_line**(MOM 镜像表,1:1) | 计划引入的订单物料;下发时对应 pro_workorder / pro_workorder_bom | | erp_mp_purchase | 采购计划单 | **erp_mp_purchase**(MOM 镜像表,1:1) | 采购需求;可关联 wm_arrival_notice.purchase_plan_code | | erp_mp_parts | 零部件订单 | 无镜像表 | 对应 pro_workorder(子工单 parent_id) | | erp_mp_purchase.ordered_qty | 已订数量 | 无 | 采购执行跟踪;MOM 通过入库单统计 | --- ## 8. 数据同步规则 ### 8.1 同步方向定义 | 方向 | 说明 | 触发方式 | |------|------|----------| | ERP → MOM | 主数据从ERP同步到MOM | 定时同步/实时推送 | | MOM → ERP | 执行数据从MOM反馈到ERP | 业务触发/定时同步 | | 双向同步 | 两系统数据互相同步 | 根据业务场景 | ### 8.2 同步频率建议 | 数据类型 | 同步频率 | 说明 | |----------|----------|------| | 主数据(物料、BOM等) | 实时/准实时 | 变更后立即同步 | | 库存数据 | 准实时(5分钟) | 库存变动后同步 | | 单据数据 | 业务触发 | 审核/完成后同步 | | 生产执行数据 | 定时(1小时) | 批量同步报工数据 | ### 8.3 数据一致性保障 1. **主键映射**: 通过业务编码(如item_code、bom_code、order_code)关联,而非内部ID 2. **时间戳比对**: 使用update_time判断数据版本 3. **幂等处理**: 同步接口支持重复调用 4. **事务保障**: 主从表数据一起同步,保证事务一致性 5. **冲突处理**: 以ERP数据为主(主数据),以MOM数据为主(执行数据) ### 8.4 BOM数据同步特殊规则 **BOM表头与明细同步**: 1. **同步顺序**: - 第一步:同步`erp_md_bom` → `md_bom`(表头) - 第二步:同步`erp_md_bom_line` → `md_product_bom`(明细) 2. **关联方式**: - 通过`bom_code`(业务编码)关联表头和明细 - 或通过`bom_id`(主键ID)关联(如果ID可映射) 3. **事务处理**: 表头和明细必须在同一事务中同步,确保数据一致性 4. **删除规则**: 删除BOM时,先删除所有明细记录(`md_product_bom`),再删除表头记录(`md_bom`) 5. **更新规则**: 更新BOM时,需要同时检查表头和明细的变更 6. **外键更新**: 同步明细时,需要设置`md_product_bom.bom_id`外键字段,关联到`md_bom.bom_id` **md_item表冗余字段更新**: - 当`md_bom`表数据同步后,需要更新`md_item.default_bom_id`等冗余字段 - 更新条件: `md_bom.item_id = md_item.item_id AND md_bom.status = 'APPROVED'` - 如果产品有多个BOM版本,选择最新版本或指定版本作为默认BOM - 更新SQL示例: ```sql UPDATE md_item i INNER JOIN md_bom b ON i.item_id = b.item_id SET i.default_bom_id = b.bom_id, i.default_bom_code = b.bom_code, i.default_bom_name = b.bom_name, i.default_bom_version = b.version, i.base_qty = b.base_qty WHERE b.status = 'APPROVED' AND b.del_flag = '0' AND i.del_flag = '0'; ``` ### 8.5 字段转换规则 | 转换类型 | ERP值 | MOM值 | 说明 | |----------|-------|-------|------| | 状态映射 | DRAFT | PREPARE | 草稿/准备中 | | 状态映射 | APPROVED | CONFIRMED | 已审核/已确认 | | 状态映射 | - | PRODUCING | MOM独有:生产中 | | 状态映射 | CLOSED | FINISHED | 已关闭/已完成 | | 状态映射 | CANCELLED | CANCELLED | 已取消 | | 布尔转换 | Y/N | Y/N | 启用标志 | | 布尔转换 | 0/1 | 0/1 | 删除标志 | | 主键命名 | supplier_id | vendor_id | 采购模块供应商主键 | | 编码命名 | supplier_code | vendor_code | 采购模块供应商编码 | | 编码命名 | plan_code | source_code | 计划编码→来源编码 | | 日期类型 | date | datetime | ERP用date,MOM用datetime | | 数量精度 | decimal(18,4) | double(14,2) | 精度差异需注意四舍五入 | ### 8.6 销售/采购/生产模块同步规则补充(含 MOM 升级后镜像表) **MOM 升级后**:销售、采购、生产计划模块在 MOM 中新增 erp_sl_order、erp_po_order、erp_mp_plan、erp_mp_mbom、erp_mp_purchase 等**镜像表**。ERP 审核后先 **1:1 同步到 MOM 的 erp_* 镜像表**(主键与 ERP 一致,含 erp_sync_time);镜像表状态与 ERP 一致(DRAFT/APPROVED 等),不转换为 MOM 业务状态。业务表(pro_workorder、wm_arrival_notice、wm_item_recpt)仍按原有规则关联(source_code、po_code、po_order_id、plan_code 等)。 #### 销售订单同步规则 | 规则 | 说明 | |------|------| | **镜像表同步** | ERP erp_sl_order / erp_sl_order_line 审核后 → MOM erp_sl_order / erp_sl_order_line(1:1,主键一致) | | 同步时机 | ERP 销售订单审核后同步到 MOM 镜像表;生产计划下发后,工单通过 source_code 关联订单 | | 同步方式 | 先同步到 MOM erp_sl_order、erp_sl_order_line;工单下发时通过生产计划中转,source_code=order_code | | 同步字段 | 镜像表字段与 ERP 一一对应;工单仅客户信息(client_id/code/name)和来源编码(order_code→source_code),不同步金额/价格 | | 发货反馈 | MOM产品销售出库(wm_product_salse)完成后,回写ERP发货单(erp_sl_deliver)的发货数量 | #### 采购模块同步规则 | 规则 | 说明 | |------|------| | **镜像表同步** | ERP erp_po_order / erp_po_order_line 审核后 → MOM erp_po_order / erp_po_order_line(1:1,主键一致) | | 同步时机 | ERP 采购订单审核后同步到 MOM 镜像表,并可按需创建到货通知单 | | 同步方式 | 先同步到 MOM erp_po_order、erp_po_order_line;到货通知 wm_arrival_notice.po_code=order_code;入库单 wm_item_recpt 增加 po_order_id、po_line_id 关联镜像表 | | 入库反馈 | MOM入库单(wm_item_recpt)审核后,回写ERP到货单(erp_po_checkin)的到货数量 | | 退货反馈 | MOM退料出库(wm_rt_vendor)审核后,回写ERP退货单(erp_po_reject)的退货数量 | | 供应商映射 | supplier_id → vendor_id,supplier_code → vendor_code(注意字段名转换) | #### 生产计划同步规则 | 规则 | 说明 | |------|------| | **镜像表同步** | ERP erp_mp_plan / erp_mp_plan_line、erp_mp_mbom / erp_mp_mbom_line、erp_mp_purchase 审核后 → MOM 同名 erp_mp_* 表(1:1,主键一致) | | 同步时机 | ERP 生产计划审核并执行 BOM 计算后,先同步到 MOM 镜像表;**下发车间**时再按供应方式拆解创建 pro_workorder、pro_workorder_bom | | 拆解规则 | 供应方式=生产/加工/装配 → 创建MOM自制工单(SELF);供应方式=委外 → 创建委外工单(OUTSOURCE);供应方式=采购 → 不创建工单,转入采购计划(erp_mp_purchase);工单写入 plan_id、plan_code、bom_version、delivery_date、mbom_id、mbom_code 等 | | 父子工单 | ERP计划单的产品BOM中如有子件BOM,MOM通过parent_id建立工单父子关系 | | 完工反馈 | MOM工单完工(status=FINISHED)后,回写ERP物料清单(erp_mp_mbom)的完成数量 | | 领料反馈 | MOM生产领料(wm_issue_header)后,回写ERP物料清单的领用数量 | --- ## 9. 附录 ### 9.1 公共字段说明 以下字段在两系统中通用: | 字段名 | 类型 | 说明 | |--------|------|------| | tenant_id | varchar(20) | 租户ID(多租户隔离) | | del_flag | char(1) | 删除标志(0存在 1删除) | | enable_flag | char(1) | 启用状态(Y启用 N停用) | | create_by | varchar(64) | 创建者 | | create_time | datetime | 创建时间 | | update_by | varchar(64) | 更新者 | | update_time | datetime | 更新时间 | | remark | varchar(500) | 备注 | ### 9.2 枚举值对照 #### 单据状态 (status) | 枚举值 | 中文名 | ERP | MOM | |--------|--------|-----|-----| | DRAFT | 草稿 | ✓ | ✓ | | SUBMITTED | 已提交 | ✓ | - | | APPROVED | 已审核 | ✓ | ✓ | | CONFIRMED | 已确认 | - | ✓ | | PROCESSING | 进行中 | - | ✓ | | FINISHED | 已完成 | ✓ | ✓ | | CLOSED | 已关闭 | ✓ | - | | CANCELLED | 已取消 | ✓ | ✓ | #### 物料类型 (item_or_product) | 枚举值 | 中文名 | 说明 | |--------|--------|------| | ITEM | 物料 | 原材料、零部件 | | PRODUCT | 产品 | 成品、半成品 | #### 供应方式 (supply_type) | 枚举值 | 中文名 | 说明 | |--------|--------|------| | PURCHASE | 采购 | 外部采购 | | PRODUCE / SELF_MADE | 自制 | 自己生产 | | OUTSOURCE | 委外 | 委外加工 | ### 9.3 MOM系统md_bom表设计说明 #### 9.3.1 表结构设计 **表名**: `md_bom` **说明**: BOM表头,存储产品BOM的基本信息 **主要字段**: - `bom_id`: 主键,BOM ID - `bom_code`: BOM编码(唯一) - `item_id`: 产品物料ID(外键关联`md_item.item_id`) - `version`: 版本号 - `status`: BOM状态(DRAFT/APPROVED/OBSOLETE) **与md_product_bom的关系**: - `md_bom` (1) ←→ (N) `md_product_bom` - 一个BOM表头可以有多条明细记录 - 通过`md_product_bom.bom_id`外键关联`md_bom.bom_id` #### 9.3.2 数据同步规则 **ERP → MOM同步**: 1. 同步`erp_md_bom`表数据到`md_bom`表 2. 同步`erp_md_bom_line`表数据到`md_product_bom`表 3. 通过`bom_code`或`bom_id`关联同步 **数据一致性**: - BOM表头和明细必须一起同步 - 删除BOM时,先删除明细,再删除表头 - 更新BOM时,需要同时更新表头和明细 #### 9.3.3 索引建议 ```sql -- 主键 ALTER TABLE md_bom ADD PRIMARY KEY (bom_id); -- 唯一索引(BOM编码+租户) ALTER TABLE md_bom ADD UNIQUE KEY uk_bom_code (bom_code, tenant_id); -- 普通索引 ALTER TABLE md_bom ADD INDEX idx_bom_item (item_id); ALTER TABLE md_bom ADD INDEX idx_bom_tenant (tenant_id); ALTER TABLE md_bom ADD INDEX idx_bom_status (status); ALTER TABLE md_bom ADD INDEX idx_bom_code (bom_code); ``` #### 9.3.4 与md_item表的关联 - `md_item.default_bom_id` → `md_bom.bom_id` (冗余字段,用于快速查询) - 一个产品可以有多个BOM版本,但只有一个默认BOM - 默认BOM信息存储在`md_item`表中作为冗余字段,提高查询性能 #### 9.3.5 创建步骤 **执行顺序**: 1. 执行 `create_md_bom_table.sql` - 创建md_bom表 2. 执行 `alter_md_product_bom_for_md_bom.sql` - 修改md_product_bom表,添加外键关联 3. 数据迁移:将现有md_product_bom数据中的bom_code关联到md_bom表,更新bom_id外键字段 4. 更新md_item表的default_bom_id等冗余字段 **注意事项**: - 如果md_product_bom表已有数据,需要先创建md_bom表,然后通过bom_code关联更新外键 - 建议在测试环境先验证脚本执行和数据迁移 - 生产环境执行前请备份数据库 ### 9.4 相关SQL脚本 | 脚本文件 | 说明 | |----------|------| | mom系统同步erp字段-alter.sql | MOM系统新增ERP同步字段 | | alter_md_client.sql | 客户表字段同步 | | alter_md_vendor.sql | 供应商表字段同步 | | erp数据库设计-DDL.sql | ERP系统表结构DDL | | **create_md_bom_table.sql** | **新建md_bom表的DDL脚本** | | **alter_md_product_bom_for_md_bom.sql** | **修改md_product_bom表以关联md_bom表** | --- ## 修订历史 | 版本 | 日期 | 修订内容 | 修订人 | |------|------|----------|--------| | 1.0.0 | 2026-01-26 | 初始版本 | System | | 1.1.0 | 2026-02-06 | 完善销售/采购/生产计划三大模块的差异分析和字段映射:补充模块差异总览表、完整字段级映射、状态值转换规则、双系统独有表清单、同步规则补充 | System | | 1.2.0 | 2026-02-07 | 按《MOM系统数据升级方案-销售采购生产计划》梳理:补充 MOM 侧 erp_sl/erp_po/erp_mp 镜像表(1:1);表级映射与模块差异总览增加“ERP→MOM 镜像表”及业务表关联说明;7.6 改为“ERP 表在 MOM 的对应关系”;8.6 增加镜像表同步规则;映射原则与修订历史更新 | System |