(赠源码)基于Node.js+React+mysql的突发性事件应急预警系统85212-计算机毕业设计项目选题推荐(原创)

摘 要

随着互联网趋势的到来,各行各业都在考虑利用互联网将自己推广出去,最好方式就是建立自己的互联网系统,并对其进行维护和管理。在现实运用中,应用软件的工作规则和开发步骤,采用React技术建设突发性事件应急预警系统。

本设计主要实现集人性化、高效率、便捷等优点于一身的突发性事件应急预警系统,实现功能:系统用户、应急预案管理、企业信息管理、安全检查管理、安全预警管理、事故上报管理、事故调查管理、安全通知管理等功能模块。系统通过浏览器与服务器进行通信,实现数据的交互与变更。只需通过一台电脑,动动手指就可以操作系统,实现数据通信管理。整个系统的设计过程都充分考虑了数据的安全、稳定及可靠等问题,而且操作过程简单。本系统通过科学的管理方式、便捷的服务提高了工作效率,减少了数据存储上的错误和遗漏。

突发性事件应急预警系统使用基于Node.js的React框架,React.js 是由Facebook开发的一个用于构建用户界面的JavaScript库,它也是一种流行的前端框架。使用React我们可以方便、快速的创建Web网站的服务器或API接口的服务器。数据方面主要采用的是微软的MySQL关系型数据库来作为数据存储媒介,配合前台HTML+CSS技术完成系统的开发。

关键词:突发性事件应急预警系统,React框架;Node.js

Abstract

With the arrival of the Internet trend, all walks of life are considering using the Internet to promote themselves. The best way is to establish their own Internet systems, and maintain and manage them. In practical applications, the working rules and development steps of application software are used to construct an emergency warning system for sudden events using React technology.

This design mainly implements an emergency warning system for sudden events that combines the advantages of humanization, high efficiency, and convenience. The functions include system users, emergency plan management, enterprise information management, security inspection management, security warning management, accident reporting management, accident investigation management, safety notification management, and other functional modules. The system communicates with the server through a browser to achieve data exchange and change. You only need to use a computer and move your fingers to operate the system, achieving data communication management. The entire system design process fully considers issues such as data security, stability, and reliability, and the operation process is simple. This system improves work efficiency and reduces errors and omissions in data storage through scientific management and convenient services.

The emergency warning system for sudden events uses the React framework based on Node.js. React.js is a JavaScript library developed by Facebook for building user interfaces and is also a popular front-end framework. Using React, we can easily and quickly create servers for web websites or API interfaces. In terms of data, Microsoft's MySQL relational database is mainly used as the data storage medium, and the system development is completed in conjunction with front-end HTML+CSS technology.

Keywords: Emergency warning system for sudden events, React framework; Node.js

目   录

1绪论

1.1 研究背景

1.2 研究目的和意义

1.3 研究内容

1.4 论文组成结构

2开发工具及相关技术介绍

2.1 React框架介绍

2.2 B/S体系结构

2.3 MySQL数据库

2.4 Node.js主要功能

3系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2 经济可行性

3.1.3 操作可行性

3.2 需求分析

3.3 非功能性分析

3.4 系统用例分析

3.5 系统数据流程分析

4系统设计

4.1 系统架构设计

4.2 系统功能结构

4.3 数据库设计

4.3.1 概念模型设计

4.3.2 逻辑结构设计

5系统实现

5.1 企业用户后台首页界面

5.2 用户注册界面

5.3 用户登录界面

5.4 密码修改界面

5.5 应急预案管理界面

5.6 企业信息管理界面

5.7 事故上报管理界面

6系统测试

6.1 测试目的

6.2 测试用例

6.3 测试结果

参考文献

致谢

1绪论

1.1 研究背景

随着社会的发展和科技的进步,突发性事件(如自然灾害、恐怖袭击、公共卫生事件等)的发生频率和影响范围都在不断增加。这些突发性事件对人们的生命安全、财产安全和社会稳定造成了巨大的威胁。因此,及时准确地预警和应急响应成为了保障公众安全的重要手段。

目前,国内外已经开展了大量关于突发性事件预警和应急响应系统的研究和实践工作。其中,基于互联网和移动终端的突发性事件应急预警系统表现出了很大的应用潜力和发展前景。这些系统利用互联网和移动终端的普及,实现了快速、准确地向公众发送预警信息,并提供了实时的应急响应指南和求助服务。

然而,目前的突发性事件应急预警系统还存在一些问题和挑战。首先,系统的反应速度和准确性需要进一步提高。由于突发性事件发生的突然性和不确定性,预警系统需要及时捕捉到相关信息,并快速进行预警。同时,系统需要保证预警信息的准确性,避免虚假警报和过度警报。其次,系统的可用性和易用性需要改进。预警系统需要满足不同用户群体的需求,包括企业用户、应急人员、政府部门等。因此,系统需要提供多样化的功能和界面,以方便用户的使用和理解。最后,系统的可靠性和安全性也是重要的考虑因素。突发性事件往往引发恐慌和混乱,因此预警系统需要保证数据的完整性和可信性,避免信息的篡改和泄露。

为了解决上述问题和挑战,本论文将基于React技术开发一款突发性事件应急预警系统。React是一种由Facebook开发的用于构建用户界面的JavaScript库,具有组件化、响应式和高效的特点。通过使用React技术,本系统将提供快速、准确的预警信息,同时提供丰富多样的功能和用户界面。此外,本系统将采用安全加固和数据加密等技术,确保系统的可靠性和安全性。

