基于Spring Boot的食品企业ERP管理系统设计与实现

2022-05-30 06:15丁润东王亚肖念昕张志扬周子康马唯一
电脑知识与技术 2022年30期
关键词:食品企业

丁润东 王亚 肖念昕 张志扬 周子康 马唯一

摘要:随着互联网技术的不断发展,中小型食品加工企业也逐步利用现代化信息技术实现管理。为了提高产品信息的管理效率,通过基于Spring Boot框架开发设计了食品企业ERP管理系统。该系统整体采用B/S架构实现,分为前端界面和后端服务两个部分组成,用户可通过Web浏览器访问后台数据。其中,系统前台采用了HTML+JavaScript+CSS技术,结合前端框架实现;后台采用了Java Web中的Spring Boot框架技术,结合MySQL数据库实现。食品企业借助该平台可以实现生产、物流以及销售等环节信息实时更新及时跟踪,推进企业的现代化管理模式,同时也为后续食品安全溯源提供了基础。

关键词:食品企业;ERP;B/S;Spring Boot;Java

中图分类号:TP311      文献标识码:A

文章编号:1009-3044(2022)30-0044-04

开放科学(资源服务)标识码(OSID):

1 引言

随着互联网时代的到来,食品生产企业数量快速增长,但在食品行业中,中小型食品企业占据大半,而这些企业普遍缺乏有效的科学管理,从而导致企业在运营的时候造成很多资源的浪费。所以,加强企业信息化管理是很多中小型食品企业急需解决的问题。ERP管理系统是在基础信息之上使用系统化管理理念,通过一个管理平台为企业运营和管理者提供一个科学管理思路,为很多中小型食品企业带来了科学管理的解决方案[1]。企业管理者可以使用ERP系统从所销售商品的底层信息开始收集整理,从而使商品的关键信息得到了迅速收集与高效利用,让企业的上层及时、有效地掌握企业当前的业务情况,以便快速、准确地做出发展决策[2]。食品ERP管理平臺用于收集管理产品在整个生命周期内产生的数据信息。基于云平台进行食品溯源移动端应用开发,不受限于物理设备,实现用户的实时查询,并且确保数据的完整性和安全性。规范了企业管理的流程,降低了企业的运行成本,同时维护了消费者的知情权益[3]。

2 系统需求分析

食品ERP系统需求主要从项目的建设实际出发,可以分为业务规范性需求、系统功能性需求、系统非功能性需求。

企业想要获得有效的发展,需要满足业务规范性的需求。目前中小型食品企业在运营中主要面临信息化水平较低、生产计划缺乏科学性、货品库存管理不规范、管理者缺乏精准数据支持进行商业决策等问题。为了解决上述问题,企业需要借助信息化技术对生产加工中的产品信息、运输中的物流信息、产品销售信息等进行科学化管理。

针对食品企业实际的功能需要,需要设计实现生产信息管理模块、物流信息管理模块、销售信息管理模块。这些功能模块作为ERP系统的业务核心,可以解决企业对于食品产品的加工、运输、销售信息的获取和管理,并且可以帮助管理层获取精确的数据以便进行及时、准确的商业决策。

在建设ERP功能需求中,企业系统的非功能需求也是必不可少的一部分。ERP系统在业务功能的开发基础上需要满足安全稳定的需求,在系统的控制使用上应该赋予权限管理,并且通过操作日志对使用者操作的情况和系统登录情况进行记录。ERP系统也需要满足流程规范需求,使得食品企业的运营工作简单、便捷。同时ERP系统也需要满足可拓展性需求,在建设系统的同时要考虑到系统拓展的问题。

3 相关技术

系统采用B/S架构[4],用户可以在前端界面通过Web浏览器登录,通过登录界面登录后,自主访问后端管理系统。以Java Web平台作为Web应用的开发平台,支持跨平台使用和部署服务器,系统不会因为服务器的操作系统不同而造成部署限制[5]。支持Java Web平台的开发工具比较常用的有Eclipse和Intellij IDEA,由于IDEA具有先进智能的代码提示、对重构的优越支持、简洁易用的GUI界面、完备的代码检查、动态语法的检测、丰富多样的版本控制功能极大地方便了开发者对于代码的编写,修改与上传提交,因此,本系统采用它作为编译器进行系统开发。另外,使用jdk1.8版本、maven3.2版本[6]、mysql8.0等基础工具环境进行开发。

