BOM表智能生成系统 毕业设计 SpringBoot+Vue+Mybatis
作者主页:knit
作者简介:9年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN博客专家
摘 要
有些特殊单位在制作 BOM 表时出于保密要求不能连接外网,传统的手动登记方式耗时费力不利于高效研发和生产, 因此,采用前后端分离开发模式,后端使用 SpringBoot 框架,Mybatis 数据连接,前端使用Vue 渐进式框架,element-ui 前端组件, 设计并实现了 BOM 表智能生成系统,实现物料从设计部到采购部再到仓储的离线管理,实现了对物料离线管理的目标。该系统具 备极高的可靠性和实用性,能简化保密部门对 BOM 表的录入过程,为企业提供离线整理平台。
关键词:BOM 表智能生成;离线数据管理;SpringBoot 框架;Vue 框架;
0 引 言
企业研制新型产品的过程正处于产品不成熟的阶段, 需要一边生产产品一边对新产品进行试验,新产品试验反馈 的结果可用于随时调整产品设计,由于产品设计的变更需要 适时调整产品物料清单(Bill of Material, BOM)。BOM 表 是企业资源计划系统(Enterprise Resource Planning, ERP) 运算的数据基础,与企业各部门的业务活动相连甚密,一旦 BOM 发生改变,之前已经生成的大量单据都会失去准确性, 只能根据新的 BOM 重新进行生成物料需求计划(Material Requirement Planning, MRP)运算,必须手工实行善后处理 工作,出于保密方面的考虑不能连接外网与 ERP 系统同步 数据,给 BOM 表编辑人员带来巨大的工作量。有时由于试 验需要紧急采购物资,而这些物资并不具备企业的物资编码, 由于不能连接外网,ERP 系统不具备对临时物资进行有效管 理的能力。本系统可解决这两种问题,为工作人员提供便捷 化、信息化的 BOM 表智能生成平台。
1 系统需求分析
基于企业保密要求,为解决不能连接互联网交换信息的 问题,打造 BOM 表智能生成系统及时管理临时物资以及减 轻操作人员的工作量,就 ERP 系统与 BOM 表智能生成系统 不能直接通过网络互联,也不能直接通过数据库直接交换数 据的问题,经过反复思考,形成通过 Excel 模板在两个系统 之间交换数据的方案(如图 1 所示):
1)ERP 系统导出存货档案数据(模板文件),提取所 需的基础数据。
2)BOM 表智能生成系统导入存货档案(模板文件), 存入数据库,实现基础数据的同步。
3)BOM 表智能生成系统根据设计人员明细表 / 输入数 据,自动生成 BOM 表。
4)BOM 表智能生成系统导出BOM 表。
5)将 BOM 表导入 ERP 系统中,实现两个系统的数据 同步。
为满足系统需求,设计基础数据管理模块、明细表录入 模块、BOM 表智能生成模块等:
1)基础数据管理模块。包括 ERP 系统现有基础数据导
入该系统数据库,新增临时无编码物资数据以 Excel 表格形 式导出无编码物资存入 ERP 系统。
2) 明细表录入模块。生产设计部门可高效便捷地录入 设计 BOM 表,并在统一平台上供工艺设计部门继续编辑。
3)BOM 表智能生成模块。 以明细表导入新建生成 BOM 表、手动新建 BOM 表、复制已有 BOM 表等多种方式 智能快捷生成 BOM 表。
图 1 系统组成
1.1 存货档案数据管理模块需求分析
存货档案数据管理模块提供存货名称、存货编号、规格 型号、产地厂牌、存货代码、存货大类名称编码、存货大类、 建档人、建档日期等信息,可以在此模块中导入、浏览存货 档案信息。如图 2 所示为存货档案数据管理流向图。
图 2 存货档案数据管理流向图
1.2 明细表录入需求分析
明细表录入模块为设计人员提供在线快捷录入明细表 功能,输入框可跨字段模糊搜索,提高录入速度,录入完 成后直接保存到数据库,工艺设计部门人员可在此基础上进 行 BOM 表的编辑操作。如图 3 所示为明细表录入和管理数 据流向图,明细表由多人录入,是否生成明细表需要管理员 审批,若某明细表的审批结果为合格,则该张明细表流入 BOM 表生成模块,若某明细表的审批结果为拒绝,则该明 细表就会返回到录入人员那里进行整改处理。
图 3 明细表录入数据流向图
1.3 BOM 表智能生成模块需求分析
BOM 表智能生成模块主要提供三大功能,分别是 BOM 表录入、BOM 表生成和 BOM 表审核,并提供三种 BOM 表 录入方式,一是基于导入明细表的方式生成 BOM 表,相比 于传统的手动录入节省了大量的时间,无须再手动输入已 有明细表的内容;二是以复制其他表的方式生成 BOM 表, 如果 BOM 表有部分与其他 BOM 表重合的地方则可复制该 表,并在此基础上继续进行新 BOM 表的编辑工作;三是直 接手动录入 BOM 表,但此时直接手录 BOM 表也与传统录 入 BOM 表的方式有所不同,增加了快捷录入方式。
如图 4 所示为 BOM 表数据流向图,可以在页面中看到 所有已经审批的 BOM 表,也可以通过点击的方式查看自己 制作的 BOM 表。
图 4 BOM 表智能生成模块数据流向图
2 系统设计
2.1 系统总体框架
为提高开发效率和可扩展性,采用前后端分离的开发模 式,前端使用 Vue 渐进式框架,界面展示采用 elemnet-ui 组 件提高美观度,后端采用 SpringBoot 框架和 Mybatis 驱动器, 以此搭建一个 B/S 架构的系统。如图 5 所示为 BOM 表智能 生成系统总体架构图。
图 5 BOM 表智能生成系统架构图
架构图总共分为三个板块,每个板块中有对应各个功能 实现的具体小模块。1 过程表示不同用户所能执行操作的不 同权限,前端在调用接口时携带用户权限标识,后台识别用 户权限提供该权限对应的功能操作;2 过程为后台代码编写 时使用 SpringBoot 框架整合 mybaits 进行持久层框架配置, 用以后续进行数据库操作;3 过程为后台服务整合了 mybaits 框架后对数据库进行具体的操作,根据后台从前端获取到的 具体服务需求,对数据库进行相应的增加、删除、修改和查 询操作;4 过程为后台为前端提供服务接口返回前端需要的 数据内容,以此实现前后端分离开发模式的数据交互,前端 根据后台呈递的 JSON 字符串格式的数据进行解析并实现数 据的可视化展示;5 过程为不同用户角色所能看见的不同操 作界面,避免不同用户误操作的可能,提高本系统的安全性 和专业性。
2.2 系统详细设计
2.2.1 存货档案数据管理设计与实现
如图 6(a)所示为存货档案数据管理流程图。明细表 设计人员在进入该系统录入界面时点击编辑按钮,解锁表格 操作,聚焦表格单元输入框,通过 focus 事件从前端获取界 面数据操作信号发起请求,调用后端获取存货档案信息接口, 使用 Mybatis 的 helperPage 分页方式,分页获取所有存货档 案信息,其内容有页码、每页展示条数和内容、总页数、当 前是否为首页或末页,并以 JSON 字符串的形式将内容传递 给前端,前端将得到的字符串解析后,判断首页末页信息, 展示当前页码,将所获取的本页数据内容渲染到页面展示给 用户,倘若数据库中没有相应数据,则可以手动输入物料名 称,并在生成 BOM 表后,以 Excel 的形式导出新增物料, 传入 ERP 系统实现数据同步。
2.2.2 明细表录入设计与实现
操作人员进入系统明细表部分,前端请求后台,查询到 所有明细表列表,使用 Mybatis 的 helperPage 方法从数据库 中获取分页数据(数据内容为各个明细表的名称),将获取 到的明细表名称列表渲染到页面表格中,查看所有明细表及 自己编辑的明细表是否通过审核。在列表中筛选查看自己编 辑的明细表,同时可以选择增加、删除、修改以及审核明细 表。明细表录入流程如图 6(b)所示。
2.2.3 BOM 表智能生成系统设计与实现
操作人员进入该系统 BOM 表部分,前端会调用接口展 示当前所有的 BOM 表,管理员用户可以点击未审核筛选出 当前没有审核的明细表,并在列表中展示当前所有未审核的 明细表。
BOM 表生成有三种实现方式,第一种方式是选择明细 表生成 BOM 表,第二种方式是直接手动输入 BOM 表,第 三种方式是复制现有 BOM 表,在此基础上修改而成。BOM表生成流程如图 6(c)所示。
图 6 各模块流程图
2.3 数据库设计
根据 BOM 表智能生成系统业务,主要设计了如图 7 所 示的业务表。
图 7 BOM 表智能生成系统 ER 图
1)用户表用于记录用户信息、用户角色信息及审核信息。
2)权限明细表用于记录用户权限以及各权限对应的操 作详细内容。
3)记录物料信息,各数据表之间的关系如图 7 所示。
4) 明细表用于记录明细表信息。
5)BOM 表用于记录 BOM 表信息。
6)新增存货表用于记录临时新增存货,便于新增存货 的导出。
7)物料管理表用于记录所有物料信息。
8)存货分类表用于记录所有物料分类信息。系统所用 的各个数据表之间的关系如图 7 所示。
3 系统实现与测试
3.1 系统实现
本系统采用前后端分离的开发方式,前端采用 Vue 渐进 式框架开发,网页界面绘制使用 elemnt-ui 组件优化界面美观 度的同时加快系统开发进程;后台使用 SpringBoot+MyBatis+ MySQL 数据库开发平台,开发环境为java jdk1.8 ,开发时 数据库采用 Navicat 可视化工具辅助观察后台服务情况,实 现 BOM 表智能生成系统存货档案数据管理、明细表录入管理、BOM 表生成管理、用户权限管理和分配等功能。
如图 8 所示为基础数据上传与浏览界面,可将从 ERP 系统导出的基础数据上传到本系统的数据库中;如图 9 所示 为明细表编辑、审核与浏览界面,明细表编辑界面具有数据 审查功能,当为红色时表示数量栏未填写;如图 10 所示为 BOM 表编辑与浏览界面,可在此界面中查看所有明细表和 我所编辑的明细表,点击导出新增,则新增物料栏变红。
3.2 系统测试
为测试BOM 表智能生成在线系统功能是否能正常使用, 根据系统需求模块设计了如表 1 所示的功能测试用例,从不 同用户角色功能和不同模块等方面对系统进行了测试验证。 测试结果表明,BOM 表智能生成在线系统的存货档案数据 管理、明细表录入、BOM 表智能生成模块所有功能均测试 通过,使用 Navicat 数据可视化工具辅助查看数据内容,可 观察到功能测试结果与预期效果一致,界面操作流畅无异常 且排版美观舒适,网页在线表格录入数据稳定无卡顿,模糊 搜索响应及时无明显延迟,数据传输稳定,根据开发需求实 现的 BOM 表智能导出系统可提供良好的用户交互体验,在 系统后续扩展测试时,会加强系统性能测试,进一步缩短操 作响应时间。
图 8 存货档案数据上传与浏览界面
图 9 明细表编辑与浏览界面
图 10 BOM 表编辑与浏览界面
表 1 功能测试用例及测试结果
功能模块 | 测试功能点名称 | 测试结果 |
存货档案数据管理 | 导入新增数据 | 通过 |
跨字段模糊查询基础数据 | 通过 | |
明细表管理 | 新增 | 通过 |
删除 | 通过 | |
修改 | 通过 | |
审核 | 通过 | |
BOM 表管理 | 查看 | 通过 |
新增 | 通过 | |
审核 | 通过 | |
系统管理 | 注册特殊身份用户操作测试 | 通过 |
动态修改不同等级权限 | 通过 |
4 结 论
本文立足于保密单位对数据需要保密同时也需要单位 内部共享数据在线智能生成 BOM 表的需求,设计并实现了 BOM 表智能导出系统,本系统采用 B/S 架构和前后端分离 的开发模式,在提高代码可扩展性的同时缩短开发周期,前 端采用 Vue 框架,后台采用 SpringBoot 框架整合 MyBaits 进 行功能服务接口开发,完成了本系统存货档案数据模块、明 细表模块、BOM 表模块等功能的开发,从而实现了将数据 录入基础数据库到明细表录入再到 BOM 表生成,为工艺制 作部门制作 BOM 表提供了便捷的服务。
该系统具备极强的可行性与实用性,为 BOM 表制作部门提供便捷的同时将数据库同步到 BOM 制作和生成平台, 节省了设计部门和工艺制作部门来回沟通的时间,并能够及 时同步 ERP 系统中的数据。后续如果时间充足会继续从两 个方面优化本系统,一方面是优化现有代码,进一步提高代 码性能和可复用性,删除冗余代码,在已有基础上继续优化 与用户的交互性;另一方面会考虑增加功能模块接入仓储物 流信息,帮助企业进一步管理产品,使本系统具有更大的现 实意义和使用价值。
参考文献
[1] 杨鑫 .XX 军工企业 ERP 实施困境及其对策 [D]. 湘潭:湘 潭大学,2009.
[2] 徐小辉,刘江涛,高涵,等 . 基于 SpringBoot+Vue 框架的 采气方案系统开发 [J]. 计算机仿真,2021 ,38(6):248-250+382.
[3] 韩佳彤,杜芳,甄必鑫,等 . 基于 SpringBoot 的分布式市 政运维分析平台 [J]. 内蒙古大学学报:自然科学版,2022,53(3): 309-316.
[4] 郭建卫 . 基于 SpringBoot+Mybatis+Vue 的学生德育量化考 核系统设计与实现 [J]. 现代信息科技,2023 ,7(1):18-22.
[5] 银莉,杜啸楠 . 基于 SpringBoot 和 Vue 的社区服务平台设 计与实现 [J]. 电子技术,2022 ,51(12):182-183.
[6] 王丹,孙晓宇,杨路斌,等 . 基于 SpringBoot 的软件统计 分析系统设计与实现 [J]. 软件工程,2019 ,22(3):40-42.
CSDN-Ada助手: 推荐 MySQL入门 技能树:https://edu.csdn.net/skill/mysql?utm_source=AI_act_mysql
???day lily: 我想要,怎么联系您
2301_81311617: 可以分享我一下嘛哥?
毕业设计精选: 私聊,或百度搜 寻码网可以下载
蓝知乐: 你好呀,有这个相关的系统配套源码嘛