通过开展本论文的研究,将为突发性事件预警和应急响应领域提供参考和借鉴,推动突发性事件预警系统的发展和应用。同时,本论文将对React技术在开发突发性事件应急预警系统中的应用进行实践和探索,以验证其适用性和优势。

1.2 研究目的和意义

突发性事件的发生对社会造成了巨大的影响,包括自然灾害、恐怖袭击、疫情爆发等。突发性事件的发生往往很难预料,但我们可以通过建立一个应急预警系统来帮助及时响应和处理这些事件,减少损失并保护人们的安全。本论文旨在使用React技术构建一个基于Web的突发性事件应急预警系统,提供实时的事件信息和相关指导,帮助人们做出正确的决策和行动。本论文的研究意义在于提高突发性事件的应急响应能力,便捷获取实时的事件信息,促进跨部门、跨地区的合作,促进公众参与和意识提高,推动技术在应急管理中的应用,为突发性事件的应急管理提供具体解决方案。

1. 提高突发性事件的应急响应能力:突发性事件通常发生突然且具有不确定性,对应急响应的速度和准确性提出了较高要求。通过建立一个基于React的应急预警系统,用户可以随时获取最新的事件信息,并获得相关指导和建议,帮助他们更好地做出应对措施,提高对突发事件的应急响应能力。

2. 便捷获取实时的事件信息:传统的应急预警系统往往通过电视、广播等渠道发布事件信息,但这些渠道的覆盖范围有限,且无法提供个性化的推送服务。基于React的应急预警系统可以利用Web技术实现实时信息的推送和个性化定制,用户可以根据自己的需求和关注点获取最新的事件信息。

3. 促进跨部门、跨地区合作:突发性事件的应急响应往往需要多个部门和地区的紧密合作,协调各方资源和措施。基于React的应急预警系统可以提供一个平台,促进部门和地区之间的信息共享和协作,增加应急响应的效率和准确性。

4. 促进公众参与和意识提高:基于React的应急预警系统可以向公众提供实时的事件信息和指导,使他们更加了解突发性事件,并为其提供参与应急响应的机会和渠道。通过提高公众的应急意识和参与度,可以增加社会对突发性事件的应对能力和抵抗力。

5. 推动技术在应急管理中的应用:本论文将使用React技术构建应急预警系统,推动Web技术在突发性事件应急管理中的应用和探索。这将为应急管理领域的技术创新提供一个示范和参考,并有助于推动应急管理的现代化和智能化进程的发展。

1.3 研究内容

突发性事件应急预警系统的开发及实现,所需要的工作内容:

(1)首先是确定选题,确定好所要做的系统,并对系统的背景及现在面临的一些问题等进行系统的初步确认。

(2)系统确认完成后,结合系统开发的需求进行确认系统开发所使用的技术,突发性事件应急预警系统的开发使用React框架,数据库进行平台的搭建开发,确认好使用的技术进行技术分析,所使用的技术是否可以完成系统的实现。

(3)确定好系统使用的技术,进行确认系统所划分的用户触,并且根据用户触划分确定所要设计的功能模块,对突发性事件应急预警系统的设计主要划分别为管理员和用户,并且所使用的功能模块也相应不同,但系统的数据库实现的内容是交互的,用户可以随时根据自己的需求进行信息搜索,对于系统工作人员可以根据自己的分管内容进行在线信息的处理及操作,管理员获取到所有用户的详细数据信息,并根据需求进行第一时间处理解决。

(4)系统的功能模块确认完成后进行程序及界面的设计,设计完成后,组通过测试来判断程序是否完善,对于系统测试,要不同的用户进行不同的内容编辑及提交,及使用不同的测试方式找出程序中存在的漏洞,并对程序出现的漏洞问题进行在线解决处理,如果测试系统没有任何问题时,可以将系统上传进行正式操作使用。

1.4 论文组成结构

本文共分为六章,章节内容安排如下:

第一章:引言。主要介绍了课题研究的背景,国内目前相关研究现状以及本文的研究内容与主要工作。

第二章:相关技术介绍。主要对本系统使用的相关技术和开发工具进行介绍。

第三章:系统需求分析。主要从系统的用户、功能等方面进行需求分析。

第四章:系统概要设计。主要对系统框架、系统功能模块、数据库进行功能设计。

第五章:系统实现。主要介绍了系统框架搭建、系统界面的实现。

第六章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试

第七章:总结与展望。


2开发工具及相关技术介绍

2.1 React框架介绍

React是用于构建用户界面的JavaScript库, 起源于Facebook的内部项目[1],该公司对市场上所有 JavaScript MVC框架都不满意,决定自行开发一套,用于架设Instagram的网站。于2013年5月开源。

React的早期原型被称为“FaxJS”,它是由Facebook工程师Jordan Walke开发,因为他深受XHP的影响,XHP是一个简单的PHP HTML组件框架。React于2011年首次亮相,首次用于Facebook的Newsfeed。第二年在Instagram中使用。2013年5月,React在美国JSConf开源[2]。

React主要用于构建UI。可以在React里传递多种类型的参数,如声明代码,帮助开发者渲染出UI、也可以是静态的HTML DOM元素、也可以传递动态变量、甚至是可交互的应用组件。