3.1 前端相关技术

系统前端采用HTML、CSS、JavaScript、JQuery 1.8.0、EasyUI1.9.4、Bootstrap等主流前端技术进行前台页面系统开发。

超文本标记语言HTML常用作网页开发。CSS是用来实现HTML文件样式的计算机语言。JavaScript是一种具有函数优先的轻量级、解释性的编程语言,支持面向对象编程,常用作Web页面开发。JQuery是一个快速、简单的JavaScript框架,使用JQuery框架可以提高网页开发效率。EasyUI是基于JQuery的一组UI插件集合,可以帮助Web开发者更为轻松地打造功能丰富、界面美观的UI界面。Bootstrap是基于HTML、CSS、JavaScript开发的简洁、直观的前端开发框架,使得Web开发更加迅捷。

3.2 后端相关技术

系统后端采用基于Java的SpringBoot2.0框架[7]搭建。Spring Boot框架因其轻量、低耦合、简单易于扩展等特点深受开发人员的一致好评,目前是Java里面主流框架之一。数据持久层采用MyBatis1.3.2框架[8],使用MyBatis框架可以使开发者将注意力都集中在SQL语句本身,无须花费时间处理驱动加载等过程[9]。日志管理采用Log4j2.10.0框架,整体项目采用Maven3.2.3管理。

3.3 系统技术架构

该系统整体部署在Ubuntu操作系统中,是基于软件工程中的三层架构模型进行开发设计的,总体可以划分为三层:表示层、业务层、数据层。如图1所示。

其中表示层主要实现与用户进行直接交互,包括用户界面的展示以及用户数据的展示,通过HTML、CSS、JQuery等技术实现,通过Ajax接口与业务层进行通信。

业务层主要负责系统内部各个业务数据的运算工作,为整个系统提供逻辑运算的支持,由业务功能模块和日志模块等一些模块组成,分为Controller和Service两层。该层为中间层,负责连接表示层和数据层。业务层将数据层中的数据进行逻辑运算后展示在表示层中,供用户查询,并且用户可以通过表示层发出增、删、改、查等指令,调用业务层进行逻辑运算后,传递到数据层对数据库的数据进行相应的操作。

数据层是连接MySQL数据库[10],主要负责连接数据库实现数据持久化以及对数据的增、删、改、查等操作。该层为最后一层,数据层和业务层中操作产生的日志都会通过日志记录模块进行处理保存,保证每一步的操作可以追溯源头。权限控制则贯穿整个三层架构,保证系统的安全稳定。

4 系统设计

4.1 系统流程设计

ERP系统数据是产品在整个生命周期中的产生的数据信息,企业管理人员和相关工作人员都可以通过ERP系统了解产品的市场情况。在数据采集中,需要专门的企业员工对各个环节产生的数据录入到ERP系统中。在食品生产中,企业生产人员将食品的基本信息录入到ERP中进行统一管理。在食品运输到某一站点后,企业仓储人员将食品的运输信息录入到ERP中进行管理。在食品进行网点销售的时候,企业的市场调查员将食品的销售情况录入到ERP中。系统具体流程设计如图2所示。

通过ERP系统,可以把数据直接以表格形式导出给相关工作人员,也可把食品基本信息导出生成QR Code二维码,通过标签打印机打印,作为产品的唯一标识,贴在产品的外包装上[11],为后期的食品溯源提供基础。

4.2 数据库设计

食品企业ERP管理系统的数据库主要实现对食品生产、物流、销售基本信息的管理,相关工作人员可以直接从数据库中导出数据,还可以生成QR Code二维码作为产品唯一标识贴在食品外包装上。当食品进行物流运输到达指定站点后,企业的仓库人员结合食品的唯一标识将物流信息采集录入到ERP系统中。当食品到达销售网点时,企业的工作人员结合产品的QR Code將食品的销售信息录入ERP系统中。

