基于SpringBoot的基建铁矿管理系统赵向娜

2025-03-05 00:00:00张金瑀龚炳江
电脑知识与技术 2025年3期
关键词:S架构管理系统

关键词:基建铁矿;管理系统;SpringBoot;前后端分离;B/S架构

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

文章编号:1009-3044(2025)03-0100-05 开放科学(资源服务) 标识码(OSID) :

0引言

基建铁矿指在获得采矿许可证后进入实质性准备和施工阶段的矿山,一般由一个或多个单项工程组成,这些单项工程属于一次性投入并具有完整使用功能的工程实体。铁矿建设期一般为4~6年,投资超过10亿,影响因素众多。在计算机技术普及的时代,构建管理系统的必要性较大。

1) 铁矿石作为钢铁生产的主要原材料,是制约钢铁行业发展的基础。铁矿石近三年的产量分布如图1 所示。虽然近三年产量较过去有所增加,但仍处于供不应求的状况。例如,2023 年铁矿石需求量约为14.52亿吨。据国家统计局公布的数据,2023年我国累计生产铁矿石9.9亿吨。每年都需要从国外进口30%以上的铁矿石,约4亿至5亿吨,价格谈判十分艰难。在这种情况下,我国在2022年提出了“基石计划”,以加快国内铁矿建设速度,摆脱对国外铁矿石进口的被动局面。这就需要提升基建铁矿管理水平,缩短建设工期,基建铁矿管理系统应运而生。

2) 基建铁矿建设涉及的工程类别多、功能系统复杂、施工周期长,参与方众多,数据量庞大,业务上需要一个管理系统。现代铁矿井型较大,在纵向上超过8~10个水平,相互工程的空间关系极为复杂,制约因素众多,如图2所示。工程类别上分为井巷工程、土建工程和安装工程;工程功能上分为采矿工程、选矿工程、尾矿工程、供水系统、供热系统、供电系统、通信系统、通风系统、排水系统、机修及辅助设施、行政与生活福利设施等;建设工期长达4~6年,各种不确定因素多,动态性强,规律性差,文档数据量大;建设管理上有多个施工队伍参与,业务流程复杂。因此,引入信息化管理系统,提高效率和决策准确性,已成为必然趋势。

3) 改变传统管理模式,适应信息化建设的需要,是时代的必然。目前,大多数基建铁矿的管理仍采用传统管理模式,以Word和Excel文档进行数据和文件管理。当需要查找相关数据时,耗时较长、数据反馈慢,有时还会遗漏统计数据,不仅劳动强度大、工作效率低,而且不能适应现场数据的及时调整,各级管理者较难掌握工程动态,难以满足对数据准确性和实时性的要求,对管理决策产生一定影响[1]。尤其当管理者调离原岗位时,无法移交完整资料。如果将各种数据统一存储在数据库中,而不是个人电脑中,则不受人事变化的影响。基建铁矿管理系统的开发研究不仅是信息技术的延伸,更重要的是企业管理的延伸,是矿山信息化、智慧化时代的必然。

基于以上认识,基建铁矿管理系统的开发具有时代性、紧迫性、专业性和高需求性,对促进铁矿建设具有较大的现实意义。

1系统功能模块设计

通过对基建铁矿需求分析,确定本系统包括9个功能模块,系统功能如图3、图4所示。

概预算功能模块是对工程项目的概算和预算进行管理,该模块可以实现概预算数据的录入、修改、查询、汇总和导出,并为其他各模块提供基础数据。它是各工程项目投资变化比对的基础。工程进度管理模块以概预算的工程明细为基础,可实现工程进度的录入和实时查看,同时将数据进行汇总上报,方便上级管理部门进行管理。合同管理模块是基建铁矿管理中必不可缺的一部分,各级部门通过该模块实现合同浏览、查询、合同变更、合同付款和支付进度等管理。设备订货和库存管理模块可以实现所有设备的录入和查询,并根据工程进度对各类设备订货进行自动提醒,形成设备订货采购申请和审核,通过爬虫技术优选供应厂商,为设备招标提供数据支撑。设备到货后记录设备初检情况、库存情况和使用情况。计划管理模块的主要功能是通过概预算库表对年度计划进行编制,形成Excel或报表,具有汇总、统计、排序和调整功能,并且具有上传、各级领导审批和下达功能。标准规范管理模块将基建矿山建设相关的国家标准、规范、规程和规定等集成于系统中,可实现即时查阅,方便工作。安全管理模块可以实现对基建铁矿安全日志、施工企业安全信息、施工设备检测记录、安全检查记录和安全例会记录等的管理。档案管理模块的主要功能是对初步设计说明书、初步设计图纸、施工图和各种管理文件进行管理,实现文档资料的电子化。系统设置模块提供用户对基本信息的维护。

2 系统实现的关键技术

2.1 系统架构

1) 采用B/S架构和腾讯云CVM服务器。该服务器能够根据业务需求进行弹性伸缩,可满足不同负载下的性能需求;它提供了多层次的安全防护机制,防止未经授权的访问和数据泄露。用户只需通过云端即可获取所需的计算资源和服务,按需付费,避免不必要的浪费。

2) 采用MVC编程思想,在综合考虑系统的可实现性、未来的可扩展性和系统性能的基础上,采用Java EE五层架构对系统进行开发,如图5所示。