框架特点:

1.声明式设计:React使创建交互式UI变得轻而易举。为应用的每一个状态设计简洁的视图,当数据变动时React能高效更新并渲染合适的组件[3]。

2.组件化: 构建管理自身状态的封装组件,然后对其组合以构成复杂的 UI。

3.高效:React通过对DOM的模拟,最大限度地减少与DOM的交互。

4.灵活:无论使用什么技术栈,在无需重写现有代码的前提下,通过引入React来开发新功能[4]。

2.2 B/S体系结构

B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Chrome、Safari、Microsoft Edge、Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server同数据库进行数据交互[5]。

2.3 MySQL数据库

MySQL数据库已经成为网络上的一种强大的工具,它能够支持多个用户,并且能够根据客户端和服务端的需求进行调整,从而满足不同的需求。在这里,服务端和客户端只是一种软件上的概念,而我们所使用的计算机硬件则没有必要完全相互匹配[6]。

MySQL作为一个受到广泛认可的开放式DBMS,其卓越的性能和易于操作的特性,以及其在多种操作环境中的灵活性,让其成为了众多AP中的首选。此外,MySQL还具有良好的跨平台性,让软件开发人员对其有着极高的评价。与传统的关联式数据库系统形式大相径庭,MySQL拥有一套完善的数据库管理策略,以确保用户的安全、稳健、安全。MySQL具备良好的容错、安全、快速、稳健的特点,使得MySQL成为一款极其实用的数据库管理工具[7]。

MySQL拥有一种独特的权限分配机制,可以根据用户的身份和业务逻辑,为用户提供更多的选择,从而大大提高了MySQL的安全性和完整性,远超过其他关系型数据库。

MySQL具有强大的功能,能够处理各种数据类型,包括动态、静态、多种语言,从而使用户能够轻松访问多种数据。

MySQL具有多种功能[8],它能够支持多种平台的开发,并且支持多种编程语言[7],使得用户能够轻松访问和使用MySQL数据库。

2.4 Node.js主要功能

V8引擎本身使用了一些最新的编译技术。这使得用Javascript这类脚本语言编写出来的代码运行速度获得了极大提升,又节省了开发成本。对性能的苛求是Node的一个关键因素[9]。 Javascript是一个事件驱动语言,Node利用了这个优点,编写出可扩展性高的服务器。Node采用了一个称为“事件循环(event loop)”的架构,使得编写可扩展性高的服务器变得既容易又安全。提高服务器性能的技巧有多种多样。Node选择了一种既能提高性能,又能减低开发复杂度的架构。这是一个非常重要的特性。并发编程通常很复杂且布满地雷。Node绕过了这些,但仍提供很好的性能。

Node采用一系列“非阻塞”库来支持事件循环的方式。本质上就是为文件系统、数据库之类的资源提供接口。向文件系统发送一个请求时,无需等待硬盘(寻址并检索文件),硬盘准备好的时候非阻塞接口会通知Node。该模型以可扩展的方式简化了对慢资源的访问, 直观,易懂。尤其是对于熟悉onmouseover、onclick等DOM事件的用户,更有一种似曾相识的感觉[10]。

虽然让Javascript运行于服务器端不是Node的独特之处,但却是其一强大功能。不得不承认,浏览器环境限制了我们选择编程语言的自由。任何服务器与日益复杂的浏览器客户端应用程序间共享代码的愿望只能通过Javascript来实现[11]。虽然还存在其他一些支持Javascript在服务器端 运行的平台,但因为上述特性,Node发展迅猛,成为事实上的平台。

在Node启动的很短时间内,社区就已经贡献了大量的扩展库(模块)。其中很多是连接数据库或是其他软件的驱动,但还有很多是凭他们的实力制作出来的非常有用的软件。

最后,不得不提到的是Node社区。虽然Node项目还非常年轻,但很少看到对一个项目如此狂热的社区。不管是新手,还是专家,大家都围绕着项目,使用并贡献自己的能力,致力于打造一个探索、支持、分享、听取建议的乐土。

3系统分析

3.1 可行性分析

在软件开发的过程中,可行性分析是至关重要的,它旨在评估问题的可行性,以便尽可能快地解决,同时也要考虑到不同的解决方案的优势和劣势,以及实施这些方案所带来的经济效益。通过对突发性事件应急预警系统的可行性分析,我们可以从技术、操作和经济三个方面来评估其可行性,从而为其提供有效的支持和保障。

3.1.1 技术可行性

所谓技术可行性,是指能否在有限的时间内实现预期设定的功能。在开发和设计中是否有未解决的问题。完成的项目能否很好地应用,如果有任何不足之处,后期的维护是否会有较大的困难。经过对该系统的评估,确定现有的技术可以达到目标。通过使用React技术来创建动态的页面,采取低耦合的架构,搭载灵活的数据库,以及强劲的服务器,我们能够显著地改善系统的性能。这表明,我们不仅要追求理论上的目标,还要在实践中不断探索。

3.1.2 经济可行性

突发性事件应急预警系统采用React和Node.js技术,这样可以有效地降低软硬件的开发与维护费用,同时又能够让用户更加轻松地访问资源资源,从而提高服务质量。此外,该平台的推出,可以有效地降低运营者的劳动强度,为企业带来更多的经济效益。虽然突发性事件应急预警系统的构建并非特别困难,但由于它的投入相比较少,而且能够带来更高的效率,因此,我们认为这个系统的建立具有很强的可持续性,而且能够带来更高的经济效益,而且比起日常的维护与管理更具有价值。

