当前位置: 首页 > news >正文

生产管理系统详解:高离散制造 – 生产订单数据库设计表(核心表结构)

设计目标

• 支持“按单生产”与“按任务生产”两种物料需求策略

• 允许同一条生产线在不同订单/任务里使用不同 BOM 版本

• 工序-部件-生产线三维校验:确保“工序需要的部件”与“生产线能加工的部件”匹配

• 工资既支持“按任务数量”又支持“按工序报工数量”

• 所有主数据支持版本号、生效/失效日期,满足未来工艺变更

流程说明

(含报价→订单→任务→工序→部件→BOM→物料需求→工资核算全链路)

0

数据库ER图

0

高离散制造 – 生产订单数据库设计表(核心表结构)

1. 产品主表 product

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

item_code

varchar(50)

料号

唯一

item_name

varchar(100)

名称

item_type

enum

成品/半成品/原料

default_bom_id

bigint

默认BOM

FK→bom_header

可空

unit

varchar(10)

单位

enable_flag

tinyint(1)

启用标记

1=启用

2. BOM主表 bom_header

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

product_id

bigint

产品ID

FK→product

bom_code

varchar(50)

BOM编码

唯一

version

varchar(10)

版本号

effect_date

date

生效日期

expire_date

date

失效日期

is_default

tinyint(1)

默认标识

1=默认

3. BOM子件表 bom_item

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

bom_header_id

bigint

BOM头ID

FK→bom_header

parent_item_id

bigint

父项料号

FK→product

child_item_id

bigint

子项料号

FK→product

qty

decimal(12,4)

用量

unit

varchar(10)

单位

loss_rate

decimal(5,2)

损耗率(%)

op_seq_start

int

起始工序序号

op_seq_end

int

结束工序序号

4. 生产线表 prod_line

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

line_code

varchar(20)

线体代码

唯一

line_name

varchar(50)

线体名称

dept

varchar(50)

所属车间

enable_flag

tinyint(1)

启用标记

1=启用

5. 生产订单表 prod_order

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

order_no

varchar(30)

内部订单号

唯一

source_quote_id

bigint

来源报价ID

FK→quote_main

可空

customer

varchar(100)

客户名称

product_id

bigint

产品ID

FK→product

qty_total

decimal(12,2)

订单数量

delivery_date

date

交货日期

bom_version

varchar(10)

使用BOM版本

status

enum

状态

见字典

created_at

datetime

创建时间

6. 生产任务单表 prod_task

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

prod_order_id

bigint

所属订单ID

FK→prod_order

task_no

varchar(30)

任务单号

唯一

product_name

varchar(100)

产品名称(冗余)

qty

decimal(12,2)

任务数量

plan_start

date

计划开工

plan_end

date

计划完工

status

enum

状态

见字典

7. 任务-生产线关系表 task_line

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

task_id

bigint

任务ID

FK→prod_task

line_id

bigint

生产线ID

FK→prod_line

seq

int

生产顺序

qty_line

decimal(12,2)

本线数量

status

enum

状态

8. 工序实例表 prod_process

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

task_line_id

bigint

任务线ID

FK→task_line

process_name

varchar(50)

工序名称

seq

int

顺序号

std_time

decimal(8,2)

标准工时

分钟

status

enum

状态

9. 任务部件表 prod_part

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

task_line_id

bigint

任务线ID

FK→task_line

part_name

varchar(100)

部件名称

material

varchar(50)

材质

length

decimal(8,2)

长度(mm)

width

decimal(8,2)

宽度(mm)

thick

decimal(8,2)

厚度(mm)

qty

decimal(10,2)

数量

unit

varchar(10)

单位

10. 物料需求表 material_requirement

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

prod_order_id

bigint

订单ID(可空)

FK→prod_order

task_id

bigint

任务ID(可空)

FK→prod_task

line_id

bigint

生产线ID

FK→prod_line

material_id

bigint

物料ID

FK→product

spec

varchar(100)

规格描述

qty_required

decimal(12,2)

需求数量

qty_on_hand

decimal(12,2)

库存数量

qty_ordered

decimal(12,2)

已采数量

status

enum

需求状态

11. 生产报工表 prod_report

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

task_line_id

bigint

任务线ID

FK→task_line

process_id

bigint

工序ID

FK→prod_process

worker_id

bigint

员工ID

FK→worker

qty_good

decimal(12,2)

合格数

qty_scrap

decimal(12,2)

废品数

start_time

datetime

开始时间

end_time

datetime

结束时间

wage_flag

tinyint(1)

已结算标记

0/1

12. 工资计算结果表 wage_calc