3)采用SpringBoot简化配置。SpringBoot”的主要作用是快速构建庞大的Spring项目,其主要特性包括:①自动配置:能够根据项目中的依赖自动配置相应的组件,无须手动配置SpringBoot。在SpringBoot中,可以按照自动装配的规定,将自动加载的bean写在自己的jar包中的META-INF/spring.factories文件中,或者通过注解@Import导入时加载指定的类,这样配置类就会被SpringBoot自动加载到容器中。同时,还支持改写YAML和properties文件来覆盖默认配置。例如,在本项目的META-INF下的spring-devtools.properties文件中加入:restart.include. json=/com.baliaba.fastjson2.*.jar,在重启或重新加载应用时,包含所有名为com.alibaba.fastjson2.*.jar的JAR文件将自动配置。②开箱即用,内嵌服务器:无须单独安装和配置服务器。这使项目可以快速启动,并且方便地进行调试。内嵌服务器的配置通过application.yml文件进行,例如配置服务器端口、上下文路径等。

4) 在面向接口编程思想的指导下,采用MyBatis 框架和MySQL数据库实现DAO操作,通过Redis(Re⁃ mote Dictionary Server) 实现缓存操作。MyBatis是一个持久层框架,它支持自定义SQL、存储过程以及高级映射,避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。它在项目中的具体作用和优势包括:① SQL与代码分离;② 适用于复杂查询和性能优化;③ MyBatis可以轻松集成到现有项目中,通过@Mapper注解进行配置;④ 提供了强大的动态SQL功能,极大地简化了复杂查询的编写。常用的动态SQL 标签有where、if、trim、choose、foreach等。

MySQL是一个流行的开源关系型数据库管理系统(RDBMS) ,具有高性能、可靠性和易于使用的特点。本项目以MySQL 8作为所有数据的存储仓库,采用Navicat 15.0.23图形用户界面工具构建数据库表。Redis是一个开源的内存数据库,遵循BSD协议,它提供了一个高性能的键值(key-value) 存储系统,因其性能极高、数据类型丰富和持久化能力,广泛用于缓存、消息队列、会话存储等应用场景。

2.2前后端分离技术

前后端分离技术是通过Nginx+Tomcat的方式(也可以中间加一个Node.js) 对前后端进行有效的解耦,前端和后端通过接口进行通信。前端服务器使用Nginx,负责控制页面引用和跳转,前端页面通过axios异步调用后端的接口;后端服务器使用Tomcat,加快整体响应速度。其优势包括:提高开发效率、优化用户体验、降低维护成本和增强系统可扩展性。其开发模式如图6所示。

2.2.1技术选型

前端技术:常用的前端技术包括HTML、CSS、JavaS⁃ cript、React、Vue等。这些技术用于构建用户界面和交互逻辑。通过Axios等技术调用后端API获取数据。

后端技术:后端选择Java技术来构建后端应用,由其处理业务逻辑、访问数据库并返回数据给前端。

接口技术:前后端通过RESTful API接口技术进行通信。

2.2.2接口设计

在该SpringBoot项目中,后端用@RestController定义一个控制类,它结合了@Controller 和@Response⁃ Body,省去了在每个方法上单独添加@ResponseBody,并将返回对象自动转换成JSON或XML格式的响应体,具体API 接口搭配@GetMapping、@PostMapping、@PutMapping、@DeleteMapping使用。API接口的返回结果数据类型采用自定义AjaxResult响应类来封装响应状态码、消息内容和数据对象。前端导入axios包,调用axios.create创建Axios实例,设置基础URL,可以通过该实例发送各种HTTP请求。下面是一个具体的接口实例。

3系统实现

3.1功能导航

用户在登录成功后进入主页,左侧导航栏对应显示本系统的功能模块,用户可根据自己的需求选择相应的模块。如图7所示,红框标示为重要模块。左侧导航更容易浏览,用户一般习惯使用“F”式浏览路径,能够直接被用户的视线所捕捉,用户会下意识地注意到它们。

3.2概算管理—查询

以概算管理为例,用户在选择概算模块后,进入工程概算页面,如图8所示。用户可以对各项工程概算进行录入、修改、查询、删除等操作。下面以查询功能为例说明其实现过程:在前端通过树形下拉框展示后端传来的数据集合,查询方式分为全部查询和多条件查询。设置function接口获取后端API的URL,并在前端代码中调用,在组件中通过配置tree-props属性来完成页面对数据集合的树形结构展示。为了正确展示树结构的数据,需要在JavaScript 代码部分对集合数据进行处理,通过调用handleTree方法来生成每个父节点的子节点集合。

4结论

本系统在MVC和面向接口编程思想的指导下,在腾讯云服务器、B/S架构和前后端分离技术的支撑下,前端采用Vue 3、Element-UI、ECharts、Axios框架,后端采用SpringBoot、MyBatis框架,完成了基建铁矿管理系统,实现了概预算管理、计划管理、进度管理、设备订货及库存管理、安全管理、标准规范管理、档案管理等主要功能。基建矿山的各种基础数据和应用数据能够及时存储在数据库表中,并可进行实时查询;避免了因个人原因而导致的数据丢失情况;工程项目名称一次输入反复使用,保证了工程项目名称的规范性;工程进度和合同执行情况一目了然;设备订货基础表和相关厂家自动生成,为招标工作奠定了基础。

该系统的使用将大大提升基建铁矿管理水平和工作效率,减轻技术人员的劳动强度,对实现“投资、工期、质量、安全”四大控制具有较大的促进作用。下一步将完成移动端和基于微信小程序的应用开发,使用户能够更加灵活方便地使用该系统。

猜你喜欢
S架构管理系统
基于James的院内邮件管理系统的实现
基于LED联动显示的违停管理系统
海盾压载水管理系统
中国船检(2017年3期)2017-05-18 11:33:08
B/S架构下的学生信息管理系统的设计
基于ASP技术下的大学生跳蚤书街平台的设计与实施
基于B/S架构的高校实验管理平台的设计与实现
C/S架构下的中职教学辅助系统的新探索
考试周刊(2016年42期)2016-06-18 08:17:19
基于RFID的仓储管理系统实现