3.1.3 操作可行性

突发性事件应急预警系统的前台页面简洁易懂,无论是系统管理员还是企业用户,只要电脑连接到网络,就可以轻松访问网站,而且不需要任何操作指导,只要输入正确的URL地址,就可以轻松完成所有的操作。由于无需任何复杂的环境配置,这个系统非常简单,易于操作,因此它是一个非常实用的工具。

3.2 需求分析

为了满足用户的需求,突发性事件应急预警系统将系统划分为管理员和企业用户,每个部分都有独特的功能,以便更加便捷地管理信息。此外,系统还具有简单易操作的特点,可以更加精确、全面地实现用户的需求。

企业用户功能模块:

(1)用户注册登录:企业通过系统注册页填写信息进行账号注册,注册完成后登录系统。

(2)个人信息:企业登录后可对账号的个人资料和密码进行修改。

(3)应急预案管理:企业用户点击“应急预案管理”可以查看所有的应急预案信息列表,支持通过事件名称或事件类型查询相关应急预案信息。

(4)企业信息管理:企业用户点击“企业信息管理”可以查看所有已添加的企业信息列表,点击“添加”可以添加新的企业信息,输入企业用户、用户姓名、企业名称、企业地址、安全生产许可证、企业简介等信息完成添加。

(5)安全检查管理:企业用户点击“安全检查管理”可以查看所有的安全检查信息列表,支持通过用户姓名、企业名称或检查时间查询相关安全检查信息。

(6)安全预警管理:企业用户点击“安全预警管理”可以查看所有的安全预警信息列表,支持通过用户姓名、企业名称或检查事件查询相关安全预警信息。

(7)事故上报管理:企业用户点击“事故上报管理”可以查看所有已提交的事故上报列表,点击“添加”可以添加新的事故上报信息,输入企业用户、用户姓名、企业名称、企业地址、事故名称、事故原因等信息完成添加。

(8)事故调查管理:企业用户点击“事故调查管理”可以查看所有的事故调查信息列表,支持通过用户姓名查询相关事故调查信息。

(9)安全通知管理:企业用户点击“安全通知管理”可以查看所有的安全通知信息列表,支持通过通知标题或通知事件查询相关安全通知信息。

后台管理员功能:

(1)登录:管理员在后台可以输入用户名+密码进行登录,默认账号名admin,密码加密使用MD5,管理员的用户名和密码是在数据库中直接设定好的。

(2)系统用户:管理员点击“系统用户”菜单可以对管理员和企业用户信息进行增删改查。

(3)应急预案管理:管理员点击“应急预案管理”可以查看所有的应急预案信息列表,支持通过事件名称或事件类型查询相关应急预案信息。点击“添加”可以添加新的应急预案信息,输入事件名称、事件类型、应对措施、应对流程等信息完成添加。

(4)企业信息管理:管理员点击“企业信息管理”可以查看所有的企业信息列表,点击详情可以查看详细信息,点击右边的“检查”按钮可以对企业进行安全检查情况信息提交。

(5)安全检查管理:管理员点击“安全检查管理”可以查看所有的安全检查信息列表,支持通过用户姓名、企业名称或检查时间查询相关安全检查信息。

(6)安全预警管理:管理员点击“安全预警管理”可以查看所有的安全预警信息列表,支持通过用户姓名、企业名称或检查事件查询相关安全预警信息。

(7)事故上报管理:管理员点击“事故上报管理”可以查看所有用户已提交的事故上报信息列表,点击右边的“调查”按钮可以对事故调查信息进行填写上传。

(8)事故调查管理:管理员点击“事故调查管理”可以查看所有的事故调查信息列表,支持通过用户姓名查询相关事故调查信息。

(9)安全通知管理:管理员点击“安全通知管理”可以查看所有的安全通知信息列表,支持通过通知标题或通知事件查询相关安全通知信息。点击“添加”可以添加新的安全通知信息,输入通知标题、通知类型、通知时间、通知内容等信息完成添加。

3.3 非功能性分析

突发性事件应急预警系统的非功能性需求比如突发性事件应急预警系统的安全性怎么样可靠性怎么样性能怎么样可拓展性怎么样等。具体可以表示在如下3-1表格中:

3-1突发性事件应急预警系统非功能需求表

安全性

主要指突发性事件应急预警系统数据库的安装数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指突发性事件应急预警系统能够安装用户的指示进行操作经过测试可靠性90%以上。

性能

性能是影响突发性事件应急预警系统占据市场的必要条件所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着突发性事件应急预警系统页面展示内容进行操作就可以了。

可维护性

突发性事件应急预警系统开发的可维护性是非常重要的经过测试可维护性没有问题

3.4 系统用例分析

根据上一节功能分析,可以得出系统的用例。

企业用户角色用例如图3-1所示。

图3-1 用户用例图

管理员用例图如下所示。

图3-2 管理员用例图

3.5 系统数据流程分析

相比于强调控制逻辑的程序流程图,系统数据流图更加关注的是系统中数据的实际流动和处理,它能够清晰地展示出数据的规模和特征,因此,它在系统结构化分析中扮演着至关重要的角色,受到广泛的认可。

突发性事件应急预警系统的顶层数据流如下图所示。

