公司动态
车间排产靠大白板和靠吼?我用飞算JavaAI搭了个生产工单MES
每天早晨进车间一群人围在白板前——“这个急单先做”、“那台机床空了没有”、“质检报告在哪”……晚上盘点对不上又跟上一轮一样的循环。我用一个周末在飞算 JavaAI 的帮助下搭了一个真正能跑的生产工单与排产管理 MES。白板上的工单就是账面上的糊涂账我在一家机械加工厂帮忙管生产调度岗位说得好听叫生产主管说白了就是个高级吼哥。我们厂不大不小8 台设备、15 个工单在路上跑。每天排产靠什么一块 1.2 米的白板。谁先上、谁插单、哪台机器空着全靠人在车间里喊。工单编号、工序进度、质检结果——写在便签纸上贴在白板边风一吹就掉。最头疼的是插单。客户一个电话说急生产主管就得在白板上擦了重写。晚上做完工日报组长报上来的数字和白板上的总量永远差一截。哪条工序漏记了哪个产品没检完没人说得清只能第二天一个个找师傅问。我需要一个能实时看到工单状态、设备负荷和排产甘特的系统。不求高大上但求车间里每个人打开手机或电脑就能知道今天做什么、做到哪了、下一单谁上。一次完整的操作线串联起所有页面为了避免把文章写成功能介绍我选择一条具体的操作线来讲从接到紧急插单到排出甘特、下发车间生产、再到质检完成、录入日报——这就是车间里每天都在发生的一条完整链路。这条操作线串联起了系统的所有核心页面也正好是飞算 JavaAI 生成这套 MES 后台的完整路径。Step 1在白板上开天窗 → 进入工单看板创建插单场景还原早上 8 点振华科技突然来电120 件基座壳体 B-200 要 7 月 14 号前交货不然产线要停。我进系统第一件事——建工单。进入工单看板/work-orders我点击新建工单选择产品基座壳体 B-200数量120 件优先级紧急截止日期7 月 14 日提交后这条工单WO-2407012出现在待排产列的最前面优先级标记为红色紧急标签发着闪烁动画。工单看板用的是一列五栏待排产→生产中→已暂停→已完工→已取消Kanban 布局。每张卡片上工单编号、产品名、客户、完成进度一目了然。紧急工单用红色 pulse 动画提醒比白板上写的急字醒目一百倍。这个页面的设计意图很简单让生产主管、车间主任、质检员各角色打开就能看清目前什么状态、有多少单不需要翻表格。Step 2排产甘特——解决这台机床谁占着的历史难题场景还原工单建好了但数控车床 #1 正在给 WO-2407005精密转轴做车削下午还要给齿轮组做。插单一进来立刻就是排产冲突问题。进入排产甘特/scheduling我看到了按设备维度的横向时间轴数控车床 #1早上 8:00–11:00 被 WO-2407005 占用立式铣床 #1下午 13:00–16:00 被 WO-2407010 占用而此时我的新单子 WO-2407012 的设备时间段标记为红色冲突这是整个系统最有价值的组件——工单排产甘特条。每个设备的水平时间轴用不同颜色编码工序类型靛蓝 → 下料天蓝 → 车削紫色 → 铣削青色 → 磨削金色 → 装配绿色 → 检验当两个工单的时间段重叠时甘特条会以红色虚线边框 pulse 动画高亮显示冲突区域。页面底部还有一个专门的冲突面板列出所有冲突的详细信息包括冲突的双方工单号和时段。为什么用甘特图而不是表格因为排产的本质就是哪个设备、什么时间、干哪个活——时间轴是三维信息最直观的压缩方式比看五列表格快得多。Step 3设备负荷一览——找到空闲机床场景还原看到冲突后我需要确认哪些设备有空闲。WO-2407012 用铣削工序立式铣床 #1 下午负荷 72%但 #2 铣床EQ-004只有 60% 负荷可以做。进入设备负荷/equipment8 台设备以卡片矩阵展示绿色 LED 圆点 → 运行中灰色 LED 圆点 → 空闲黄色 LED 圆点 → 维修中红色 LED 圆点 → 离线LED 圆点带发光效果一眼就能从卡片矩阵中扫到空闲设备。每张卡片还显示操作员、上次保养日期和下次保养日期——超过保养日期的会显示红色的已过期标记。这个页面替代了车间里喊一句XXX你那里有空吗的原始沟通方式。Step 4质检录入——生产中的质量门禁场景还原WO-2407004齿轮组 C-300昨天交货时出现了齿面硬度不达标被质检打回了不合格。我在系统里查一下质检记录确认问题工序避免同样的刀路复用。进入质检录入/qc-inspection我筛选出该工单的记录7月11日周质检抽检 10 件1 件缺陷结果不合格备注齿面硬度不达标暂停生产合格 / 不合格 / 返工分别用绿 / 红 / 黄三种状态徽章。我点击记录可以跳转工单详情查看该工单的完整处理时间线。质检录入页面的角色定位很清晰它不在好看而在可追溯。车间最怕的就是质量回溯时查不到记录最后只能靠好像是谁干的来推论。Step 5完工日报——看看今天干出来多少场景还原下午 5 点各工序师傅陆续报完工。陈师傅完成了 WO-2407010 的下料20 件王师傅完成了 WO-2407005 的磨削30 件。进入完工日报/daily-report按日期分组的完工记录以时间线形式呈现7月12日4 条记录合计完工 90 件7月11日2 条记录合计完工 350 件7月10日2 条记录…页面顶部三个指标卡今日完工数90、今日记录数4、累计完工数686。我可以按日期筛选也可以点击任意一条记录跳转对应工单详情。收工前我在日报页上又录了一条 WO-2407005 的磨削记录——30 件、王师傅、3 小时。白板时代写在本子上的东西现在点两下就录进去了晚上汇总再也不用逐个师傅问了。Step 6工单详情——整条链路的数字档案场景还原复盘一天的生产我打开 WO-2407005精密转轴 A-100的详情页看看这只工单从创建到今天的完整记录。进入工单详情/work-order/:id顶部工单编号 状态徽章 优先级 进度条中部五段状态时间线创建 → 排产 → 生产 → 质检 → 完工每个节点显示日期当前节点高亮带 pulse 动画下方该工单的质检记录按工序排列底部该工单的完工日报记录按日期排列五段时间线是这个页面最核心的组件。每个节点已完成 → 橙色实心圆 对勾当前节点 → 橙色空心圆 pulse 光圈动画未完成 → 灰色空心圆一条时间线胜过千言万语——生产主管扫一眼就知道工单卡在哪环节不用翻群聊天记录。从白板咆哮到数字甘特飞算 JavaAI 做了什么这条操作链看起来一气呵成但其实从想法到能跑的页面我只用了一个周末。真正干的活不是写代码——代码骨架全是飞算 JavaAI 帮我生成的。我的真实流程是这样的Prompt 输入在 IDEA 插件窗口里输入帮我做一个生产工单与车间排产 MES8 台设备、5 种产品、工单状态五段流转需求确认AI 分析了角色生产主管/车间主任/质检员、功能模块后给出确认界面接口与模型设计生成了工单、设备、排产计划、质检记录、完工日报五个核心实体和 API表结构 DDL自动生成了 MySQL 建表语句包括外键关联和索引生成计划列出了完整的前端路由、组件树、Store 和数据层文件结构源码生成100% 进度完成后导出了完整的 Vue 3 Vite Pinia 工程我的工作主要在三个方面页面逻辑编排AI 生成了零散的组件和页面但我需要把插单→排产→冲突检测→质检→日报这条完整的业务链路串起来让页面之间的跳转和数据联动形成闭环甘特组件设计时间轴定位算法、冲突检测逻辑、脉冲动画——这些业务特有的计算逻辑需要手动调优工业风 UI 打磨深石墨背景 安全橙强调色 LED 状态灯的视觉效果既要传递工业气息又不能太沉闷技术栈职责组件解决什么问题Vue 3 Composition API页面级的响应式状态管理Vue Router 411 个页面的路由分发与导航守卫Pinia7 个数据 Store 隔离状态工单/设备/排产/质检/日报数据层15 个工单 8 台设备 12 条排产 9 条质检 12 条日报纯 CSS 变量Factory Floor 暗色工业风主题最后说两句AI 生成代码这件事我现在理解得越来越清楚——它不是在代替你写代码而是在加速你从想法到原型的验证周期。过去搭一个能跑的 MES 原型不考虑后端光前端页面至少一周。现在周末两天一个上午建模和排产链路一个下午质量闭环晚上收工回家。周一早上打开白板我已经不需要它了——工单在系统里跑排产在甘特上画冲突自动标红。这就是我认为 AI 编程在这个阶段最务实的价值不是取代你而是让你更快地写出第一个能用的版本然后你再拿着这个版本去跟业务方对需求、反复迭代。真正业务逻辑的判断、数据口径的定义、异常分支的处理——这些依然是人来做。但脚手架、页面骨架、路由配置、状态管理这些在 2026 年还值得手写吗我觉得不。