981 lines
45 KiB
Markdown
981 lines
45 KiB
Markdown
# ERP系统数据库设计 - 数据字典
|
||
|
||
> 版本: 1.0.0
|
||
> 创建日期: 2026-01-25
|
||
> 数据库: MySQL 8.0+
|
||
> 字符集: utf8mb4
|
||
|
||
---
|
||
|
||
## 目录
|
||
|
||
1. [概述](#1-概述)
|
||
2. [命名规范](#2-命名规范)
|
||
3. [公共字段说明](#3-公共字段说明)
|
||
4. [基础数据模块](#4-基础数据模块)
|
||
5. [仓库管理模块](#5-仓库管理模块)
|
||
6. [销售管理模块](#6-销售管理模块)
|
||
7. [采购管理模块](#7-采购管理模块)
|
||
8. [生产计划模块](#8-生产计划模块)
|
||
9. [枚举值定义](#9-枚举值定义)
|
||
10. [索引设计规范](#10-索引设计规范)
|
||
11. [ER图](#11-er图)
|
||
|
||
---
|
||
|
||
## 1. 概述
|
||
|
||
### 1.1 文档目的
|
||
|
||
本文档定义ERP系统的数据库表结构、字段说明、枚举值和关联关系,为后端API开发和系统维护提供数据模型支持。
|
||
|
||
### 1.2 涵盖模块
|
||
|
||
| 模块 | 表前缀 | API前缀 | 说明 | 本文档状态 |
|
||
|------|--------|---------|------|-----------|
|
||
| 系统管理 | erp_sys_ | /system | 租户、用户、部门等 | ✅ 已收录 |
|
||
| 基础数据 | erp_md_ | /md | 物料、BOM、单位等 | ✅ 已收录 |
|
||
| 仓库管理 | erp_wm_ | /wm | 仓库、库存、出入库等 | ✅ 已收录 |
|
||
| 销售管理 | erp_sl_ | /sl | 客户、订单、发货等 | ✅ 已收录 |
|
||
| 采购管理 | erp_po_ | /po | 供应商、采购订单等 | ✅ 已收录 |
|
||
| 生产计划 | erp_mp_ | /mp | 生产计划、物料清单等 | ✅ 已收录 |
|
||
| 生产管理 | erp_prs_ | /prs | 生产订单、领料、完工、入库等 | ⚠️ 见补充文档 |
|
||
| 研发管理 | erp_rd_ | /rd | EBOM、样品配方、孪生物料等 | ⚠️ 见补充文档 |
|
||
| 委外管理 | erp_pu_ | /pu | 委外订单、发料、入库等 | ⚠️ 见补充文档 |
|
||
| 财务管理 | erp_fd_ | /fd | 凭证、应收应付、成本核算等 | ⚠️ 见补充文档 |
|
||
|
||
> ⚠️ 标记的模块详见 `erp数据库设计-Swagger补充模块.md`
|
||
|
||
### 1.3 表清单总览
|
||
|
||
| 序号 | 表名 | 中文名 | 模块 |
|
||
|------|------|--------|------|
|
||
| 1 | sys_tenant | 租户表 | 系统管理 |
|
||
| 2 | erp_md_item_type | 物料分类表 | 基础数据 |
|
||
| 3 | erp_md_item | 物料档案表 | 基础数据 |
|
||
| 4 | erp_md_unit | 计量单位表 | 基础数据 |
|
||
| 5 | erp_md_bom | BOM表头 | 基础数据 |
|
||
| 6 | erp_md_bom_line | BOM明细表 | 基础数据 |
|
||
| 7 | erp_wm_warehouse | 仓库表 | 仓库管理 |
|
||
| 8 | erp_wm_location | 库区表 | 仓库管理 |
|
||
| 9 | erp_wm_area | 库位表 | 仓库管理 |
|
||
| 10 | erp_wm_stock | 库存表 | 仓库管理 |
|
||
| 11 | erp_wm_item_recpt | 入库单表头 | 仓库管理 |
|
||
| 12 | erp_wm_item_recpt_line | 入库单明细 | 仓库管理 |
|
||
| 13 | erp_wm_issue | 出库单表头 | 仓库管理 |
|
||
| 14 | erp_wm_issue_line | 出库单明细 | 仓库管理 |
|
||
| 15 | erp_sl_contract | 销售合同表头 | 销售管理 |
|
||
| 17 | erp_sl_contract_line | 销售合同明细 | 销售管理 |
|
||
| 18 | erp_sl_order | 销售订单表头 | 销售管理 |
|
||
| 19 | erp_sl_order_line | 销售订单明细 | 销售管理 |
|
||
| 20 | erp_sl_deliver | 发货单表头 | 销售管理 |
|
||
| 21 | erp_sl_deliver_line | 发货单明细 | 销售管理 |
|
||
| 22 | erp_sl_invoice | 销售发票表头 | 销售管理 |
|
||
| 23 | erp_sl_invoice_line | 销售发票明细 | 销售管理 |
|
||
| 24 | erp_sl_saleback | 销售退货单表头 | 销售管理 |
|
||
| 25 | erp_sl_saleback_line | 销售退货单明细 | 销售管理 |
|
||
| 26 | erp_po_supplier | 供应商档案表 | 采购管理 |
|
||
| 27 | erp_po_order | 采购订单表头 | 采购管理 |
|
||
| 28 | erp_po_order_line | 采购订单明细 | 采购管理 |
|
||
| 29 | erp_po_checkin | 采购到货单表头 | 采购管理 |
|
||
| 30 | erp_po_checkin_line | 采购到货单明细 | 采购管理 |
|
||
| 31 | erp_po_invoice | 采购发票表头 | 采购管理 |
|
||
| 32 | erp_po_invoice_line | 采购发票明细 | 采购管理 |
|
||
| 33 | erp_po_reject | 采购退货单表头 | 采购管理 |
|
||
| 34 | erp_po_reject_line | 采购退货单明细 | 采购管理 |
|
||
| 35 | erp_mp_plan | 生产计划单表头 | 生产计划 |
|
||
| 36 | erp_mp_plan_line | 生产计划单明细 | 生产计划 |
|
||
| 37 | erp_mp_mbom | 物料清单表头 | 生产计划 |
|
||
| 38 | erp_mp_mbom_line | 物料清单明细 | 生产计划 |
|
||
| 39 | erp_mp_purchase | 采购计划单表 | 生产计划 |
|
||
| 40 | erp_mp_parts | 零部件订单表 | 生产计划 |
|
||
| | **以下为Swagger API发现的待补充表** | | |
|
||
| 41 | erp_prs_order | 生产订单表头 | 生产管理 |
|
||
| 42 | erp_prs_order_line | 生产订单明细 | 生产管理 |
|
||
| 43 | erp_prs_pick | 生产领料单表头 | 生产管理 |
|
||
| 44 | erp_prs_product | 生产完工单表头 | 生产管理 |
|
||
| 45 | erp_prs_checkin | 生产入库单表头 | 生产管理 |
|
||
| 46 | erp_prs_instruct | 生产指令单表头 | 生产管理 |
|
||
| 47 | erp_prs_yield | 生产报工单表头 | 生产管理 |
|
||
| 48 | erp_prs_beltline | 生产线 | 生产管理 |
|
||
| 49 | erp_prs_team | 班组 | 生产管理 |
|
||
| 50 | erp_prs_worker | 工人 | 生产管理 |
|
||
| 51 | erp_prs_jobs | 工种 | 生产管理 |
|
||
| 52 | erp_prs_operate_section | 标准工序段 | 生产管理 |
|
||
| 53 | erp_prs_process_route | 工艺路线 | 生产管理 |
|
||
| 54 | erp_prs_equipment | 设备 | 生产管理 |
|
||
| 55 | erp_rd_ebom | EBOM表头 | 研发管理 |
|
||
| 56 | erp_rd_ebom_line | EBOM明细 | 研发管理 |
|
||
| 57 | erp_rd_sample | 样品配方表头 | 研发管理 |
|
||
| 58 | erp_rd_sample_line | 样品配方明细 | 研发管理 |
|
||
| 59 | erp_rd_twin | 孪生物料表头 | 研发管理 |
|
||
| 60 | erp_rd_twin_line | 孪生物料明细 | 研发管理 |
|
||
| 61 | erp_rd_tret | 放量表 | 研发管理 |
|
||
| 62 | erp_rd_setting | 研发设置 | 研发管理 |
|
||
| 63 | erp_pu_supplier | 委外商档案 | 委外管理 |
|
||
| 64 | erp_pu_order | 委外订单表头 | 委外管理 |
|
||
| 65 | erp_pu_order_line | 委外订单明细 | 委外管理 |
|
||
| 66 | erp_pu_product | 委外到货单表头 | 委外管理 |
|
||
| 67 | erp_pu_checkin | 委外入库单表头 | 委外管理 |
|
||
| 68 | erp_pu_pick | 委外发料单表头 | 委外管理 |
|
||
| 69 | erp_pu_unpick | 委外退料单表头 | 委外管理 |
|
||
| 70 | erp_pu_fapiao | 委外发票表头 | 委外管理 |
|
||
|
||
---
|
||
|
||
## 2. 命名规范
|
||
|
||
### 2.1 表命名规范
|
||
|
||
| 规则 | 说明 | 示例 |
|
||
|------|------|------|
|
||
| 前缀 | erp_模块缩写_业务名 | erp_sl_order (销售订单) |
|
||
| 主从表 | 主表不加后缀,从表加_line | erp_sl_order, erp_sl_order_line |
|
||
| 小写 | 全部小写,下划线分隔 | erp_po_order_line |
|
||
|
||
### 2.2 字段命名规范
|
||
|
||
| 规则 | 说明 | 示例 |
|
||
|------|------|------|
|
||
| 主键 | 业务名_id | order_id, item_id |
|
||
| 编码 | 业务名_code | order_code, item_code |
|
||
| 名称 | 业务名_name | order_name, item_name |
|
||
| 外键 | 关联表业务名_id | client_id, supplier_id |
|
||
| 冗余字段 | 关联表业务名_code/name | client_code, client_name |
|
||
| 标志 | xxx_flag | del_flag, enable_flag |
|
||
| 数量 | quantity, xxx_qty | quantity, delivered_qty |
|
||
| 金额 | amount, xxx_amount | amount, total_amount |
|
||
|
||
### 2.3 数据类型规范
|
||
|
||
| 用途 | 数据类型 | 说明 |
|
||
|------|----------|------|
|
||
| 主键 | bigint | 自增长ID |
|
||
| 编码 | varchar(32) | 业务编码 |
|
||
| 名称 | varchar(100) | 短名称 |
|
||
| 描述 | varchar(500) | 长文本 |
|
||
| 日期 | date | 纯日期 |
|
||
| 时间 | datetime | 日期时间 |
|
||
| 数量 | decimal(18,4) | 数量类 |
|
||
| 金额 | decimal(18,2) | 金额类 |
|
||
| 单价 | decimal(18,4) | 单价类 |
|
||
| 比例 | decimal(5,2) | 百分比 |
|
||
| 标志 | char(1) | Y/N, 0/1 |
|
||
| 状态 | varchar(20) | 状态枚举 |
|
||
|
||
---
|
||
|
||
## 3. 公共字段说明
|
||
|
||
### 3.1 必备公共字段
|
||
|
||
所有业务表必须包含以下字段:
|
||
|
||
| 字段名 | 类型 | 说明 |
|
||
|--------|------|------|
|
||
| tenant_id | varchar(20) | 租户ID (多租户隔离) |
|
||
| del_flag | char(1) | 删除标志 (0存在 1删除) |
|
||
| create_by | varchar(64) | 创建者 |
|
||
| create_time | datetime | 创建时间 |
|
||
| update_by | varchar(64) | 更新者 |
|
||
| update_time | datetime | 更新时间 |
|
||
|
||
### 3.2 单据类公共字段
|
||
|
||
单据类表通常包含以下字段:
|
||
|
||
| 字段名 | 类型 | 说明 |
|
||
|--------|------|------|
|
||
| status | varchar(20) | 单据状态 |
|
||
| operator_id | bigint | 操作员ID |
|
||
| operator_name | varchar(50) | 操作员名称 |
|
||
| approver_id | bigint | 审核员ID |
|
||
| approver_name | varchar(50) | 审核员名称 |
|
||
| approve_date | datetime | 审核日期 |
|
||
| remark | varchar(500) | 备注 |
|
||
|
||
---
|
||
|
||
## 4. 基础数据模块
|
||
|
||
### 4.1 物料分类表 (erp_md_item_type)
|
||
|
||
> API路径: `/md/itemtype`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| item_type_id | bigint | - | N | AUTO | 分类ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| item_type_code | varchar | 32 | N | - | 分类编码 |
|
||
| item_type_name | varchar | 50 | N | - | 分类名称 |
|
||
| parent_type_id | bigint | - | Y | NULL | 父分类ID |
|
||
| ancestors | varchar | 500 | Y | NULL | 祖级列表 |
|
||
| order_num | int | - | Y | 0 | 排序号 |
|
||
| enable_flag | char | 1 | N | 'Y' | 启用状态 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
| create_by | varchar | 64 | Y | NULL | 创建者 |
|
||
| create_time | datetime | - | Y | NULL | 创建时间 |
|
||
| update_by | varchar | 64 | Y | NULL | 更新者 |
|
||
| update_time | datetime | - | Y | NULL | 更新时间 |
|
||
|
||
**索引设计:**
|
||
|
||
| 索引名 | 字段 | 类型 |
|
||
|--------|------|------|
|
||
| uk_item_type_code | item_type_code, tenant_id | UNIQUE |
|
||
| idx_item_type_parent | parent_type_id | INDEX |
|
||
| idx_item_type_tenant | tenant_id | INDEX |
|
||
|
||
---
|
||
|
||
### 4.2 物料档案表 (erp_md_item)
|
||
|
||
> API路径: `/md/item`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| item_id | bigint | - | N | AUTO | 物料ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| item_code | varchar | 32 | N | - | 物料编码 |
|
||
| item_name | varchar | 100 | N | - | 物料名称 |
|
||
| specification | varchar | 200 | Y | NULL | 规格型号 |
|
||
| unit_of_measure | varchar | 20 | Y | NULL | 主计量单位 |
|
||
| item_type_id | bigint | - | Y | NULL | 物料分类ID |
|
||
| item_type_code | varchar | 32 | Y | NULL | 物料分类编码 |
|
||
| item_type_name | varchar | 50 | Y | NULL | 物料分类名称 |
|
||
| item_sub_type_code | varchar | 32 | Y | NULL | 二级分类编码 |
|
||
| item_sub_type_name | varchar | 50 | Y | NULL | 二级分类名称 |
|
||
| item_or_product | varchar | 20 | Y | 'ITEM' | 物料/产品 |
|
||
| safe_stock_flag | char | 1 | Y | 'N' | 启用安全库存 |
|
||
| min_stock | decimal | 18,4 | Y | 0 | 最小库存 |
|
||
| max_stock | decimal | 18,4 | Y | 0 | 最大库存 |
|
||
| default_warehouse_id | bigint | - | Y | NULL | 默认仓库ID |
|
||
| default_warehouse_name | varchar | 50 | Y | NULL | 默认仓库名称 |
|
||
| weight | decimal | 18,6 | Y | NULL | 重量(kg) |
|
||
| volume | decimal | 18,6 | Y | NULL | 体积(m³) |
|
||
| enable_flag | char | 1 | N | 'Y' | 启用状态 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
| create_by | varchar | 64 | Y | NULL | 创建者 |
|
||
| create_time | datetime | - | Y | NULL | 创建时间 |
|
||
| update_by | varchar | 64 | Y | NULL | 更新者 |
|
||
| update_time | datetime | - | Y | NULL | 更新时间 |
|
||
|
||
**索引设计:**
|
||
|
||
| 索引名 | 字段 | 类型 |
|
||
|--------|------|------|
|
||
| uk_item_code | item_code, tenant_id | UNIQUE |
|
||
| idx_item_type | item_type_id | INDEX |
|
||
| idx_item_name | item_name | INDEX |
|
||
| idx_item_tenant | tenant_id | INDEX |
|
||
|
||
---
|
||
|
||
### 4.3 BOM表头 (erp_md_bom)
|
||
|
||
> API路径: `/md/bom`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| bom_id | bigint | - | N | AUTO | BOM ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| bom_code | varchar | 32 | N | - | BOM编码 |
|
||
| bom_name | varchar | 100 | Y | NULL | BOM名称 |
|
||
| item_id | bigint | - | N | - | 产品物料ID |
|
||
| item_code | varchar | 32 | N | - | 产品物料编码 |
|
||
| item_name | varchar | 100 | N | - | 产品物料名称 |
|
||
| unit_name | varchar | 20 | Y | NULL | 计量单位 |
|
||
| base_qty | decimal | 18,4 | N | 1 | 基本数量 |
|
||
| version | varchar | 20 | Y | NULL | 版本号 |
|
||
| version_desc | varchar | 200 | Y | NULL | 版本说明 |
|
||
| status | varchar | 20 | N | 'DRAFT' | 状态 |
|
||
| enable_flag | char | 1 | N | 'Y' | 启用状态 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
|
||
### 4.4 BOM明细表 (erp_md_bom_line)
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| line_id | bigint | - | N | AUTO | 明细ID (主键) |
|
||
| bom_id | bigint | - | N | - | BOM ID (外键) |
|
||
| line_no | int | - | N | - | 行号 |
|
||
| item_id | bigint | - | N | - | 子件物料ID |
|
||
| item_code | varchar | 32 | N | - | 子件物料编码 |
|
||
| item_name | varchar | 100 | N | - | 子件物料名称 |
|
||
| specification | varchar | 200 | Y | NULL | 规格型号 |
|
||
| unit_name | varchar | 20 | Y | NULL | 计量单位 |
|
||
| base_qty | decimal | 18,6 | N | 1 | 基本用量 |
|
||
| loss_rate | decimal | 5,2 | Y | 0 | 损耗率(%) |
|
||
| supply_type | varchar | 20 | Y | 'PURCHASE' | 供应方式 |
|
||
| remark | varchar | 200 | Y | NULL | 备注 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
|
||
---
|
||
|
||
## 5. 仓库管理模块
|
||
|
||
### 5.1 仓库表 (erp_wm_warehouse)
|
||
|
||
> API路径: `/wm/warehouse`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| warehouse_id | bigint | - | N | AUTO | 仓库ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| warehouse_code | varchar | 32 | N | - | 仓库编码 |
|
||
| warehouse_name | varchar | 50 | N | - | 仓库名称 |
|
||
| warehouse_type | varchar | 20 | Y | NULL | 仓库类型 |
|
||
| location | varchar | 100 | Y | NULL | 位置 |
|
||
| area | decimal | 10,2 | Y | NULL | 面积(m²) |
|
||
| charge | varchar | 50 | Y | NULL | 负责人 |
|
||
| charge_tel | varchar | 20 | Y | NULL | 负责人电话 |
|
||
| enable_flag | char | 1 | N | 'Y' | 启用状态 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
|
||
### 5.2 库存表 (erp_wm_stock)
|
||
|
||
> API路径: `/wm/stock`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| stock_id | bigint | - | N | AUTO | 库存ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| item_id | bigint | - | N | - | 物料ID |
|
||
| item_code | varchar | 32 | Y | NULL | 物料编码 |
|
||
| item_name | varchar | 100 | Y | NULL | 物料名称 |
|
||
| specification | varchar | 200 | Y | NULL | 规格型号 |
|
||
| unit_name | varchar | 20 | Y | NULL | 计量单位 |
|
||
| warehouse_id | bigint | - | N | - | 仓库ID |
|
||
| warehouse_code | varchar | 32 | Y | NULL | 仓库编码 |
|
||
| warehouse_name | varchar | 50 | Y | NULL | 仓库名称 |
|
||
| location_id | bigint | - | Y | NULL | 库区ID |
|
||
| area_id | bigint | - | Y | NULL | 库位ID |
|
||
| batch_no | varchar | 50 | Y | NULL | 批次号 |
|
||
| quantity_on_hand | decimal | 18,4 | N | 0 | 在库数量 |
|
||
| quantity_locked | decimal | 18,4 | N | 0 | 锁定数量 |
|
||
| quantity_available | decimal | 18,4 | N | 0 | 可用数量 |
|
||
| unit_cost | decimal | 18,4 | Y | 0 | 单位成本 |
|
||
| expire_date | date | - | Y | NULL | 有效期 |
|
||
| update_time | datetime | - | Y | NULL | 更新时间 |
|
||
|
||
**业务规则:**
|
||
- `quantity_available = quantity_on_hand - quantity_locked`
|
||
- 库存更新时自动计算可用数量
|
||
|
||
---
|
||
|
||
## 6. 销售管理模块
|
||
|
||
> 说明: 客户档案表使用 md_client(基础数据模块),已合并原 erp_sl_client 的所有字段
|
||
|
||
### 6.1 销售订单表头 (erp_sl_order)
|
||
|
||
> API路径: `/sl/order`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| order_id | bigint | - | N | AUTO | 订单ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| order_code | varchar | 32 | N | - | 订单编码 |
|
||
| order_name | varchar | 100 | Y | NULL | 订单名称 |
|
||
| order_date | date | - | N | - | 订单日期 |
|
||
| status | varchar | 20 | N | 'DRAFT' | 单据状态 |
|
||
| business_status | varchar | 20 | Y | 'NORMAL' | 业务状态 |
|
||
| order_type | varchar | 20 | Y | NULL | 订单类型 |
|
||
| contract_id | bigint | - | Y | NULL | 合同ID |
|
||
| contract_code | varchar | 32 | Y | NULL | 合同编码 |
|
||
| client_id | bigint | - | N | - | 客户ID |
|
||
| client_code | varchar | 32 | Y | NULL | 客户编码 |
|
||
| client_name | varchar | 100 | Y | NULL | 客户名称 |
|
||
| sales_user_id | bigint | - | Y | NULL | 销售员ID |
|
||
| sales_user_name | varchar | 50 | Y | NULL | 销售员名称 |
|
||
| dept_id | bigint | - | Y | NULL | 部门ID |
|
||
| dept_name | varchar | 50 | Y | NULL | 部门名称 |
|
||
| delivery_date | date | - | Y | NULL | 交货日期 |
|
||
| delivery_address | varchar | 200 | Y | NULL | 收货地址 |
|
||
| total_quantity | decimal | 18,4 | Y | 0 | 总数量 |
|
||
| total_amount | decimal | 18,2 | Y | 0 | 总金额 |
|
||
| delivered_quantity | decimal | 18,4 | Y | 0 | 已发货数量 |
|
||
| delivered_amount | decimal | 18,2 | Y | 0 | 已发货金额 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
| operator_id | bigint | - | Y | NULL | 操作员ID |
|
||
| operator_name | varchar | 50 | Y | NULL | 操作员名称 |
|
||
| approver_id | bigint | - | Y | NULL | 审核员ID |
|
||
| approver_name | varchar | 50 | Y | NULL | 审核员名称 |
|
||
| approve_date | datetime | - | Y | NULL | 审核日期 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
|
||
### 6.2 销售订单明细 (erp_sl_order_line)
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| line_id | bigint | - | N | AUTO | 明细ID (主键) |
|
||
| order_id | bigint | - | N | - | 订单ID (外键) |
|
||
| order_code | varchar | 32 | N | - | 订单编码 |
|
||
| line_no | int | - | N | - | 行号 |
|
||
| track_code | varchar | 32 | Y | NULL | 跟单编号 |
|
||
| contract_line_id | bigint | - | Y | NULL | 合同明细ID |
|
||
| item_id | bigint | - | N | - | 物料ID |
|
||
| item_code | varchar | 32 | N | - | 物料编码 |
|
||
| item_name | varchar | 100 | N | - | 物料名称 |
|
||
| specification | varchar | 200 | Y | NULL | 规格型号 |
|
||
| unit_id | bigint | - | Y | NULL | 计量单位ID |
|
||
| unit_name | varchar | 20 | Y | NULL | 计量单位 |
|
||
| quantity | decimal | 18,4 | N | 0 | 订单数量 |
|
||
| unit_price | decimal | 18,4 | Y | 0 | 单价 |
|
||
| amount | decimal | 18,2 | Y | 0 | 金额 |
|
||
| delivered_qty | decimal | 18,4 | Y | 0 | 已发货数量 |
|
||
| quality_req | varchar | 200 | Y | NULL | 质量要求 |
|
||
| remark | varchar | 200 | Y | NULL | 备注 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
|
||
### 6.4 发货单表头 (erp_sl_deliver)
|
||
|
||
> API路径: `/sl/deliver`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| deliver_id | bigint | - | N | AUTO | 发货单ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| deliver_code | varchar | 32 | N | - | 发货单编码 |
|
||
| deliver_name | varchar | 100 | Y | NULL | 发货单名称 |
|
||
| deliver_date | date | - | N | - | 发货日期 |
|
||
| status | varchar | 20 | N | 'DRAFT' | 状态 |
|
||
| order_id | bigint | - | Y | NULL | 销售订单ID |
|
||
| order_code | varchar | 32 | Y | NULL | 销售订单编码 |
|
||
| client_id | bigint | - | N | - | 客户ID |
|
||
| client_code | varchar | 32 | Y | NULL | 客户编码 |
|
||
| client_name | varchar | 100 | Y | NULL | 客户名称 |
|
||
| warehouse_id | bigint | - | Y | NULL | 发货仓库ID |
|
||
| warehouse_name | varchar | 50 | Y | NULL | 仓库名称 |
|
||
| delivery_address | varchar | 200 | Y | NULL | 收货地址 |
|
||
| total_quantity | decimal | 18,4 | Y | 0 | 总数量 |
|
||
| total_amount | decimal | 18,2 | Y | 0 | 总金额 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
|
||
---
|
||
|
||
## 7. 采购管理模块
|
||
|
||
### 7.1 供应商档案表 (erp_po_supplier)
|
||
|
||
> API路径: `/po/supplier`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| supplier_id | bigint | - | N | AUTO | 供应商ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| supplier_code | varchar | 32 | N | - | 供应商编码 |
|
||
| supplier_name | varchar | 100 | N | - | 供应商名称 |
|
||
| supplier_alias | varchar | 100 | Y | NULL | 供应商别名 |
|
||
| supplier_nick | varchar | 50 | Y | NULL | 供应商简称 |
|
||
| supplier_type | varchar | 20 | Y | NULL | 供应商分类 |
|
||
| supplier_level | varchar | 10 | Y | 'B' | 供应商等级(A/B/C/D) |
|
||
| province | varchar | 50 | Y | NULL | 省份 |
|
||
| city | varchar | 50 | Y | NULL | 城市 |
|
||
| address | varchar | 200 | Y | NULL | 公司地址 |
|
||
| zip_code | varchar | 10 | Y | NULL | 邮编 |
|
||
| tel | varchar | 20 | Y | NULL | 电话 |
|
||
| fax | varchar | 20 | Y | NULL | 传真 |
|
||
| email | varchar | 100 | Y | NULL | 邮箱 |
|
||
| website | varchar | 200 | Y | NULL | 网址 |
|
||
| contact1 | varchar | 50 | Y | NULL | 业务联系人 |
|
||
| contact1_tel | varchar | 20 | Y | NULL | 业务联系人电话 |
|
||
| contact2 | varchar | 50 | Y | NULL | 财务联系人 |
|
||
| contact2_tel | varchar | 20 | Y | NULL | 财务联系人电话 |
|
||
| bank_name | varchar | 100 | Y | NULL | 开户银行 |
|
||
| bank_account | varchar | 30 | Y | NULL | 银行账号 |
|
||
| bank_address | varchar | 200 | Y | NULL | 开票地址电话 |
|
||
| tax_no | varchar | 30 | Y | NULL | 税号 |
|
||
| supply_items | varchar | 500 | Y | NULL | 供应料品 |
|
||
| enable_flag | char | 1 | N | 'Y' | 启用状态 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
|
||
### 7.2 采购订单表头 (erp_po_order)
|
||
|
||
> API路径: `/po/order`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| order_id | bigint | - | N | AUTO | 订单ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| order_code | varchar | 32 | N | - | 订单编码 |
|
||
| order_date | date | - | N | - | 订单日期 |
|
||
| status | varchar | 20 | N | 'DRAFT' | 单据状态 |
|
||
| business_status | varchar | 20 | Y | 'NORMAL' | 业务状态 |
|
||
| business_type | varchar | 20 | Y | NULL | 业务类型 |
|
||
| order_type | varchar | 20 | Y | NULL | 单据类型 |
|
||
| material_need | varchar | 20 | Y | NULL | 用料需求 |
|
||
| supplier_id | bigint | - | Y | NULL | 供应商ID |
|
||
| supplier_code | varchar | 32 | Y | NULL | 供应商编码 |
|
||
| supplier_name | varchar | 100 | Y | NULL | 供应商名称 |
|
||
| dept_id | bigint | - | Y | NULL | 采购部门ID |
|
||
| dept_name | varchar | 50 | Y | NULL | 采购部门名称 |
|
||
| user_id | bigint | - | Y | NULL | 采购人员ID |
|
||
| user_name | varchar | 50 | Y | NULL | 采购人员名称 |
|
||
| delivery_date | date | - | Y | NULL | 到货日期 |
|
||
| contract_no | varchar | 50 | Y | NULL | 合同号 |
|
||
| contract_file | varchar | 500 | Y | NULL | 合同附件 |
|
||
| total_quantity | decimal | 18,4 | Y | 0 | 总数量 |
|
||
| total_amount | decimal | 18,2 | Y | 0 | 总金额 |
|
||
| arrived_quantity | decimal | 18,4 | Y | 0 | 已到货数量 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
|
||
### 7.3 采购订单明细 (erp_po_order_line)
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| line_id | bigint | - | N | AUTO | 明细ID (主键) |
|
||
| order_id | bigint | - | N | - | 订单ID (外键) |
|
||
| order_code | varchar | 32 | N | - | 订单编码 |
|
||
| line_no | int | - | N | - | 行号 |
|
||
| track_code | varchar | 32 | Y | NULL | 跟单编号 |
|
||
| plan_code | varchar | 32 | Y | NULL | 计划单号 |
|
||
| plan_line_id | bigint | - | Y | NULL | 计划明细ID |
|
||
| item_id | bigint | - | N | - | 物料ID |
|
||
| item_code | varchar | 32 | N | - | 物料编码 |
|
||
| item_name | varchar | 100 | N | - | 物料名称 |
|
||
| specification | varchar | 200 | Y | NULL | 型号规格 |
|
||
| unit_id | bigint | - | Y | NULL | 计量单位ID |
|
||
| unit_name | varchar | 20 | Y | NULL | 计量单位 |
|
||
| need_date | date | - | Y | NULL | 需求日期 |
|
||
| quantity | decimal | 18,4 | N | 0 | 采购数量 |
|
||
| unit_price | decimal | 18,4 | Y | 0 | 采购单价 |
|
||
| amount | decimal | 18,2 | Y | 0 | 金额 |
|
||
| arrived_quantity | decimal | 18,4 | Y | 0 | 已到货数量 |
|
||
| remark | varchar | 200 | Y | NULL | 采购说明 |
|
||
| del_flag | char | 1 | N | '0' | 删除标志 |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
|
||
---
|
||
|
||
## 8. 生产计划模块
|
||
|
||
### 8.1 生产计划单表头 (erp_mp_plan)
|
||
|
||
> API路径: `/mp/plan/order`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| plan_id | bigint | - | N | AUTO | 计划ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| plan_code | varchar | 32 | N | - | 计划单编码 |
|
||
| plan_date | date | - | N | - | 计划日期 |
|
||
| status | varchar | 20 | N | 'DRAFT' | 单据状态 |
|
||
| business_status | varchar | 20 | Y | 'NORMAL' | 业务状态 |
|
||
| business_type | varchar | 20 | Y | NULL | 业务类型 |
|
||
| work_type | int | - | N | 0 | 工作类型 |
|
||
| sales_order_id | bigint | - | Y | NULL | 销售订单ID |
|
||
| sales_order_code | varchar | 32 | Y | NULL | 销售订单编码 |
|
||
| sales_user_id | bigint | - | Y | NULL | 销售员ID |
|
||
| sales_user_name | varchar | 50 | Y | NULL | 销售员名称 |
|
||
| delivery_date | date | - | Y | NULL | 订单交期 |
|
||
| bom_id | bigint | - | Y | NULL | BOM ID |
|
||
| bom_version | varchar | 20 | Y | NULL | BOM版本号 |
|
||
| bom_desc | varchar | 200 | Y | NULL | BOM版本说明 |
|
||
| total_quantity | decimal | 18,4 | Y | 0 | 生产总量 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
|
||
### 8.2 物料清单表头 (erp_mp_mbom)
|
||
|
||
> API路径: `/mp/plan/mbom`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| mbom_id | bigint | - | N | AUTO | 物料清单ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| mbom_code | varchar | 32 | N | - | 物料清单编码 |
|
||
| mbom_date | date | - | N | - | 单据日期 |
|
||
| status | varchar | 20 | N | 'DRAFT' | 单据状态 |
|
||
| business_type | varchar | 20 | Y | NULL | 业务类型 |
|
||
| issue_status | varchar | 20 | Y | NULL | 下发状态 |
|
||
| plan_id | bigint | - | N | - | 生产计划ID |
|
||
| plan_code | varchar | 32 | N | - | 生产计划编码 |
|
||
| sales_order_id | bigint | - | Y | NULL | 销售订单ID |
|
||
| sales_order_code | varchar | 32 | Y | NULL | 销售订单编码 |
|
||
| delivery_date | date | - | Y | NULL | 订单交期 |
|
||
| item_id | bigint | - | N | - | 产品物料ID |
|
||
| item_code | varchar | 32 | N | - | 产品物料编码 |
|
||
| item_name | varchar | 100 | N | - | 产品物料名称 |
|
||
| unit_name | varchar | 20 | Y | NULL | 计量单位 |
|
||
| supply_type | varchar | 20 | Y | NULL | 供应方式 |
|
||
| quantity | decimal | 18,4 | N | 0 | 生产数量 |
|
||
| workshop_id | bigint | - | Y | NULL | 下发车间ID |
|
||
| workshop_name | varchar | 50 | Y | NULL | 下发车间名称 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
|
||
### 8.3 采购计划单表 (erp_mp_purchase)
|
||
|
||
> API路径: `/mp/plan/purchase`
|
||
|
||
| 字段名 | 类型 | 长度 | 允许空 | 默认值 | 说明 |
|
||
|--------|------|------|--------|--------|------|
|
||
| purchase_id | bigint | - | N | AUTO | 采购计划ID (主键) |
|
||
| tenant_id | varchar | 20 | N | - | 租户ID |
|
||
| purchase_code | varchar | 32 | N | - | 采购计划编码 |
|
||
| purchase_date | date | - | N | - | 计划日期 |
|
||
| status | varchar | 20 | N | 'DRAFT' | 单据状态 |
|
||
| need_type | int | - | N | 0 | 需求方式 |
|
||
| plan_id | bigint | - | Y | NULL | 生产计划ID |
|
||
| plan_code | varchar | 32 | Y | NULL | 生产计划编码 |
|
||
| sales_order_id | bigint | - | Y | NULL | 销售订单ID |
|
||
| sales_order_code | varchar | 32 | Y | NULL | 销售订单编码 |
|
||
| delivery_date | date | - | Y | NULL | 订单交期 |
|
||
| item_id | bigint | - | N | - | 物料ID |
|
||
| item_code | varchar | 32 | N | - | 物料编码 |
|
||
| item_name | varchar | 100 | N | - | 物料名称 |
|
||
| specification | varchar | 200 | Y | NULL | 型号规格 |
|
||
| unit_name | varchar | 20 | Y | NULL | 计量单位 |
|
||
| purchase_qty | decimal | 18,4 | N | 0 | 采购数量 |
|
||
| ordered_qty | decimal | 18,4 | Y | 0 | 已订数量 |
|
||
| remark | varchar | 500 | Y | NULL | 备注 |
|
||
|
||
---
|
||
|
||
## 9. 枚举值定义
|
||
|
||
### 9.1 通用单据状态 (status)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| DRAFT | 开立/草稿 | 可编辑状态 |
|
||
| SUBMITTED | 已提交 | 等待审核 |
|
||
| APPROVED | 已审核 | 审核通过,不可编辑 |
|
||
| REJECTED | 已驳回 | 审核驳回 |
|
||
| CLOSED | 已关闭 | 业务完结 |
|
||
| CANCELLED | 已取消 | 取消作废 |
|
||
|
||
### 9.2 业务状态 (business_status)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| NORMAL | 正常 | 正常执行 |
|
||
| PAUSE | 暂停 | 暂停执行 |
|
||
| CANCEL | 取消 | 已取消 |
|
||
|
||
### 9.3 启用状态 (enable_flag)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| Y | 启用 | 正常使用 |
|
||
| N | 停用 | 禁止使用 |
|
||
|
||
### 9.4 删除标志 (del_flag)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| 0 | 存在 | 正常数据 |
|
||
| 1 | 删除 | 逻辑删除 |
|
||
|
||
### 9.5 物料类型 (item_or_product)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| ITEM | 物料 | 原材料/零部件 |
|
||
| PRODUCT | 产品 | 成品 |
|
||
|
||
### 9.6 供应方式 (supply_type)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| PURCHASE | 采购 | 外部采购 |
|
||
| SELF_MADE | 自制 | 自己生产 |
|
||
| OUTSOURCE | 委外 | 委外加工 |
|
||
|
||
### 9.7 采购业务类型 (business_type)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| RAW_MATERIAL | 原材料 | 原材料采购 |
|
||
| PARTS | 零部件 | 零部件采购 |
|
||
| ASSEMBLY | 装配件 | 装配件采购 |
|
||
| FINISHED | 成品 | 成品采购 |
|
||
| HARDWARE | 五金件 | 五金件采购 |
|
||
| PACKAGING | 包装物 | 包装物采购 |
|
||
|
||
### 9.8 用料需求 (material_need)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| ORDER_USE | 订单用料 | 按订单需求采购 |
|
||
| STOCK_USE | 备库用料 | 备库采购 |
|
||
|
||
### 9.9 工作类型 (work_type)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| 0 | 生产计划单 | 主生产计划 |
|
||
| 1 | 零部件计划单 | 零部件生产计划 |
|
||
| 2 | 零部件订单 | 零部件加工订单 |
|
||
|
||
### 9.10 需求方式 (need_type)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| 0 | 订单用料 | 按订单需求采购 |
|
||
| 1 | 库存备料 | 备库采购 |
|
||
|
||
### 9.11 下发状态 (issue_status)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| NOT_ISSUED | 未下发 | 未下发到车间 |
|
||
| ISSUED | 已下发 | 已下发到车间 |
|
||
| COMPLETED | 已完成 | 生产完成 |
|
||
|
||
### 9.12 财务状态 (finance_status)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| RECORDED | 录入 | 已录入 |
|
||
| ENTERED | 入账 | 已入账 |
|
||
|
||
### 9.13 客户/供应商等级 (client_level / supplier_level)
|
||
|
||
| 枚举值 | 中文名 | 说明 |
|
||
|--------|--------|------|
|
||
| A | A级 | 核心客户/供应商 |
|
||
| B | B级 | 重要客户/供应商 |
|
||
| C | C级 | 一般客户/供应商 |
|
||
| D | D级 | 潜在客户/供应商 |
|
||
|
||
---
|
||
|
||
## 10. 索引设计规范
|
||
|
||
### 10.1 索引命名规范
|
||
|
||
| 索引类型 | 命名格式 | 示例 |
|
||
|----------|----------|------|
|
||
| 主键 | pk_表名 | pk_sl_order |
|
||
| 唯一索引 | uk_表名_字段 | uk_sl_order_code |
|
||
| 普通索引 | idx_表名_字段 | idx_sl_order_date |
|
||
| 组合索引 | idx_表名_字段1_字段2 | idx_sl_order_client_date |
|
||
|
||
### 10.2 必建索引
|
||
|
||
| 场景 | 索引字段 | 说明 |
|
||
|------|----------|------|
|
||
| 主键 | xxx_id | 主键自动创建 |
|
||
| 租户 | tenant_id | 多租户隔离 |
|
||
| 编码 | xxx_code + tenant_id | 编码唯一 |
|
||
| 外键 | 关联字段ID | 关联查询 |
|
||
| 日期 | xxx_date | 范围查询 |
|
||
| 状态 | status | 条件筛选 |
|
||
|
||
### 10.3 索引设计原则
|
||
|
||
1. **主键索引**: 使用自增bigint,避免UUID
|
||
2. **唯一索引**: 编码字段 + tenant_id 组合唯一
|
||
3. **外键索引**: 所有外键字段必须建立索引
|
||
4. **组合索引**: 遵循最左前缀原则
|
||
5. **避免冗余**: 不要在已有索引字段上重复建索引
|
||
|
||
---
|
||
|
||
## 11. ER图
|
||
|
||
### 11.1 销售模块ER图
|
||
|
||
```
|
||
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||
│ md_client │ │ erp_sl_contract │ │ erp_sl_order │
|
||
│ (客户档案) │<──│ (销售合同) │<──│ (销售订单) │
|
||
└──────────────────────┘ └──────────┬───────────┘ └──────────┬───────────┘
|
||
│ 1:N │ 1:N
|
||
▼ ▼
|
||
┌──────────────────────┐ ┌──────────────────────┐
|
||
│erp_sl_contract_line │ │ erp_sl_order_line │
|
||
│ (合同明细) │ │ (订单明细) │
|
||
└──────────────────────┘ └──────────────────────┘
|
||
│
|
||
┌──────────────────────────────────────────────────┤
|
||
│ │ │
|
||
▼ ▼ ▼
|
||
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||
│ erp_sl_deliver │ │ erp_sl_invoice │ │ erp_sl_saleback │
|
||
│ (发货单) │ │ (销售发票) │ │ (退货单) │
|
||
└──────────┬───────────┘ └──────────┬───────────┘ └──────────┬───────────┘
|
||
│ 1:N │ 1:N │ 1:N
|
||
▼ ▼ ▼
|
||
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||
│ erp_sl_deliver_line │ │erp_sl_invoice_line │ │erp_sl_saleback_line │
|
||
│ (发货明细) │ │ (发票明细) │ │ (退货明细) │
|
||
└──────────────────────┘ └──────────────────────┘ └──────────────────────┘
|
||
```
|
||
|
||
### 11.2 采购模块ER图
|
||
|
||
```
|
||
┌──────────────────────┐ 1:N ┌──────────────────────┐
|
||
│ erp_po_supplier │◄──────────────►│ erp_po_order │
|
||
│ (供应商) │ │ (采购订单) │
|
||
└──────────────────────┘ └──────────┬───────────┘
|
||
│ 1:N
|
||
▼
|
||
┌──────────────────────┐
|
||
│ erp_po_order_line │
|
||
│ (采购明细) │
|
||
└──────────┬───────────┘
|
||
│
|
||
┌───────────────────────────────────────┼───────────────────────────────────────┐
|
||
│ │ │
|
||
▼ 1:N ▼ 1:N ▼ 1:N
|
||
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||
│ erp_po_checkin │ │ erp_po_invoice │ │ erp_po_reject │
|
||
│ (采购到货) │ │ (采购发票) │ │ (采购退货) │
|
||
└──────────┬───────────┘ └──────────┬───────────┘ └──────────┬───────────┘
|
||
│ 1:N │ 1:N │ 1:N
|
||
▼ ▼ ▼
|
||
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||
│erp_po_checkin_line │ │erp_po_invoice_line │ │ erp_po_reject_line │
|
||
│ (到货明细) │ │ (发票明细) │ │ (退货明细) │
|
||
└──────────────────────┘ └──────────────────────┘ └──────────────────────┘
|
||
```
|
||
|
||
### 11.3 生产计划模块ER图
|
||
|
||
```
|
||
┌──────────────────────┐ 1:N ┌──────────────────────┐
|
||
│ erp_sl_order │◄──────────────►│ erp_mp_plan │
|
||
│ (销售订单) │ │ (生产计划单) │
|
||
└──────────────────────┘ └──────────┬───────────┘
|
||
│ 1:N
|
||
▼
|
||
┌──────────────────────┐
|
||
│ erp_mp_plan_line │
|
||
│ (生产计划明细) │
|
||
└──────────┬───────────┘
|
||
│
|
||
┌───────────────────────────────────────┼───────────────────────────────────────┐
|
||
│ │ │
|
||
▼ 1:N ▼ 1:N ▼ 1:N
|
||
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||
│ erp_mp_mbom │ │ erp_mp_purchase │ │ erp_mp_parts │
|
||
│ (物料清单) │ │ (采购计划单) │ │ (零部件订单) │
|
||
└──────────┬───────────┘ └──────────────────────┘ └──────────────────────┘
|
||
│ 1:N
|
||
▼
|
||
┌──────────────────────┐
|
||
│ erp_mp_mbom_line │
|
||
│ (物料清单明细) │
|
||
└──────────────────────┘
|
||
```
|
||
|
||
### 11.4 基础数据关联
|
||
|
||
```
|
||
┌──────────────────────┐
|
||
│ erp_md_item_type │
|
||
│ (物料分类) │
|
||
└──────────┬───────────┘
|
||
│ 1:N
|
||
▼
|
||
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||
│ erp_wm_warehouse │ │ erp_md_item │ │ erp_md_bom │
|
||
│ (仓库) │ │ (物料档案) │ │ (BOM档案) │
|
||
└──────────┬───────────┘ └──────────┬───────────┘ └──────────┬───────────┘
|
||
│ │ │
|
||
▼ │ ▼
|
||
┌──────────────────────┐ │ ┌──────────────────────┐
|
||
│ erp_wm_stock │◄────────────┘ │ erp_md_bom_line │
|
||
│ (库存) │ │ (BOM明细) │
|
||
└──────────────────────┘ └──────────────────────┘
|
||
```
|
||
|
||
---
|
||
|
||
## 附录A: API模块路径对照
|
||
|
||
| 模块 | API前缀 | 说明 |
|
||
|------|---------|------|
|
||
| 系统管理 | /system | 用户、角色、部门等 |
|
||
| 基础数据 | /md | 物料、BOM、单位等 |
|
||
| 仓库管理 | /wm | 仓库、库存、出入库等 |
|
||
| 销售管理 | /sl | 客户、订单、发货等 |
|
||
| 采购管理 | /po | 供应商、采购订单等 |
|
||
| 生产计划 | /mp | 生产计划、物料清单等 |
|
||
| 生产执行 | /pm | 工单、生产任务等 |
|
||
| 研发管理 | /rd | 研发BOM、样品等 |
|
||
| 委外管理 | /pu | 委外订单、委外加工等 |
|
||
| 财务管理 | /fd | 应收应付、凭证等 |
|
||
|
||
---
|
||
|
||
## 附录B: 数据权限说明
|
||
|
||
### B.1 租户隔离
|
||
|
||
所有业务表都包含 `tenant_id` 字段,用于多租户数据隔离。
|
||
|
||
**隔离规则:**
|
||
- 查询时自动追加租户条件
|
||
- 新增时自动填充租户ID
|
||
- 租户之间数据完全隔离
|
||
|
||
### B.2 数据权限范围
|
||
|
||
| 权限类型 | 说明 | 实现方式 |
|
||
|----------|------|----------|
|
||
| 全部数据 | 可查看所有数据 | 不追加条件 |
|
||
| 部门数据 | 只能查看本部门数据 | dept_id = 当前部门 |
|
||
| 部门及以下 | 可查看本部门及下级部门数据 | dept_id IN (部门树) |
|
||
| 仅本人数据 | 只能查看自己创建的数据 | create_by = 当前用户 |
|
||
|
||
---
|
||
|
||
## 附录C: 未覆盖模块说明
|
||
|
||
> 以下模块已通过Swagger API发现但尚未纳入本数据字典,详见 `erp数据库设计-Swagger补充模块.md`
|
||
|
||
### C.1 未覆盖模块清单
|
||
|
||
| 模块 | API前缀 | Java包前缀 | 估计表数量 | 说明 |
|
||
|------|---------|-----------|-----------|------|
|
||
| 生产管理(车间) | /prs | Prs* | ~20 | 生产订单、领料、完工、入库、报工、指令单等 |
|
||
| 研发管理 | /rd | Rd* | ~10 | 产品BOM(EBOM)、样品配方、孪生物料、放量、设置 |
|
||
| 委外管理 | /pu | Pu* | ~14 | 委外商、委外订单、到货、入库、发料、退料、发票 |
|
||
| 财务管理 | /fd | Fd* | ~30+ | 期间、账套、科目、凭证、应收应付、收付款、成本核算等 |
|
||
| 车间设置 | /prs (基础) | Prs* | ~8 | 生产线、班组、工人、工种、工序段、工艺路线、设备 |
|
||
|
||
### C.2 Swagger API揭示的命名差异
|
||
|
||
目标ERP系统的实际API字段命名与本文档中基于行业惯例设计的字段命名存在差异:
|
||
|
||
| 概念 | 本文档命名 | Swagger实际命名 | 差异说明 |
|
||
|------|-----------|---------------|---------|
|
||
| 主键 | xxx_id (如 order_id) | uniqueId | ERP统一使用uniqueId |
|
||
| 物料编码 | item_code | invCode | inv = Inventory |
|
||
| 物料名称 | item_name | invName | inv = Inventory |
|
||
| 物料分类ID | item_type_id | invSortId | sort = 分类 |
|
||
| 跟单编号 | track_code | ppNumber | 全局唯一 |
|
||
| 操作员 | operator_name | userOper | |
|
||
| 审核员 | approver_name | userCheck | |
|
||
| 审核日期 | approve_date | checkDate | |
|
||
| 业务状态 | business_status | workStatus | |
|
||
|
||
> **说明**: 本文档中的字段命名遵循行业通用规范,便于理解和对接。实际集成时需根据API字段名进行映射转换。具体映射关系详见 `erp数据库设计-Swagger补充模块.md` 第1节。
|
||
|
||
### C.3 相关文档
|
||
|
||
| 文档 | 说明 |
|
||
|------|------|
|
||
| `erp数据库设计-Swagger补充模块.md` | Swagger API分析的完整报告,含所有缺失模块的字段定义 |
|
||
| `目标erp系统接口文档Swagger-API.md` | 已整理的API接口文档(含9个模块) |
|
||
| `ERP系统接口API文档.md` | API接口文档的引用版本 |
|
||
|
||
---
|
||
|
||
## 修订历史
|
||
|
||
| 版本 | 日期 | 修订内容 | 修订人 |
|
||
|------|------|----------|--------|
|
||
| 1.0.0 | 2026-01-25 | 初始版本 | System |
|
||
| 1.1.0 | 2026-02-06 | 增加附录C:基于Swagger API分析的未覆盖模块说明和命名差异对照 | System |
|