图3-3 系统顶层数据流图

在系统的顶层,用户作为外部实体,第一步就是进行登录验证。用户信息表会返回一个密码,如果它是正确的,就会登录系统;如果是错误的,就会收到反馈信息。登录完成后,根据用户的不同需求,可以进行读写数据库。

系统底层数据流如下图所示。

图3-4 系统底层数据流图

系统的基础架构由管理员和用户组成,他们之间的数据流动可以通过数据表的形式进行,这些数据表可以提供必要的信息,以便进行复杂的逻辑操作。


4系统设计

4.1 系统架构设计

当前,B/S架构的数据访问模式已经大大改善:用户只需要打开突发性事件应急预警系统,就能够获取系统的信息,而且,系统会根据用户的需要,自动响应并解决所有的问题。此外,用户还能够查阅服务器的处理结果,从而更好地了解数据的流转情况。突发性事件应急预警系统采用三层结构,即视觉-模拟-决策层。其中,视觉层负责接收来自用户的信息并将其呈现给用户;而模拟层则负责完成与用户有关的任务,包括组织信息、进行流程优化、提升用户体验。决策层则负责协商决策,并确保两层结果的一致性。

系统架构图如下图所示。

图4-1 系统架构图

4.2 系统功能结构

基于React的突发性事件应急预警系统整体上来说由企业用户和管理员界面组成。

虽然两个模块看起来各自独立,但它们所使用的数据库却是一致的。这些模块的功能是经过精心设计,根据先前的需求进行分析,并结合相关资料进行编排而成的。

综上所述,系统功能结构图如下所示。

图4-2 系统功能结构图

4.3 数据库设计

一个优秀的系统必须具备完善的后台数据库,就像建筑物一样,它不是一蹴而就的,而是需要经过精心设计,以确保其稳固可靠。只有将数据库设计得完善,并且考虑到各个方面,才能保证系统的可靠性,避免出现任何问题。

4.3.1 概念模型设计

借助目前的UML建模软件,E-R图使其他用户可以快速轻松地了解系统的功能以及他们之间的关系。突发性事件应急预警系统总E-R图如下所示。

图4-3 系统E-R图

4.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

用户编号:

表accident_investigation (事故调查)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

accident_investigation_id

int

10

0

N

Y

事故调查ID

2

enterprise_users

int

10

0

Y

N

0

企业用户

3

user_name

varchar

64

0

Y

N

用户姓名

4

enterprise_name

varchar

64

0

Y

N

企业名称

5

enterprise_address

varchar

64

0

Y

N

企业地址

6

accident_name

varchar

64

0

Y

N

事故名称

7

cause_of_accident

text

65535

0

Y

N

事故原因

8

investigation_and_analysis

text

65535

0

Y

N

调查分析

9

handling_situation

varchar

64

0

Y

N

处理情况

10

improvement_measures

text

65535

0

Y

N

改进措施

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表accident_reporting (事故上报)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

accident_reporting_id

int

10

0

N

Y

事故上报ID

2

enterprise_users

int

10

0

Y

N

0

企业用户

3

user_name

varchar

64

0

Y

N

用户姓名

4

enterprise_name

varchar

64

0

Y

N

企业名称

5

enterprise_address

varchar

64

0

Y

N

企业地址

6

accident_name

varchar

64

0

Y

N

事故名称

7

cause_of_accident

text

65535

0

Y

N

事故原因

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

表emergency_plan (应急预案)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

emergency_plan_id

int

10

0

N

Y

应急预案ID

2

event_name

varchar

64

0

Y

N

事件名称

3

event_type

varchar

64

0

Y

N

事件类型

4

response_measures

text

65535

0

Y

N

应对措施

5

response_process

text

65535

0

Y

N