本系统主要涉及7个表,包括:用户信息表、用户角色表、用户角色模块关系表、操作日志表、产品基本信息表、产品物流信息表、产品销售信息表。用户信息表主要包括:用户名、登录名、密码、职位、所属部门、电子邮件、手机号码、是否为管理者、用户状态等字段。用户角色表主要包括:角色名称、用户ID、描述、删除标记。其中删除标记通过varchar类型定义,未删除代表0,删除代表1,默认为0。用户角色模块关系表主要包括:类别、类型、模块编号值、删除标记。操作日志表主要包括:用户编号、操作模块名称、客户端IP、创建时间、操作状态、操作详情。

下面主要展示与系统核心功能相关的产品基本信息表、物流信息表和销售信息表,如表1~表3所示。

4.3 系统实现

系统服务部署在Ubuntu18.04版本上,采用Nginx[12]负载均衡服务器进行服务分发。当用户以管理员的身份登录后,可以查看到系统提供的三个核心功能,分别为食品生产信息模块、食品运输信息模块以及食品销售信息模块,管理员可以实现对相关信息的管理。系统界面如图3、图4、图5所示。

食品生成信息管理模块,主要实现对商品的各方面生产信息进行管理的功能,如产品生产的二维码、生产企业、产品名称、生产日期、保质期等信息,如图3所示。

食品物流信息管理模块,主要实现对商品在运输中物流信息进行管理,如图4所示。

食品销售信息管理模块,主要实现对商品在销售过程中的信息进行管理,如图5所示。

食品导出功能实现,主要实现将后台数据库在前端显示的数据自动导出到本地电脑生成Excel表格,更方便地实现了数据与其他人共享,同时通过标签打印机,将Excel表格导入打印机App排版打印并粘贴到商品上,方便管理者和销售者进行检查,使产品生产以及运输过程信息透明公开。保护了消费者的知情权,无形中又树立了产品形象,如图6所示。

普通员工可以进行数据的查询、导出,而管理员除了以上功能外还可以对产品信息进行导入、增加、删除、修改等操作。

5 结束语

本文根据某食品企业的实际需求,以提升产品信息化管理效率为目的,开发设计了ERP管理系统。系统采用B/S架构系统,前端主要采用HTML、CSS、JavaScrip实现,而后端采用了Java Web中Spring Boot框架实现,搭建了Nginx服务器实现负载均衡处理。该系统满足了公司实际生产中对食品的生产信息、物流信息和销售信息进行统一信息化管理,方便了企业的运营和管理层的决策工作,也便于监管部门管理和审查信息。

参考文献:

[1] 唐美华.企业信息化ERP应用的现状与对策[J].电子技术与软件工程,2018(11):71.

[2] 尤耀华.分析ERP与电子商务的结合[J].信息技术与信息化,2018(4):195-197.

[3] 郭媛媛,冯玉强,刘鲁宁,等.企业文化对ERP消化吸收作用机理的多案例研究[J].科研管理,2016,37(7):89-96.

[4] 林伟婷.C/S与B/S架构技术比较分析[J].科技资讯,2018,16(13):15-16.

[5] 刘震林,喻春梅.基于MVC模式的JAVA Web开发与实践应用研究[J].网络安全技术与应用,2021(1):57-58.

[6] 邓志强,邓林强.Maven在Java项目开发中的应用[J].电子元器件与信息技术,2019,3(5):1-4.

[7] 张峰.应用SpringBoot改变web应用开发模式[J].科技创新与应用,2017(23):193-194.

[8] 荣艳冬.关于Mybatis持久层框架的应用研究[J].信息安全与技术,2015,6(12):86-88.

[9] Li Y Z,Gao S,Pan J,et al.Research and application of template engine for web back-end based on MyBatis-plus[J].Procedia Computer Science,2020,166:206-212.

[10] 胡敏.Web系统下提高MySQL数据库安全性的研究与实现[D].北京:北京邮电大学,2015.

[11] 刘韬,都洪韬,丁润东,等.基于QR Code二维码的食品溯源系统的开发与设计[J].阜阳师范大学学报(自然科学版),2021,38(4):89-94.

[12] Lei Z C,Zhou H,Ye S W,et al.Cost-effective server-side re-deployment for web-based online laboratories using NGINX reverse proxy[J].IFAC-PapersOnLine,2020,53(2):17204-17209.

【通联编辑:谢媛媛】

猜你喜欢
食品企业
食品企业社会责任缺失原因分析及对策研究
食品企业社会责任来源