摘要
自然灾害是人类面临的重大挑战之一,它给人们的生命财产安全造成严重威胁。在自然灾害发生后,及时的救灾物资管理是保障人民群众安全的重要举措之一。然而,传统的救灾物资管理方式存在一些问题,如信息不流通、物资分配不公、数据统计不准确等。因此,研究和开发一种高效、便捷的救灾物资管理系统是非常必要的。
本文基于SpringBoot开发一种自然灾害救灾物资管理系统。该系统采用了现代化的软件开发技术和数据库管理技术,能够实现对救灾物资的分类、出入库管理和物资申领等模块的功能。通过系统的流程化操作,可以确保物资的安全、有效的分配。系统通过统计和分析数据,可以及时了解物资的使用情况和库存情况,为灾后的物资调配提供依据。本系统采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设以及程序编码的工作,系统基于Java语言、MySQL数据库和SpringBoot框架进行自然灾害救灾物资管理系统的设计与实现。通过使用Java语言的强大功能和灵活性,结合SpringBoot框架的优势以及MySQL数据库的高效数据存储和管理能力,我们将开发一个功能全面、高效可靠的自然灾害救灾物资管理系统。
本论文的研究成果对于提高救灾物资的调配效率和准确性,为灾区人民提供更好的救灾援助具有积极意义。本研究还为其他物资管理系统的设计与实现提供了参考和借鉴,同时,系统还具备良好的可扩展性和稳定性,能够适应救灾物资管理不断变化的需求。
关键词:自然灾害;救灾物资管理;SpringBoot框架;Java语言
Abstract
Natural disasters are one of the major challenges facing humanity, posing a serious threat to the safety of people's lives and property. Timely management of disaster relief materials is one of the important measures to ensure the safety of the people after natural disasters occur. However, traditional disaster relief material management methods have some problems, such as information asymmetry, unfair distribution of materials, and inaccurate data statistics. Therefore, it is necessary to research and develop an efficient and convenient disaster relief material management system.
This article is based on SpringBoot to develop a natural disaster relief material management system. The system adopts modern software development technology and database management technology, which can achieve functions such as classification of disaster relief materials, inbound and outbound management, and material application. Through systematic and procedural operations, the safe and effective distribution of materials can be ensured. The system can timely understand the usage and inventory status of materials through statistics and analysis of data, providing a basis for post disaster material allocation. This system adopts an object-oriented development model for software development and hardware setup, which can well meet practical needs and improve the corresponding software setup and program coding work. The system is based on Java language, MySQL database, and SpringBoot framework for the design and implementation of a natural disaster relief material management system. By utilizing the powerful features and flexibility of Java language, combined with the advantages of SpringBoot framework and the efficient data storage and management capabilities of MySQL database, we will develop a comprehensive, efficient, and reliable natural disaster relief material management system.
The research results of this paper have positive significance for improving the efficiency and accuracy of disaster relief material allocation, and providing better disaster relief assistance to the people in disaster areas. This study also provides reference and inspiration for the design and implementation of other material management systems. At the same time, the system also has good scalability and stability, which can adapt to the constantly changing needs of disaster relief material management.
Keywords:Natural disasters; Disaster relief material management; SpringBoot framework; Java language
目 录
1.1 研究背景
自然灾害是人类社会发展过程中无法避免的一部分。每年都有数以百计的自然灾害发生,给人们的生命、财产和环境带来巨大的破坏。在应对自然灾害的过程中,救灾物资的供应和管理是至关重要的一环。
救灾物资管理系统是指一个对救援物资进行全面管理和调配的系统。在灾害发生后,大量的救灾物资需要采购、储备、分发和跟踪,以满足灾区人民的基本需求。传统的救灾物资管理方式通常是手工操作,存在着信息不透明、耗时耗力等问题,导致物资的及时、准确和有效供应受限。
本研究旨在建立一个自然灾害救灾物资管理系统,通过信息技术的应用提高救灾物资的管理和调配效率,以更好地应对自然灾害的挑战。通过对自然灾害救灾物资管理系统的研究和开发,可以在灾害发生后更加高效地进行救援行动,减少人员和财产的损失,提高社会的恢复能力和自救能力。同时,也为其他领域的物资管理系统的开发提供了借鉴参考。
自然灾害救灾物资管理系统的建立和应用具有重要意义。研究本系统可以提高救灾物资的准确性和时效性,更好地满足受灾人民的需求。同时降低救灾物资管理成本,提高资源利用效率;加强救援物资的调配和协同工作,提高救援行动的效果。通过对本系统的应用,增强应对自然灾害的能力,提高社会的应急反应能力和防灾减灾意识;为政府部门和救援机构的决策提供科学依据,提高灾害管理的效果。
1.2 国内外研究现状
自然灾害是指地球自然界发生的、人类无法预测和干预的灾难性事件,如地震、台风、洪水、干旱等。自然灾害往往造成巨大的人员伤亡和财产损失,因此,在救灾过程中及时、有效地管理和分发物资是保障受灾群众生命安全和恢复社会秩序的关键。
1.2.1 国内现状
国内的研究者对于自然灾害物资管理系统的概念、原理及相关技术进行了深入研究。从信息技术的角度,物资管理系统包括物资库存管理、需求预测、调度运输等多个环节。国内学者在该领域积累了丰富的实践经验和理论研究成果。国内多个地区和部门在自然灾害救灾中广泛应用物资管理系统,取得了显著成效。例如,在地震救援中,物资管理系统能够快速准确地进行物资需求预测和调度,提高救援效率;在防汛抗洪中,物资管理系统能够实时掌握受灾地区的物资库存情况,进行合理分配,提高物资利用率。
国内研究者对物资管理系统中的关键技术进行了深入研究。包括物资库存预测算法、物资调度优化算法、信息安全保障等方面的研究。这些研究对于提高物资管理系统的效率和可靠性具有重要意义。
1.2.2 国外现状
美国是世界上自然灾害频发的国家之一,他们在自然灾害救灾物资管理系统的研究方面比较成熟。美国的物资管理系统注重信息技术的应用,通过建立全国统一的物资管理平台,实现物资需求预测、库存管理和调度等功能。同时,美国还注重与国际组织和其他国家的合作,共同应对跨国边界的自然灾害。
日本是地震频发的国家,他们在物资管理系统的研究和应用方面有着丰富经验。日本的物资管理系统主要通过信息技术的手段,实现物资设备的跟踪管理和库存管理。在自然灾害发生时,系统能够快速准确地调度物资,并进行信息共享和协作。
欧洲各国在自然灾害救灾物资管理系统方面也有一定的研究和应用。欧洲通过建立统一的物资管理平台和网络,实现物资分配、调度和追踪的全程可视化。同时,欧洲还注重加强国际合作,在自然灾害发生时共享物资信息和资源。
自然灾害救灾物资管理系统在国内外的研究和应用中发挥着重要作用。国内学者通过多年研究和实践,已积累了丰富的经验和成果。然而,物资管理系统在国内仍面临一些挑战,如数据共享和标准化等问题。未来的研究可以重点关注这些问题,进一步提高物资管理系统的效率和可靠性,为自然灾害救灾工作提供更好的支持。同时,国内学者可以通过与国外的合作和交流,借鉴他们的经验和技术,进一步推动物资管理系统的发展。
1.3 本文研究内容
1.3.1 论文结构
本文共分为六章,章节内容安排如下:
第一章:绪论。此章节对所设计和实现的系统的目的以及意义和国内外研究现在进行详细的论述以及说明,同时进行了论文整体框架的结构和相关开发技术的简要介绍。
第二章:系统需求分析。章节所做的主要的工作是对系统进行了技术、经济和操作方面可行性的分析;对系统实行了总体功能的需求、用例分析。
第三章:系统的设计。主要是对系统的功能结构进行设计,并对系统数据库的概念结构以及物理结构的设计进行了分析。
第四章:系统的实现。根据系统功能的划分,分别的对系统所需要实现的前台客户功能和后台管理员功能进行了分析和说明。
第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试
第六章:总结与展望。
1.3.2 研究方法及手段
本文将运用自然灾害救灾物资管理系统进行研究,通过文献研究法、调查分析法、比较分析法、实证研究法和归纳演绎法等方法,对该系统进行深入研究分析,并提出有效的改进措施。
(1)文献研究法:通过对相关的学术文献、政策文件和实际案例进行深入研究,以了解现有的自然灾害救灾物资管理系统,提取出其中的优点和不足,为本研究的设计提供理论基础。
(2)调查分析法:调查法是科学研究中最常用的方法之一。通过采用问卷调查和访谈的方式,对救援人员、受灾群众和相关机构进行调查,了解他们对现有救灾物资管理系统的意见和建议,从而寻找到改进的方向。
(3)比较分析法:对不同地区和国家的自然灾害救灾物资管理系统进行比较分析,以找出不同系统之间的差异和共同点,为设计更高效的管理系统提供借鉴。
(4)实证研究法:通过实地调研和案例分析,对不同地区和不同类型的自然灾害进行观察和分析,收集相关数据并进行统计和分析,以揭示灾害发生时物资管理的关键问题和瓶颈所在。
(5)归纳演绎法:通过归纳出现场实际问题的共性和规律性,从而推演出更为普遍适用的物资管理原则和方法,为系统设计和开发提供指导。研究结果将有望提高自然灾害救灾物资管理的效率和效能。
2 系统分析
2.1 可行性分析
在软件开发的过程中系统的可行性分析是必不可少的,可行性的研究就是评估问题是否能得到解决并且是要以最少的时间和最少的代价来解决。为实现上面的目标还要必须考虑到解决这些问题的方法的优点和缺点,还要考虑到实现了这些系统规模的开发带来的经济效益。本次设计基于B/S 模式下,技术上使用SpringBoot的架构实现开发,总体的可行性共分为以下三个方面。
2.1.1 技术可行性分析
自然灾害救灾物资管理系统采用的是Java编程语言并于Springboot的模式,数据库部分采用的是当前流行的MySQL数据库,自然灾害救灾物资管理系统中的所有数据资源都存储在MySQL数据库中,本系统多处采用了Ajax的异步操作,Ajax技术可以对用户指定部分的数据进行局部刷新,不仅减少了服务器对页面的解析而且极大增加了用户的体验度。本系统的环境配置也较为简单,因此不需要我们在重新配置。
2.1.2 经济可行性分析
自然灾害救灾物资管理系统是在Java和MySQL的环境中运行的,而系统的成本也只是主要分布在软件的开发和维护上。但如果系统上线投入使用之后,不仅可以方便人们,还节省了用户的时间和精力,而且还极大限度的方便了运营者,减少了运营者的工作强度。自然灾害救灾物资管理系统其实也不太复杂,在开发的时候经济支出也不大,在开发系统时时间用的也不多,从时间的优势和对经济利益方面产生的好处远超过维护和管理的成本,所以开发此系统是可行合适的。
2.1.3 操作可行性分析
本系统是基于浏览器和服务器的自然灾害救灾物资管理系统,系统开发完成之后用户只需要在电脑上即可进行访问。本系统的页面简单明了,在没有操作指导的情况下也可以进行操作,无论是系统管理员还是用户在页面中所有的操作都是可以在浏览器完成的,因此只要电脑在有网络的情况下,打开浏览器都能操作。而且在使用之前也不用进行相关的环境配置,因此本系统方便、简单、易于使用,所以该系统是容易并且可操作的。
2.2 需求分析
2.2.1 关键技术
根据自然灾害救灾物资管理系统的研究主旨,进行了相关资料的准备,学习并理解开发框架的基本原理和使用方法,包括阅读相关的书籍和在线教程。最终确实系统采用SpringBoot框架进行后台开发,数据库使用MySQL,其他技术包含Java开发语言,HTML、CSS、Ajax、JavaScript等,进行系统界面的基本设计。
1、Java语言
Java语言在计算机的程序应用过程当中,属于非常重要的一个应用软件,因为它的性能比较高,而且能够应用在多重领域当中,因此该程序在计算机的软件程序应用当中的范围相对来说是比较广泛的。而从专业的技术角度来说,Java程序的应用的实用性也是非常强的,这是因为它与传统的C语言或C++相比没有太大的基本结构的变化,也就是说它的语法结构是相对单一,而且具有稳定的特性,还有更重要的一点是Java程序语言的基本参考对象就是C语言,所以他的程序编写并不是很复杂,而且还能够起到优化工作效率提升系统设计本身的基础功能的作用,因此他也就受到了非常广泛的程序员们的青睐。
2、B/S结构
基于Java技术开发的B/S架构系统,需要借助Tomcat服务器应用程序进行部署运行。用户访问系统的时候,通过浏览器向应用程序服务器端发起访问请求,服务器端的程序在接到用户请求以后,服务器端应用程序对客户请求做出相应,在调用服务器端的业务逻辑程序完成和数据库端的交互,进一步生成相应的HTML/XML数据,最终把结果反馈给浏览器端用户。
在该系统的开发中,开发模式采用B/S架构技术进行实现,通过部署服务器端应用程序,实现用户通过网站域名或者内网IP地址访问系统,实现系统中数据的动态化呈现和管理,加之页面效果的动态化呈现,不仅提升了页面的表现力,而且管理者可以随时更新系统中的各种信息,充分满足管理者和访问用户之间的信息交互。
- MySQL数据库
MySQL数据库已经成为网络上的一种强大的工具,它能够支持多个用户,并且能够根据客户端和服务端的需求进行调整,从而满足不同的需求。在这里,服务端和客户端只是一种软件上的概念,而我们所使用的计算机硬件则没有必要完全相互匹配。
MySQL作为一个受到广泛认可的开放式DBMS,其卓越的性能和易于操作的特性,以及其在多种操作环境中的灵活性,让其成为了众多AP中的首选。此外,MySQL还具有良好的跨平台性,让软件开发人员对其有着极高的评价。与传统的关联式数据库系统形式大相径庭,MySQL拥有一套完善的数据库管理策略,以确保用户的安全、稳健、安全。MySQL具备良好的容错、安全、快速、稳健的特点,使得MySQL成为一款极其实用的数据库管理工具。
- SpringBoot框架
Spring框架是一个由Java公司发布的开放式框架,旨在通过其可扩展的特性来支持多种不同的编码方式。尽管Spring框架不会影响任何特定的编码方式,但其出色的性价比和可扩展性,已经成为EJB(EnterpriseJavaBeans)框架的重要组成部分,并且一直得到越来越多的人的青睐。Spring框架不仅可以有效地支撑开发,而且还可以充分利用其独有的控制反转功能,以及支撑多种持久性技术,从而将托管对象的生命周期变得更加容易,并且可以支撑声明性的事务处理,还可以支撑多种Web框架,从而有效地推动开发。
Spring框架拥有强大的IOC功能,可以轻松地实现Java对象的调度与操作,从而更好地支持项目的运行。此外,Spring还支持将java对象的生命周期进行可视化,以实现更加灵活的调度与操作。Spring框架提供了一种新的、高效的容器设计工具,它能够根据XML文件和AOP注解的指引,从多个源中提取和组织相应的参数,从而实现多种功能。此外,它还提供了一种面向服务的框架,它能够根据用户的需求,自动调整参数,从而提高系统的效率和性能。Spring框架的AOP框架具有强大的功能,可以满足各种复杂的需求。
2.2.2 业务流程分析
本系统是一个自然灾害救灾物资管理系统,主要用于方便、高效地管理和调度各种救灾物资。系统的主要业务流程包括用户浏览物资信息并进行物资申领信息提交,由管理员审核通过后将物资出库,再经物流信息配送给用户。
因此,系统的业务流程如下图所示。
图2.1 业务流程图
2.2.3 功能需求分析
在系统开发设计前,应该对功能做初步设想,清楚这个管理系统有什么板块,每个板块有什么功能,整体的设计是否满足使用者的需求,接着对所开发的系统功能进行的详细分析总结,从而设计出完整的系统并将其实现。用户和开发人员的交流分析,使其达到最佳理解程度,使系统功能达到最佳。
1、系统前端用户用例分析
自然灾害救灾物资管理系统的前台是普通用户进行操作的,主要实现用户对灾情公告以及急救知识的查看,注册登录以后实现物资信息的申领、发布共享物资信息和对个人信息、物流信息的管理。
前端普通用户模块用例图如图2.2所示。
图2.2前端普通用户模块用例图
2、系统后端用例分析
后台分为两个角色:仓管用户和管理员,用户不能进入后台,仓管用户进入以后对物资信息管理、入库申请管理、入库确认管理、物资申领管理、申领出库管理、物流信息管理、配送反馈管理、调配申请管理、调配出库管理这几个模块进行管理。
管理员进入以后可以对系统用户、物资信息管理、物资分类管理、入库申请管理、入库确认管理、物资申领管理、申领出库管理、物流信息管理、配送反馈管理、调配申请管理、调配出库管理、共享物资管理、系统管理、灾情公告管理、资源管理、权限管理等模块进行管理。
后台仓管用户用例图如图2.3所示。
图2.3后台仓管用户用例图
后台管理员用例图如图2.4所示。
图2.4后台管理员用例图
2.2.4 性能需求分析
1、系统响应时间要求在正常范围内,尽量保证用户操作的流畅性。
2、系统要支持多用户同时操作,能够处理大量的并发请求。
3、系统的数据安全性要求高,能够保证数据的完整性和可靠性。
4、系统要具备较高的扩展性,方便根据实际需求进行功能的扩展和升级。
5、系统的界面设计要简洁美观,便于用户操作。
2.2.5 数据需求分析
1、物资表:用于记录物资的基本信息,包括物资ID、名称、种类、单价等字段。
2、入库表:用于记录物资的入库信息,包括入库ID、物资ID、入库时间、入库数量等字段。
3、出库表:用于记录物资的出库信息,包括出库ID、物资ID、出库时间、出库数量等字段。
4、灾区需求表:用于记录灾区的物资需求信息,包括需求ID、灾区ID、物资ID、需求时间、需求数量等字段。
5、调度表:用于记录物资的调度信息,包括调度ID、物资ID、调度时间、目的地等字段。
2.2.6 接口需求分析
1、物资管理接口:用于对物资的增删改查操作。
2、入库接口:用于记录物资的入库信息。
3、出库接口:用于记录物资的出库信息。
4、灾区需求接口:用于记录灾区的物资需求信息。
5、调度接口:用于记录物资的调度信息。
6、统计报表接口:用于生成物资入库、出库和库存的统计报表。
2.2.7 将来可能提出的需求分析
1、实现物资捐赠功能:允许用户通过系统进行物资捐赠,并记录捐赠的物资信息。
2、实现物资运输跟踪功能:在物资调度过程中,实时跟踪物资的运输情况,提供物资的位置和运输进度信息。
3、实现物资分配优化功能:根据物资需求和库存情况进行智能的物资调度优化,提高物资的利用效率。
4、实现灾区信息管理功能:记录灾区的基本信息,包括人口数量、灾害历史等,用于灾害救援的决策支持。
5、实现物资质量管理功能:记录物资的质量情况,包括采购来源、质检证书等,确保物资的安全可靠性。
3 系统设计
3.1 架构设计
目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。医院人力资源管理系统主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。
系统架构图如图3.1所示。
图3.1 系统架构图
3.2 功能模块设计
系统设计的目的是分析系统包括的所有功能结构,为开发人员设计开发和实现系统做好准备工作。经过前期的需求调查、分析和整理之后,确定的总体需求主要包括多个模块,系统整体角色分为三个部分,一是普通用户,二是仓管用户,三是管理员。权限分布也是很明显,用户是在除去浏览信息之外还具有查询和管理自己账户信息、物资申领、发布共享物资等权限;仓管用户主要是对物资信息进行出入库申请管理、调配管理和物流配送管理;管理员是最高权限拥有者。
综上所述,系统功能结构图如图3.2所示。
图3.2 系统功能模块图
3.3 数据库设计
3.3.1 概念模型设计
E-R图一般是由实体、实体的属性与联系三个要素组成的。在规划系统中所使用的数据库实体对象及实体E-R图,则需要通过对系统的需求分析、业务流程设计和系统功能结构来确定的。
系统总体E-R图如图3.3所示。
图3.3 系统数据库E-R图
3.3.2 数据库表的设计
数据库逻辑结构就是将E-R图在数据库中用具体的字段进行描述。用字段和数据类型描述来使对象特征实体化,最后形成具有一定逻辑关系的数据库表结构。自然灾害救灾物资管理系统所需要的部分数据结构表如下表所示。
表access_token (登陆访问时长)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | allocate_outbound_id | int | 10 | 0 | N | Y | 调配出库ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | warehouse_management_users | int | 10 | 0 | Y | N | 0 | 仓管用户 |
6 | deployment_date | date | 10 | 0 | Y | N | 调配日期 | |
7 | allocation_quantity | varchar | 64 | 0 | Y | N | 调配数量 | |
8 | outbound_remarks | text | 65535 | 0 | Y | N | 出库备注 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表applying_for_outbound_delivery (申领出库)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | applying_for_outbound_delivery_id | int | 10 | 0 | N | Y | 申领出库ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_phone_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | application_quantity | varchar | 64 | 0 | Y | N | 申领数量 | |
9 | receiving_address | text | 65535 | 0 | Y | N | 收货地址 | |
10 | warehouse_management_users | int | 10 | 0 | Y | N | 0 | 仓管用户 |
11 | outbound_date | date | 10 | 0 | Y | N | 出库日期 | |
12 | outbound_remarks | text | 65535 | 0 | Y | N | 出库备注 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | delivery_feedback_id | int | 10 | 0 | N | Y | 配送反馈ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_phone_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | application_quantity | varchar | 64 | 0 | Y | N | 申领数量 | |
9 | receiving_address | text | 65535 | 0 | Y | N | 收货地址 | |
10 | warehouse_management_users | int | 10 | 0 | Y | N | 0 | 仓管用户 |
11 | feedback_content | text | 65535 | 0 | Y | N | 反馈内容 | |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表deployment_application (调配申请)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | deployment_application_id | int | 10 | 0 | N | Y | 调配申请ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | warehouse_management_users | int | 10 | 0 | Y | N | 0 | 仓管用户 |
6 | deployment_date | date | 10 | 0 | Y | N | 调配日期 | |
7 | allocation_quantity | int | 10 | 0 | Y | N | 0 | 调配数量 |
8 | deployment_notes | text | 65535 | 0 | Y | N | 调配备注 | |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | logistics_information_id | int | 10 | 0 | N | Y | 物流信息ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_phone_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | application_quantity | varchar | 64 | 0 | Y | N | 申领数量 | |
9 | receiving_address | text | 65535 | 0 | Y | N | 收货地址 | |
10 | warehouse_management_users | int | 10 | 0 | Y | N | 0 | 仓管用户 |
11 | logistics_status | varchar | 64 | 0 | Y | N | 物流状态 | |
12 | logistics_description | text | 65535 | 0 | Y | N | 物流描述 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | material_application_id | int | 10 | 0 | N | Y | 物资申领ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_phone_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | application_quantity | int | 10 | 0 | Y | N | 0 | 申领数量 |
9 | receiving_address | text | 65535 | 0 | Y | N | 收货地址 | |
10 | reason_for_application | text | 65535 | 0 | Y | N | 申领原因 | |
11 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
12 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表material_classification (物资分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | material_classification_id | int | 10 | 0 | N | Y | 物资分类ID | |
2 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | receipt_confirmation_id | int | 10 | 0 | N | Y | 入库确认ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | warehouse_management_users | int | 10 | 0 | Y | N | 0 | 仓管用户 |
6 | storage_date | date | 10 | 0 | Y | N | 入库日期 | |
7 | inventory_quantity | varchar | 64 | 0 | Y | N | 入库数量 | |
8 | storage_remarks | text | 65535 | 0 | Y | N | 入库备注 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | contact_phone_number | varchar | 16 | 0 | Y | N | 联系电话 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | sensitive_vocabulary_id | int | 10 | 0 | N | Y | 敏感词汇ID | |
2 | sensitive_vocabulary | varchar | 64 | 0 | Y | N | 敏感词汇 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | shared_resources_id | int | 10 | 0 | N | Y | 共享物资ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | material_inventory | int | 10 | 0 | Y | N | 0 | 物资库存 |
6 | material_pictures | varchar | 255 | 0 | Y | N | 物资图片 | |
7 | material_introduction | longtext | 2147483647 | 0 | Y | N | 物资介绍 | |
8 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
9 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
10 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表warehouse_management_users (仓管用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | warehouse_management_users_id | int | 10 | 0 | N | Y | 仓管用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | contact_phone_number | varchar | 16 | 0 | Y | N | 联系电话 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表warehousing_application (入库申请)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | warehousing_application_id | int | 10 | 0 | N | Y | 入库申请ID | |
2 | item_number | varchar | 64 | 0 | Y | N | 物资编号 | |
3 | material_name | varchar | 64 | 0 | Y | N | 物资名称 | |
4 | material_classification | varchar | 64 | 0 | Y | N | 物资分类 | |
5 | warehouse_management_users | int | 10 | 0 | Y | N | 0 | 仓管用户 |
6 | storage_date | date | 10 | 0 | Y | N | 入库日期 | |
7 | inventory_quantity | int | 10 | 0 | Y | N | 0 | 入库数量 |
8 | storage_remarks | text | 65535 | 0 | Y | N | 入库备注 | |
9 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
10 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
4 系统实现
4.1 开发环境
本研究将使用SpringBoot框架开发“惠捷”自然灾害救灾物资管理系统。开发环境为Java开发语言、MySQL关系数据库、Apache、Tomcat服务器等。系统开发环境如表4.1所示。
表4.1 系统开发环境
硬件环境 | 软件环境 |
CPU: 2.0G 以上 | 操作系统:Windows 7及 以上版本 |
内存:8GB 以上 | 开发语言:Java 使用框架:SpringBoot 开发工具:IDEA(2020版) |
硬盘:100MB以上 | 数据库管理工具:Navicat JDK版本:Java 1.8 |
显卡:图像级显卡以上 | 数据库:MySQL 5.6以上 |
4.2 前端用户功能模块实现
4.2.1 用户端首页模块
当进入“惠捷”自然灾害救灾物资管理系统的时候,首先映入眼帘的是系统的导航栏,导航栏上面是轮播图,其次是物资信息推荐,用户端首页界面如下图所示。
图4.1 前台首页模块实现图
4.2.2 注册模块
“惠捷”自然灾害救灾物资管理系统的游客和患者用户时可以进行注册登录,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。
用户注册模块关键代码如下所示。
图4.2 注册模块部分代码
注册模块实现图如下所示。
图4.3 注册模块实现图
4.2.3 登录模块
“惠捷”自然灾害救灾物资管理系统中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并通过滑动验证通过后,点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到“惠捷”自然灾害救灾物资管理系统的首页中;否则将会提示相应错误信息。
用户登录模块关键代码如下所示。
图4.4 登录模块部分代码
用户端登录模块实现图如下所示。
图4.5 用户端登录模块实现图
4.2.4 密码修改模块
用户使用该系统注册完成后,用户对登录密码有修改需求时,系统也可以提供用户修改密码权限。系统中所有的操作者能够变更自己的密码信息,执行该功能首先必须要登入系统,然后选择密码变更选项以后在给定的文本框中填写初始密码和新密码来完成修改密码的操作。在填写的时候,假如两次密码填写存在差异,那么此次密码变更操作失败。
密码修改模块关键代码如下所示。
图4.6 密码修改模块部分代码
密码修改模块实现图如下图所示。
图4.7 密码修改模块实现图
4.2.5 急救知识模块
用户点击“惠捷”自然灾害救灾物资管理系统中导航栏上的“急救知识”后将会进入到该“急救知识”列表的界面,在详细界面可以对急救知识信息进行点赞、收藏和评论等操作。
急救知识模块实现图如下所示。
图4.8 急救知识模块实现图
4.2.6 物资信息模块
用户点击“惠捷”自然灾害救灾物资管理系统中首页导航栏上的快捷入口“物资信息”后将会进入到“物资信息”列表的界面,选择其中一条点击可以查看详情包括物资编号、物资名称、物资分类、物资库存、物资介绍等信息,同时可以对点击下方的“物资申领”、“点赞”、“收藏”进行相关操作,也可以在下方评论区输入想要评论的内容进行评论。
物资信息模块实现图如下所示。
图4.9 物资信息模块实现图
物资申领模块实现图如下所示。
图4.10 物资申领模块实现图
4.2.7 共享物资模块
用户点击“惠捷”自然灾害救灾物资管理系统中首页导航栏上的“共享物资”后将会进入到共享物资信息发布的界面,根据系统提示页面输入需要共享的物资信息,点击提交完成。
共享物资模块实现图如下所示。
图4.11 共享物资模块实现图
4.2.8 个人中心模块
前台用户点击右上角“个人中心”模块,可以查看和管理个人相关的信息和任务,包括个人首页、物资申领、物流信息、配送反馈、共享物资和收藏的信息。
个人中心实现图如下所示。
图4.12 个人中心实现图
4.2 后端功能模块实现
4.2.1 仓管用户后台管理模块
仓管用户通过管理员添加的账号可以登录后台,分别对物资信息管理、入库申请管理、入库确认管理、物资申领管理、申领出库管理、物流信息管理、配送反馈管理、调配申请管理、调配出库管理等模块的信息进行管理。
仓管用户后台管理实现图如下所示。
图4.13 仓管用户后台管理模块实现图
4.2.2 系统用户模块
“惠捷”自然灾害救灾物资管理系统中的管理人员在“系统用户”这一菜单是中可以对注册的普通用户,仓管用户以及管理员进行管控。系统用户管理实现图如下所示。
图4.14 系统用户管理模块实现图
4.2.3 物资信息管理模块
管理员点击“物资信息管理”显示所有的物资信息,支持通过物资姓名对物资信息进行查询。如果想要添加新的物资信息,点击“添加”按钮,输入物资编号、物资名称、物资分类、物资库存、物资介绍等信息,点击“提交”按钮就可以添加了。点击右侧的按钮可以对物资信息进行入库申请、物资申领、调配申请,也可以对用户提交的物资评论的信息进行管控。物资信息管理模块实现图如下所示。
图4.14 物资信息管理模块实现图
4.2.4 系统管理模块
管理人员在“系统管理”这一菜单下是可以对“惠捷”自然灾害救灾物资管理系统内的轮播图进行添加修改的。
上传文件关键代码如下所示。
图4.15 上传文件部分代码
轮播图管理实现图如下所示。
图4.16 轮播图管理实现图
4.2.3 资源管理模块
后台管理人员在资源管理模块是可以对急救知识以及知识的分类进行增删改查操作。资源管理模块实现图如下所示。
图4.17 资源管理模块实现图
5.1测试计划
5.1.1 测试范围与主要内容
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。
软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。
“惠捷”自然灾害救灾物资管理系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在“惠捷”自然灾害救灾物资管理系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。
5.1.2 测试方法
在对“惠捷”自然灾害救灾物资管理系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让“惠捷”自然灾害救灾物资管理系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个“惠捷”自然灾害救灾物资管理系统开发所牵扯的该问题都必须一一解决,提高“惠捷”自然灾害救灾物资管理系统的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
5.1.3 测试环境
操作系统:Windows 10
开发语言:Java
使用框架:SpringBoot
开发工具:IDEA(2020版)、vs code
数据库:MySQL 5.6以上
数据库管理工具: Navicat
JDK版本:Java sdk 1.8
Maven:apache-maven 3.6.1-bin
2、硬件环境:
CPU:2.0GHz及以上
内存:8GB及以上
硬盘:100MB以上
显卡:图像级显卡以上
GPU:无要求
5.2 功能测试
用户登录测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
登录模块 | 用户名:admin 密码:123 | 弹出错误提示,提示密码错误 | 弹出错误提示,提示密码错误 | 通过 |
登录模块 | 用户名:123 密码:admin | 弹出错误提示,提示用户名错误 | 弹出错误提示,提示用户名错误 | 通过 |
登录模块 | 用户名:admin 密码:admin | 管理员登录成功 | 管理员登录成功 | 通过 |
删除分类测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
删除分类模块 | 分类名:最新通知 | 删除成功、页面自动跳转 | 删除成功、页面自动跳转 | 通过 |
修改密码测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
修改密码模块 | 原密码:666 新密码:123 确认密码:123 | 弹出错误提示,提示原密码错误 | 弹出错误提示,提示原密码错误 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:333 | 弹出错误提示,提示确认密码不一致 | 弹出错误提示,提示确认密码不一致 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:123 | 密码修改成功 | 密码修改成功 | 通过 |
5.3 性能测试
使用阿里云PTS(Performance Testing Service)性能测试服务对线上系统进行压力测试。线上服务器环境为:1核心CPU,1G内存,1Mbps公网带宽,Centos7.0操作系统。
压测过程中使用了2台并发机器,每台机器20个用户并发,对系统主页,登录,数据查询和数据维护等模块进行并发访问,测试结果是有40个用户并发时,数据管理相关页面的响应时间甚至达到了7s,通过查看服务器出网流量发现已经达到1381kb/s,可以看出服务器的带宽已经达到峰值,如果系统使用5Mbps的带宽,系统的响应时间和TPS将会大大增加。在整个测试的过程中,CPU的使用率占用仅8%,也提现出带宽瓶颈对系统的影响非常严重。
性能测试用例如下表5.6所示。
表5.6 兼容性测试用例表
测试项 | 测试内容 | 测试环境 | 预期结果 | 实际结果 | 是否通过 |
浏览器兼容性 | 在Chrome、Firefox、Edge、Safari等主流浏览器中打开系统,测试系统的各项功能和界面的兼容性 | Window10 Window11 MAC OS | 在各个浏览器中,系统应该能够正常运行,各项功能和界面都应该能够正确显示和响应用户操作 | 正常运行 | 通过 |
数据库兼容性 | |||||
操作系统兼容性 | |||||
硬件兼容性 | |||||
硬件兼容性 |
5.4 测试结论
经过对此系统的测试,得出该系统足以满足用户日常需求,在功能项目和操作等方面也能满足操作员对于其他用户的管理。但是,还有很多功能有待添加,这个系统仅能满足大部分的需求,还需要对此系统的功能更进一步的完善,这样使用起来才能更加的完美。
6 总结与展望
6.1 总结
在开发本“惠捷”自然灾害救灾物资管理系统之前我胸有成竹,觉得很简单,但在实际的开发中我发现了自身的很多问题,许多编程思想和方法都还没有掌握牢靠,比如Jquery、AJAX 、SpringBoot、MyBatis等许多Java Web开发技术,通过开发这个“惠捷”自然灾害救灾物资管理系统我成长了很多,懂得了做什么事情都要脚踏实地,不能眼高手低,在本次“惠捷”自然灾害救灾物资管理系统的开发中我逐渐掌握逐渐熟悉的技术。
本次“惠捷”自然灾害救灾物资管理系统的开发中我还学会了很多,例如良好的编程思想和完善的规划思想。在着手编程之前需要罗列出程序框架的大概,脑海中构建出程序的主题框架。做好这一步我们才能胸有成竹的经行开发项目。当设计框架了熟于心之后,需要思考本次编程所需的主要知识点和技术点,并充分学习。如此一来项目的开发才能循序渐进、如丝般顺滑,长久以往就能养成良好的开发习惯。一个程序好不好还要看出的bug多不多,如果在项目完成前做好bug的查验与预防可能发生的事故才能保证程序的稳定长久性运行。如果项目在完工后出现各种问题自己,那么在进入社会后,不仅会给公司团队带来麻烦和增加不必要的工作,还会导致客户流失,公司对自己的评价下降。
在本次项目中我也暴露了诸多问题。对于SpringBoot的编程知识有所欠缺,环境配置和算法上出现诸多问题,时常导致项目运行出错,或者目标的实现有问题。或者实现想法时算法未优化,使得代码冗长,程序运行不顺畅。
6.2 展望
随着计算机互联网技术的迅猛发展,各行各业都已经实现采用计算机相关技术对日益放大的数据进行管理。该课题是“惠捷”自然灾害救灾物资管理系统为核心展开的。
“惠捷”自然灾害救灾物资管理系统的开发是以Java编程语言作为基础,在springboot框架上完成编码工作,系统整体为B/S架构,数据库系统使用MySQL。文中详细分析了“惠捷”自然灾害救灾物资管理系统的研究背景、研究目的和意义、开发工具和相关技术以及系统需求、系统详细设计和系统测试等等一系列内容。系统实现了“惠捷”自然灾害救灾物资管理系统所需的一些基本功能,并通过测试对这些实现的功能进行了完善,进而提高了系统整体的实用性。
系统投入运行时,各功能均运行正常。系统的每个界面的操作符合常规逻辑,对使用者来说操作简单,界面友好。整个系统的各个功能设计合理,体现了人性化。但是由于自己在系统开发过程中对一些用到的相关知识和技术掌握不够牢固,再加上自身开发经验欠缺,因此系统在有些方面的功能还不够完善,考虑的不够全面,因此整个系统还有待日后逐步完善。
参考文献
[1]沙祎,韩俊,张浩海等.基于BIM和RFID的物资管理系统设计开发[J].化工自动化及仪表,2024,51(01):120-127.DOI:10.20030/j.cnki.1000-3932.202401019.
[2]Mohammad B ,Faris E ,Tara B , et al.Blockchain-based decentralised material management system for construction projects[J].Journal of Building Engineering,2024,82108263-.
[3]陈永秀.基于微信小程序医疗应急物资调配系统的设计与实现[J].科技资讯,2023,21(24):17-20.DOI:10.16661/j.cnki.1672-3791.2311-5042-8914.
[4]刘文通,李鹏辉,王理国等.5G时代下物资管理系统研究——基于广东省公立医院的问卷调查分析[J].中国市场,2023,(33):187-190.DOI:10.13939/j.cnki.zgsc.2023.33.187.
[5]王美霞,黄伟旭,刘晓勇等.省级核与辐射事故医学应急队伍装备物资智能管理系统研究[J].中国职业医学,2023,50(05):591-595.DOI:10.20001/j.issn.2095-2619.20231020.
[6]陈蓓蕾,洪年松.基于SpringBoot的数据库接口设计[J].信息与电脑(理论版),2023,35(16):181-183.
[7]聂姝,赵元辰,张国锋.商业航天物资采购管理系统应用[J].航天工业管理,2023,(07):66-69.
[8]马俊,马杰,王庆阳.仓储管理信息化平台系统优化升级可行性研究[C]//河海大学,武汉大学,长江水利委员会网络与信息中心,湖北省水利水电科学研究院.2023(第十一届)中国水利信息化技术论坛论文集.山东黄河物资储备中心;山东黄河工程建设中心;济南市东城浮桥有限公司;,2023:8.DOI:10.26914/c.cnkihy.2023.024255.
[9]任斌,赵福占,娄苗等.医院应急医疗救援物资快速响应管理系统的设计与实现[J].中国医疗设备,2023,38(04):102-106.
[10]王志亮,纪松波.基于SpringBoot的Web前端与数据库的接口设计[J].工业控制计算机,2023,36(03):51-53.
[11]杨伟栋.基于NET架构的应急物资采购管理系统设计[J].信息与电脑(理论版),2023,35(04):69-72.
[12]Of J E H .Retracted: Optimization on Medical Material Distribution Management System Based on Artificial Intelligence Robot.[J].Journal of healthcare engineering,2023,20239846162-9846162.
[13]王磊.智能物资仓储管理系统解决方案[J].中国设备工程,2022,(S2):101-104.
[14]董栋,刘威,杨敏.焦作黄河防汛物资管理系统研发与应用[C]//水利部防洪抗旱减灾工程技术研究中心,中国水利学会减灾专业委员会,《中国防汛抗旱》杂志社.第十二届防汛抗旱信息化论坛论文集.焦作市黄河华龙工程有限公司;河南省水利第一工程局;焦作黄河河务局武陟第一黄河河务局;,2022:7.DOI:10.26914/c.cnkihy.2022.051927.
[15]赵梓皓,崔应留,葛晨等.基于SpringBoot的社区防控管理系统的设计与实现[J].软件,2022,43(10):154-159.
[16]Jie Z ,Shuxia W ,Weiping H , et al.Augmented reality material management system based on post-processing of aero-engine blade code recognition[J].Journal of Manufacturing Systems,2022,65564-578.
[17]赵宗涛,李艾芳,边倩.基于UML的救灾应急管理系统设计研究[J].企业科技与发展,2022,(04):29-31.
[18]Mary B ,Akinola O ,Wenjun Z .A systems dynamics approach to the management of material procurement for Engineering, Procurement and Construction industry[J].International Journal of Production Economics,2022,244
[19]刘建桥,陈艳,唐世勇等.基于微信小程序的救灾救助信息管理系统设计与实现[J].科学技术创新,2021,(35):91-94.
[20]许斌.物联网技术运用于救灾物资配送管理系统中的对策探析[J].数字通信世界,2020,(07):214+216.
致谢
这篇文章的完成经历了多个日日夜夜的努力,终于在今天得以完成。这篇文章的创作过程实为不易,但在老师和同学的辛勤帮助下顺利渡过。让我在设计过程中举步维艰时,非常感谢我的导师不耐其烦的帮助我解决问题,给予了我许多指导意见。也感谢所有为我授业解惑的老师!
另外,本文的完成也参考借鉴了许多国内外在SpringBoot技术上的著作,如果没有著作原作的辛勤付出和科研成果,我也很难完成本论文。感谢在本论文中关联到的学者们!也感谢Google等公司,感谢他们强大的搜索引擎,让我的资料查阅省事简单。
感谢之余也还有几句话要说,虽大学学习四年,怎奈何本人才疏学浅,本文的完成已为尽力,但文中不免有些不当和错误之处,诚挚真切的请求各位老师对本文的批评改正,感谢百忙之中费心审阅我论文的老师。
标签:10,varchar,管理系统,救灾物资,用户,源码,毕业设计,物资 From: https://blog.csdn.net/VX_ZYKJ985/article/details/141060819免费领取源码,请点赞关注私信博主