应对流程

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表enterprise_information (企业信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

enterprise_information_id

int

10

0

N

Y

企业信息ID

2

enterprise_users

int

10

0

Y

N

0

企业用户

3

user_name

varchar

64

0

Y

N

用户姓名

4

enterprise_name

varchar

64

0

Y

N

企业名称

5

enterprise_address

varchar

64

0

Y

N

企业地址

6

safety_production_license

varchar

255

0

Y

N

安全生产许可证

7

company_introduction

varchar

64

0

Y

N

企业简介

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表enterprise_users (企业用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

enterprise_users_id

int

10

0

N

Y

企业用户ID

2

user_name

varchar

64

0

Y

N

用户姓名

3

user_phone_number

varchar

64

0

Y

N

用户电话

4

user_gender

varchar

64

0

Y

N

用户性别

5

enterprise_name

varchar

64

0

Y

N

企业名称

6

enterprise_address

varchar

64

0

Y

N

企业地址

7

examine_state

varchar

16

0

N

N

已通过

审核状态

8

user_id

int

10

0

N

N

0

用户ID

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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:

表safety_inspection (安全检查)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

safety_inspection_id

int

10

0

N

Y

安全检查ID

2

enterprise_users

int

10

0

Y

N

0

企业用户

3

user_name

varchar

64

0

Y

N

用户姓名

4

enterprise_name

varchar

64

0

Y

N

企业名称

5

enterprise_address

varchar

64

0

Y

N

企业地址

6

inspection_time

date

10

0

Y

N

检查时间

7

inspection_situation

text

65535

0

Y

N

检查情况

8

discover_problems

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

更新时间

表security_notice (安全通知)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

security_notice_id

int

10

0

N

Y

安全通知ID

2

notification_title

varchar

64

0

Y

N

通知标题

3

notification_type

varchar

64

0

Y

N

通知类型

4

notification_time

date

10

0

Y

N

通知时间

5

notification_content

text

65535

0

Y

N

通知内容

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表security_warning (安全预警)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

security_warning_id

int

10

0

N

Y

安全预警ID

2

enterprise_users

varchar

64

0

Y

N

企业用户

3

user_name

varchar

64

0

Y

N

用户姓名

4

enterprise_name

varchar

64

0

Y

N

企业名称

5

enterprise_address

varchar

64

0

Y

N

企业地址

6

inspection_time

date

10

0

Y

N

检查时间

7

inspection_situation

text

65535

0

Y

N

检查情况

8

discover_problems

text

65535

0

Y

N

发现问题

9

warning_information

text

65535

0

Y

N

预警信息

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表sensitive_vocabulary (敏感词汇)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

email

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

会员折扣

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:


5系统实现

5.1 企业用户后台首页界面

当企业用户进入突发性事件应急预警系统的时候,可以对子菜单的应急预案管理、企业信息管理、安全检查管理、安全预警管理、事故上报管理、事故调查管理、安全通知管理等模块信息进行管理,企业用户后台首页界面展示如下图5-1所示。

图5-1 企业用户后台首页界面图

5.2 用户注册界面

突发性事件应急预警系统的企业用户是可以进行注册登录,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。其用用户注册界面展示如下图5-2所示。

图5-2注册界面图 

注册关键代码如下所示。

Register.prototype.index = async function(ctx) {

var group_list = await $.services["user_group"].get_list({}, Object.assign({}, this.config));

return await ctx.render(this.config.tpl + "index.html", {

group_list

});

};

Register.prototype.api = async function(ctx) {

var user = $.services.user;

var body = ctx.request.body;

var username = body.username;

var obj = await user.get_obj({

username

});

if (obj) {

return {

error: {

code: 70000,

message: "账户名已存在",

},

};

} else {

var password = md5(body.password);

var nickname = body.nickname;

var user_group = body.user_group;

var email = body.email;

var email_state= body.hasOwnProperty('email_state') ? body.email_state : 0;

var phone = body.phone;

var phone_state= body.hasOwnProperty('phone_state') ? body.phone_state : 0;

var avatar = body.avatar;

var bl_reg = await user.add({

username,

password,

nickname,

user_group,

email,

email_state,

phone,

phone_state,

avatar

});

if (bl_reg) {

return {

result: "注册成功"

};

} else {

return {

error: {

code: 70000,

message: "注册失败",

},

};

}

}

}; 

5.3 用户登录界面

突发性事件应急预警系统中注册后的用户是可以通过自己的账户名和密码进行登录的,当企业用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到突发性事件应急预警系统的首页中;否则将会提示相应错误信息,用户登录界面如下图5-3所示。

图5-3用户登录界面图

登录的逻辑代码如下所示。

Login.prototype.api = async function(req) {

    var body = req.body;

    var obj = await $.services["user"].get_obj({

        username: body.username

    },{like:false});

    if (obj) {

        var group = await $.services["user_group"].get_obj({

            name:obj.user_group

        })

        if (group){

            if (group.name!=="管理员"){

                var sql = "select examine_state from "+ group.source_table +" WHERE user_id = " + obj.user_id;

                var userExamine = await $.mysql.run(sql);

                if (userExamine && userExamine.length > 0 && userExamine[0].examine_state!=="已通过"){

                    return {

                        error: {

                            code: 70000,

                            message: "该用户审核未通过"

                        },

                    };

                }

            }

            if (obj.state!==1){

                return {

                    error: {

                        code: 70000,

                        message: "用户非可用状态,不能登录"

                    },

                };

            }

            var password = md5(body.password);

            if (password === obj.password) {

                req.session.user = obj;

                var date = Date.parse(new Date());

                var token = md5(obj.user_id + "_" + date);

                await $.services["access_token"].add({

                    token,

                    info: JSON.stringify(obj),

                    user_id:obj.user_id

                });

                obj.token = token;

                return {

                    result: {obj}

                };

            } else {

                return {

                    error: {

                        code: 70000,

                        message: "密码错误"

                    },

                };

            }

        }else {

            return {

                error: {

                    code: 70000,

                    message: "用户组不存在"

                },

            };

        }

    } else {

        return {

            error: {

                code: 70000,

                message: "账户不存在"

            }

        };

    }

};

5.4 密码修改界面

当企业用户进入突发性事件应急预警系统的时候,可以对账号的个人信息包括个人资料、头像和密码进行修改。密码修改界面如下图5-4所示。

图5-4修改密码界面图

修改密码的关键代码如下所示。

Change_password.prototype.api = async function(ctx) {

var user = $.services.user;

var body = ctx.request.body;

var token = ctx.headers["x-auth-token"];

var access_token = await $.services["access_token"].get_obj({

token

});

var info = JSON.parse(access_token.info);

var username = info.username;

var o_password = md5(body.o_password);

var change_password = md5(body.password);

var obj = await user.get_obj({

username

});

if (obj) {

if (o_password == obj.password) {

var bl_for = await user.set({

username

}, {

password: change_password

});

if (bl_for) {

return {

result: "修改成功"

};

} else {

return {

error: {

code: 70000,

message: "修改失败",

},

};

}

} else {

return {

error: {

code: 70000,

message: "密码错误",

},

};

}

} else {

return {

error: {

code: 70000,

message: "账户不存在",

},

};

}

};

5.5 应急预案管理界面

当企业用户进入突发性事件应急预警系统的时候,可以对应急预案信息进行查看,管理员可以添加新的应急预案信息。管理员添加应急预案信息界面如下图5-5所示。

图5-5管理员添加应急预案信息界面图

企业用户应急预案列表界面如下图5-6所示。

图5-6企业用户应急预案界面图

5.6 企业信息管理界面

当进入突发性事件应急预警系统的时候,企业用户和管理员都可以查看企业信息列表,也可以对企业信息进行添加。以企业用户界面为例,企业用户添加企业信息界面如下图5-7所示。

图5-7企业用户添加信息界面图

增加企业信息的关键代码如下所示。

Controller.prototype.add = async function(ctx) {

var result = await this.service.add(ctx.request.body, this.config);

if (this.service.error) {

return {

error: this.service.error,

};

}

return {

result,

};

};

5.7 事故上报管理界面

当进入突发性事件应急预警系统的时候,企业用户可以点击“事故上报管理”进行事故上报信息提交,管理员在后台管理端对事故上报信息进行事故调查。企业用户提交事故上报界面如下图5-8所示。

图5-8企业用户提交事故上报界面图

管理员添加事故调查信息界面如下图5-9所示。

图5-9管理员添加事故调查信息界面图
6系统测试

6.1 测试目的

在这款产品正式投入使用之前,试用是至关重要的一步。即使某些部分的开发没有出现任何问题,将多个模块组合在一起仍然可能会出现矛盾。就像每个人都有自己的特点,但如果混杂在一起,就会显得凌乱不堪,因此必须确保彼此之间能够达成默契的配合。在测试中,应该仔细检查其中的每一项内容,以确保它们符合预期的标准。如果发现有一些偏离,应该及时进行调整,以确保最终的结果能够达到预期的目标。

6.2 测试用例

系统测试包括:用户登录功能测试、后台首页展示功能测试、应急预案信息添加、事故上报、密码修改功能测试,如表5-1、5-2、5-3、5-4、5-5所示:

用户登录功能测试:

表5-1 用户登录功能测试表

用例名称

用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

后台首页查看功能测试:

表5-2 后台首页查看功能测试表

用例名称

后台首页查看

目的

测试后台首页查看功能

前提

用户登录

测试流程

点击后台首页列表

预期结果

可以查看到所有后台首页信息

实际结果

实际结果与预期结果一致

管理员添加应急预案信息界面测试:

表5-3 管理员添加应急预案信息界面测试表

用例名称

应急预案信息发布测试用例

目的

测试应急预案信息发布功能

前提

管理员正常登录情况下

测试流程

1)管理员点击应急预案信息管理,然后点击添加后并填写信息。

2)点击进行提交。