字段名

类型

描述

主键

外键

备注

id

bigint

主键

PK

自增

worker_id

bigint

员工ID

FK→worker

task_line_id

bigint

任务线ID

FK→task_line

可空

process_id

bigint

工序ID

FK→prod_process

可空

qty_basis

decimal(12,2)

计薪数量

unit_price

decimal(10,4)

单价

amount

decimal(12,2)

金额

calc_date

date

计算日期


关键校验与扩展字段(所有表通用)ext_json json  — 用户自定义字段tenant_id bigint — 多租户revision int — 乐观锁

13. 工序主数据表 process_master

字段名

类型

描述

主键

外键

备注

id

bigint PK

主键

自增

process_code

varchar(30)

工序编码

唯一

process_name

varchar(50)

工序名称

description

varchar(200)

描述

default_std_time

decimal(8,2)

默认标准工时(分钟)

enable_flag

tinyint(1)

启用标记

1=启用

14. 工序-生产线关系表 process_line_rel

字段名

类型

描述

主键

外键

备注

id

bigint PK

主键

自增

process_id

bigint

工序ID

FK→process_master

line_id

bigint

生产线ID

FK→prod_line

seq

smallint

在线内顺序

enable_flag

tinyint(1)

启用标记

1=启用

UNIQUE

(process_id, line_id)

防重复

15. 更新后的关系链示意
process_master 1 ──< process_line_rel >── prod_lineprod_line 1 ──< task_line >── prod_taskprod_task 1 ──< prod_process >── process_master

• 通过 process_line_rel 保证“工序-生产线”多对多,且在线内有序。

设计说明

主键设计:所有主表和明细表均采用BIGINT类型的自增主键,确保系统扩展性。

单据编号:bill_no字段用于业务单据的唯一标识,建议采用"业务类型前缀+年月+流水号"的生成规则。

状态管理:通过status字段实现工作流控制,不同状态对应不同的操作权限。

时间戳:create_time和update_time自动记录数据创建和修改时间,便于审计追踪。

审批流程:关键业务单据设计审批人和审批时间字段,支持多级审批。

外键关联:通过prod_order_id等字段与生产订单主数据关联,确保数据一致性。

扩展性:字段设计考虑了多币种、多单位、批次管理等企业级需求。

此设计可满足制造业生产管理的基本需求,可根据具体业务场景进行调整和优化。

案例演示:

http://dms.demo.07fly.xyz

开源地址:

https://gitee.com/07fly/07flyadmin

如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!

http://www.dtcms.com/a/549019.html

相关文章:

  • C语言字符串连接实现详解:掌握自定义strcat函数
  • 代码随想录第53天 | 图论二三题
  • 搜索引擎 网站地图做网站需要招聘内容
  • 具身智能3D数字人开放平台「星云」发布:魔珐科技让AI第一次拥有“身体”
  • 世冠科技受邀参加第三十二届中国汽车工程学会年会暨展览会
  • 服装网站的建设背景建设网站可选择的方案
  • 上传视频网站源码全国可信网站
  • 《Muduo网络库:实现TcpServer类终章》
  • 三数之和:用Java思路分析
  • 企业有没有必要自建一套培训考试
  • 测试开发话题06---测试分类(1)
  • 【Agentic RL专题】一、LLM agent 与 agentic RL
  • 使用Java做URL短连接还原长链接获取参数
  • 自己网站做电子签章有效么有哪些网站做汽车周边服务
  • 做网站去哪好在线表单 wordpress
  • 从信号零损耗到智能协同:高清混合矩阵全链路技术拆解,分布式可视化系统十大趋势重塑行业
  • 【超详细】MySQL事务面试题
  • Ubuntu(③vsftpd)
  • Ubuntu 25.10 发布,各种衍生版也发布
  • HUAWEI A800I A2 aarch64架构Ubuntu服务器鲲鹏920开启 IOMMU/SMMU 硬件虚拟化功能
  • GitHub 发布 Agent HQ:欢迎回家,智能体们
  • 使用 Python 将 PowerPoint 转换为 Word 文档
  • 怎么成立自己的网站公司网站建设案例
  • 做数码后期上数码网站企业推广文章
  • iOS 抓包工具实战 开发者的工具矩阵与真机排查流程
  • Spring Boot 整合第三方组件:Redis、MyBatis、Kafka 实战
  • 可视化图解算法66:两个数组的交集
  • 7 种方法:如何将视频从电脑传输到安卓手机
  • Qt GridLayout布局详解:从基础到高级技巧
  • BTreeMap 的 B-Tree 之心:性能与安全的 Rust 式演绎