预期结果

提交以后,页面首页会显示新的应急预案信息 

实际结果

实际结果与预期结果一致

事故上报功能测试:

表5-4事故上报功能测试表

用例名称

事故上报测试

目的

测试事故上报功能

前提

测试流程

1)在后台首页模块点击事故上报。

2)填写购买信息点击提交。

预期结果

成功提交购买信息

实际结果

实际结果与预期结果一致

密码修改功能测试:

表5-5 密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)管理员密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

6.3 测试结果

通过编写教学管理系统的测试用例,已经检测完毕用户登录模块、后台首页查看模块、应急预案信息添加模块、事故上报模块、密码修改功能测试,通过这5大模块为教学管理系统的后期推广运营提供了强力的技术支撑。

7总结与展望

在本次系统设计的过程中,我们将深入探讨突发性事件应急预警系统,从研究背景、目标到实施方案,并详细阐述每一章的内容,以及该系统的硬件和软件环境。其中包含了:需求分析+功能需求+用例图,以此表示系统的功能的流程、模块的处理过程。绘制总体各个结构+流程图,并根据功能细致设计的需要,再来设计数据库的表结构,并绘制E-R图,实现程序接口,然后完成调试。最后,本文进行了总结,并提出了下一步的发展方向。

在这次设计中,我通过不断地探索和学习,掌握了Node.js技术和React框架,并创建了一个突发性事件应急预警系统,这让我对编写系统的必要性和运行环境有了更深入的了解。为了更好地完成这个项目,我花费了大量的时间,不仅丰富了自己的知识面,并且学习并积累了许多宝贵经验。系统刚开始时,我对React框架这个技术只是稍微有些了解,但是通过这次基于React框架的突发性事件应急预警系统设计,让我更加深入地去探讨了,React框架运转的原理,从中学到了如何去配置服务器环境和连接数据库。

系统的这一次发展提升了我自己的能力,也学到了框架如何实现基本功能。同时在编程代码各方面也做了的很多尝试,从关注代码错误到做一些小的修改,都有了很大的提高。同时,在撰写论文时,还查阅了大量的参考资料,对论文的结构和文献资料进行了总结和分析。已作出努力,尽量减少错误和走弯路,从一开始的系统功能概念化到逐一实施,并进行了广泛的研究报告。也许后续操作过程中还有很多实现不完美的功能,但我依然会继续学习,努力在以后的软件开发、编号代码中吸取教训,总结不完美之处,努力的在软件开发越来越强。以上是我在本次设计中的总结,希望在未来取得更好的成绩。


参考文献

[1]郭斌,曹卫东.关于物联网的城市洪涝应急预警及管理系统分析[C]//河海大学,河北工程大学,浙江水利水电学院,北京水利学会,天津市水利学会.2023(第二届)城市水利与洪涝防治学术研讨会论文集.黄河水利委员三门峡库区水文水资源局;,2023:18.

[2]Liu K ,Shi J ,Chen T , et al.Research on Safety Evaluation and Early Warning of Emergency Management Capability for Major Disaster Accidents in Coal Mines Based on Complexity System Theory in the Context of Digitization[J].Academic Journal of Architecture and Geotechnical Engineering,2023,5(7):

[3]袁嘉栗,曹家宝,何胜文等.天空地一体化林火监控预警系统设计与研究[J].中国应急救援,2023,(06):32-35+53.

[4]罗方.高速公路特长隧道事件检测和自动预警系统探究[J].中国交通信息化,2023,(10):102-105.

[5]冯江平,黄仲明,刘焱等.核与辐射预警应急系统的构建及应用[J].能源与环保,2023,45(08):56-60.

[6]Ge D ,Mi Q ,Gong R , et al.Mass‐Producible 3D Hair Structure‐Editable Silk‐Based Electronic Skin for Multiscenario Signal Monitoring and Emergency Alarming System[J].Advanced Functional Materials,2023,33(46):

[7]余清秀,张林霞,杨珍希等.三维仿真技术在三高气田应急预警系统的应用[C]//中国石油学会天然气专业委员会.第33届全国天然气学术年会(2023)论文集(06综合).中国石油西南油气田公司安全环保与技术监督研究院;中国石油西南油气田公司技术咨询中心;,2023:9.

[8]Mehebub S ,Pravin P P ,Sufia R , et al.Assessing the effectiveness of existing early warning systems and emergency preparedness towards reducing cyclone-induced losses in the Sundarban Biosphere Region, India[J].International Journal of Disaster Risk Reduction,2023,90

[9]Fei H ,Qiuying L ,Jie M , et al.Design and Application of an Early Warning and Emergency Response System in the Transboundary Area of the Taihu Lake Basin[J].International Journal of Environmental Research and Public Health,2023,20(2):1340-1340.

[10]朱思峰,胡家铭,柴争义.区块链与端边云技术赋能城市应急预警系统[J].中国安全生产科学技术,2022,18(12):223-228.

[11]朱阿康.基于区块链的疫情预警系统的研究与实现[D].南京邮电大学,2022.001227.

[12]黎鸣鹤.基于大数据运用的城市应急管理能力提升[D].南昌大学,2022.004392.

[13]薛璐文.基于React框架的测井数据解释系统的设计与实现[D].西安电子科技大学,2022.002326.

[14]滕国栋.基于React的资源甘特图组件设计与实现[J].杭州师范大学学报(自然科学版),2022,21(01):101-106.

[15]刘旭东.煤矿在线智能应急预警系统的研究与应用[J].能源与环保,2021,43(11):188-192+199.

[16]刘然,基于车联网的观光车辆状态监测研究与应急预警系统开发.北京市,中国特种设备检测研究院,2021-09-28.

[17]吴清昊.基于React的闪购运营平台的设计与实现[D].北京交通大学,2021.000689.

[18]苏家啸,武永成.ReactNative技术浅析[J].中国管理信息化,2021,24(11):192-194.

[19]李垚,王学宏.基于React在项目管理信息系统的实现[C]//中国移动研究院,中国通信学会天线与射频技术委员会,天线系统产业联盟.中国移动5G天线产业技术研讨会论文集.中移铁通有限公司信息和产品开发中心;,2020:4.DOI:10.26914/c.cnkihy.2020.065464.

[20]战仕霞.基于React的信息管理系统前端自动化构建工具的设计与实现[D].北京交通大学,2020.001024.


致谢

“致谢”意味着论文的结束,也意味着自己的毕业设计顺利完成,同时也代表了自己的大学生涯即将结束,我即将要离开自己敬爱的老师和亲爱的同学们,在这里我首先要感谢的就是所有的老师,“春满江山绿满园,桃李争春露笑颜,东西南北春常在,唯有师恩留心间”,他们无论在我的学业还是在我的生活上付出了所有,对我谆谆教诲;其次我要感谢我的指导老师,他在我的整个毕业设计当中起着引导作用,每当我有困难的时候,他总会第一时间帮助我,引导我进行解决问题,而不是直接告诉我答案,“授人以鱼不如授人以渔”,指导老师的这种做法让我受益终生,同时我也从指导老师身上学习到了许多的开发技巧以及检验,这对我今后的开发起着十分重要的作用;再次,我需要感谢我的同学、室友,他们不仅仅在毕业设计上给我许多帮助意见,在大学同窗四年,他们给过我的帮助太多了,我对他们有太多的不舍,无法用言语表示,我相信在以后的人生道路上只要想到他们,我心里就会很温暖,这种友情是任何感情替代不了的;最后我还要感谢家人,感谢自己,感谢家人对我的支持,感谢自己在学业上的坚持,我相信我以后的道路会越来越好。

关注+点赞+收藏+私信博主,免费领取项目源码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值