摘 要
本文旨在探讨和研究武汉纺织大学团惠拼车系统的设计与实现过程,特别关注于利用SpringBoot框架进行后端开发的应用。研究首先分析了团惠拼车系统的需求背景,即解决大学生出行难、成本高的问题,以及为校园内的出行提供便利和经济效益。接着,文章详细阐述了系统的整体架构设计,包括前后端分离的设计思路、数据库设计、接口设计等关键部分。在开发过程中,我们采用了SpringBoot框架作为后端基础,利用其快速构建RESTful API的能力,简化了开发过程,提高了开发效率。此外,文章还介绍了系统的主要功能模块,如系统用户、发布行程管理、接单记录管理、支付记录管理、拼车记录管理、通知信息管理、一键报警管理、系统管理、网站公告管理、资源管理等,并讨论了系统实现中的关键技术和难点。最后,通过测试和用户反馈,验证了系统的稳定性和实用性,为武汉纺织大学师生提供了一个便捷、高效的出行解决方案。本研究不仅为类似校园拼车系统的设计与开发提供了参考,也进一步推动了SpringBoot框架在实际应用中的发展。
关键词: 武汉纺织大学团惠拼车系统;Vue;Spring Boot框架
Design and Research of Wuhan Textile University Tuan Hui carpooling system
Abstract
This article aims to explore and study the design and implementation process of the Wuhan Textile University Tuan Hui carpooling system, with a particular focus on the application of the SpringBoot framework for backend development. The study first analyzed the demand background of the Tuan Hui carpooling system, which aims to solve the problems of difficult and costly travel for college students, as well as provide convenience and economic benefits for campus travel. Next, the article elaborates on the overall architecture design of the system, including the design concept of front-end and back-end separation, database design, interface design, and other key parts. During the development process, we adopted the SpringBoot framework as the backend foundation, utilizing its ability to quickly build RESTful APIs, simplifying the development process and improving development efficiency. In addition, the article also introduces the main functional modules of the system, such as system users, publishing itinerary management, order receiving record management, payment record management, carpool record management, notification information management, one click alarm management, system management, website announcement management, resource management, etc., and discusses the key technologies and difficulties in system implementation. Finally, through testing and user feedback, the stability and practicality of the system were verified, providing a convenient and efficient travel solution for teachers and students at Wuhan Textile University. This study not only provides reference for the design and development of campus carpooling systems, but also further promotes the development of the SpringBoot framework in practical applications.
Key words:Wuhan Textile University Tuan Hui carpooling system; Vue; Spring Boot framewor
目 录
随着城市化的快速发展和人们生活节奏的加快,出行问题已成为日常生活中不可忽视的一部分。特别是对于武汉纺织大学这样的高校,师生众多,出行需求大,但传统的交通方式往往无法满足高效、经济、环保的出行要求。因此,团惠拼车系统应运而生,旨在解决这一难题。
武汉纺织大学团惠拼车系统不仅是对现有出行方式的一种补充和优化,更是对校园绿色出行、智慧校园建设的一次积极探索。该系统的研究与设计,首先基于校园内师生出行的实际需求,通过调研和分析,发现现有的交通方式存在诸多不足,如等待时间长、成本高、资源浪费等。因此,开发一个便捷、高效、经济的拼车系统,不仅可以满足师生的出行需求,还可以降低出行成本,减少交通拥堵,实现资源的有效利用。
此外,团惠拼车系统的设计研究也具有一定的社会意义。随着共享经济的发展,拼车作为一种绿色、环保的出行方式,逐渐受到人们的青睐。武汉纺织大学团惠拼车系统的成功实施,不仅可以为校园内的师生提供便利,还可以为其他高校、社区等提供借鉴和参考,推动拼车出行方式的普及和发展。
综上所述,武汉纺织大学团惠拼车系统设计研究不仅具有解决校园出行问题的实际需求,还具有推动共享经济、绿色出行、智慧校园建设等多重意义。这一研究不仅可以为武汉纺织大学师生带来实实在在的便利,还可以为相关领域的发展提供有益的探索和参考。
-
- 国内外研究现状
国内研究现状
近年来,随着共享经济的蓬勃发展和绿色出行理念的深入人心,国内对于拼车系统的研究与实践逐渐增多。高校作为出行需求密集的区域之一,也成为了拼车系统发展的重要阵地。目前,国内已有不少高校开展了拼车系统的相关研究与实践,如清华大学、北京大学等。这些系统主要聚焦于解决校园内师生的出行问题,通过提供便捷的拼车服务,降低出行成本,减少交通拥堵,促进资源的有效利用。
在技术上,国内的研究者通常选择使用成熟、稳定的技术框架进行开发,如SpringBoot、Spring Cloud等。这些框架具有快速构建、易于维护、高度可扩展等优点,能够满足高校拼车系统的开发需求。同时,国内的研究者还积极探索新技术在拼车系统中的应用,如人工智能、大数据等,以提升系统的智能化水平和用户体验。
国外研究现状
相较于国内,国外对于拼车系统的研究与实践起步较早,技术也更加成熟。在拼车系统的设计与开发方面,国外的研究者通常会结合当地的交通状况、出行需求等因素,进行深入的调研和分析,以制定出更加符合实际情况的系统方案。
在技术方面,国外的研究者通常倾向于使用开源技术栈进行开发,如Java、Python等。这些技术具有开源、免费、易于学习等优点,能够降低开发成本,提高开发效率。此外,国外的研究者还注重技术创新和模式创新,不断推出新的拼车模式和服务方式,如共享经济、无人驾驶等,为拼车系统的发展注入了新的活力。
综上所述,国内外在拼车系统的研究与实践方面均取得了一定的成果和经验。然而,由于国情、文化、交通状况等方面的差异,国内外的研究现状仍存在一定的差异和差异。因此,武汉纺织大学团惠拼车系统的设计研究需要综合考虑国内外的研究现状和经验,结合实际情况进行深入的分析和探讨。
根据市场调研得到的信息数据,结合国内外前沿研究,利用相关系统开发和设计方法,最终设计出武汉纺织大学团惠拼车系统。
本文共有七章,如下所示。
第一章概述了武汉纺织大学团惠拼车系统的研究背景和意义;精炼地总结了国内外研究情况和未来的研究趋势,最后给出了论文的组成结构。
第二章简要对系统各业务流程进行需求分析、可行性分析。
第三章对武汉纺织大学团惠拼车系统进行设计。
第四章对武汉纺织大学团惠拼车系统进行实现,并贴出相关页面截图,语言描述出具体功能实现的操作方法。
第五章对武汉纺织大学团惠拼车系统采用测试用例的方式来对一些主要功能模块测试,最后得出测试结果。
第六章总结全文并对未来的研究做出展望。
在软件开发的过程中系统的可行性分析是必不可少的,可行性的研究就是评估问题是否能得到解决并且是要以最少的时间和最少的代价来解决。为实现上面的目标还要必须考虑到解决这些问题的方法的优点和缺点,还要考虑到实现了这些系统规模的开发带来的经济效益。这里可以用技术的可行性,操作的可行性,经济的可行性对我们的系统进行可行性的研究。武汉纺织大学团惠拼车系统的可行性分析如下所示:
技术可行性是武汉纺织大学团惠拼车系统设计研究中使用SpringBoot框架的关键考量因素。SpringBoot以其轻量级、易于上手和快速构建的特点,为系统的开发提供了强大的支持。它简化了Spring应用的初始搭建以及开发过程,通过自动配置和起步依赖,让开发者能够专注于业务逻辑的实现,而不是繁琐的配置工作。此外,SpringBoot对RESTful API的支持使得前后端分离成为可能,提高了系统的可扩展性和可维护性。考虑到武汉纺织大学团惠拼车系统的需求特点,使用SpringBoot框架在技术上是完全可行的,它不仅能够满足系统的功能需求,还能够保证系统的稳定性和性能。
经济可行性是评估武汉纺织大学团惠拼车系统设计研究中使用SpringBoot框架的另一个重要方面。从经济角度来看,SpringBoot是一个开源框架,其使用成本相对较低,无需支付昂贵的许可费用。此外,SpringBoot的学习曲线平缓,意味着开发团队可以快速掌握并投入使用,从而缩短了开发周期,降低了人力成本。对于武汉纺织大学而言,采用基于SpringBoot的拼车系统,不仅能够满足校内师生的出行需求,提升出行效率,还可以通过减少交通拥堵和降低出行成本,实现经济效益的最大化。因此,从经济角度来看,使用SpringBoot框架进行武汉纺织大学团惠拼车系统的设计研究是切实可行的。
操作可行性是评估武汉纺织大学团惠拼车系统设计研究中使用SpringBoot框架时用户操作的便捷性和易用性。SpringBoot框架简化了系统的开发和维护过程,使得系统的功能实现更加直观和高效。这意味着对于系统管理员和用户来说,操作和维护基于SpringBoot的拼车系统将变得相对简单。此外,SpringBoot提供了丰富的文档和社区支持,用户在遇到问题时可以迅速找到解决方案。因此,从操作角度来看,使用SpringBoot框架进行武汉纺织大学团惠拼车系统的设计研究是完全可行的,它能够确保系统在日常使用中的稳定性和易用性,满足用户的基本操作需求。
在进行武汉纺织大学团惠拼车系统设计研究之前,深入的需求分析和市场研究是必不可少的步骤。这一环节旨在全面理解校园拼车服务的需求和痛点,确保系统能够精准地满足师生出行的需要,同时促进资源的有效利用和环境的可持续发展。
明确用户需求:通过与武汉纺织大学师生进行访谈、问卷调查等多种方式,我们深入了解他们的日常出行习惯、出行频率、出行目的地以及对拼车服务的期望和需求。同时,我们也与学校的交通管理部门沟通,探讨如何通过技术手段优化校园交通,减少交通拥堵和排放。
系统性能与界面设计:考虑到校园内师生对出行效率的关注,系统必须具备良好的响应速度和稳定性,确保用户能够迅速获得拼车信息并顺利出行。在界面设计上,我们将追求简洁直观,符合校园文化的风格,让师生能够快速上手并享受便捷的拼车服务。
业务流程与数据处理:我们将深入研究校园拼车的业务流程,确保系统能够无缝对接现有的校园交通体系,提供高效、便捷的拼车服务。在数据处理方面,我们将重视数据的安全性和隐私保护,确保用户信息得到严格保密。
持续学习与改进:随着校园出行需求和技术的不断发展,团惠拼车系统也需要不断地进行更新和改进。因此,我们将为系统提供持续的学习和改进机制,根据用户反馈和市场需求进行不断优化,确保系统始终能够为用户提供最佳的拼车体验。
综上所述,武汉纺织大学团惠拼车系统设计研究旨在通过技术手段解决校园出行问题,提升师生的出行效率和便利性,同时促进资源的有效利用和环境的可持续发展。我们期待这一系统能够为武汉纺织大学的师生带来更加便捷、环保的出行方式,为智慧校园建设贡献一份力量。
在设计和研究武汉纺织大学团惠拼车系统时,性能分析是确保系统能够满足高并发、低延迟和稳定运行的关键环节。以下是对系统性能的具体分析:
并发处理能力:考虑到武汉纺织大学师生在高峰时段可能产生的大量拼车请求,系统需要具备处理高并发请求的能力。通过负载均衡、分布式部署以及微服务架构等技术手段,我们确保系统能够在高并发场景下依然保持稳定的性能。
系统稳定性:系统的稳定性是长期运行和持续提供服务的基础。我们将采用容错机制、灾备恢复和定期维护等措施,确保系统在面对异常情况时能够迅速恢复,并持续为用户提供稳定可靠的拼车服务。
数据处理能力:系统需要处理大量的用户数据、行程数据和交易数据等。我们将采用高效的数据存储和查询技术,如分布式数据库和索引技术,确保系统能够快速地处理和分析这些数据,为用户提供精准、实时的拼车信息。
安全性:系统的安全性是保障用户信息和交易安全的关键。我们将采用多层次的安全措施,如数据加密、访问控制、安全审计等,确保用户数据的安全性和隐私性。
综上所述,武汉纺织大学团惠拼车系统的设计研究将致力于提供高性能、高并发、稳定可靠的拼车服务。通过优化系统架构、采用先进技术手段和加强安全管理等措施,我们确保系统能够满足校园内师生的出行需求,为他们带来更加便捷、高效的拼车体验。
武汉纺织大学团惠拼车系统中普通用户用例图如图2-1所示:

图2-1普通用户用例图
司机用户角色用例如图2-2所示。

图2-2司机用户用例图
管理员角色用例如图2-3所示。

图2-3管理员用例图
(1)增加数据流程
系统中的所有用户(管理员、普通用户和司机用户)都可以实现增加数据功能,图2-4显示的就是在增加数据时的流程。

图2-4增加数据流程图
(2)修改数据流程
在录入系统信息的时候如果信息有错,可以对系统中的数据进行编辑。图2-5显示的就是修改数据的流程。

图2-5修改数据流程图
(3)删除数据流程
在系统中经常会出现一些过期的数据,那就可以直接删除这些数据,图2-6就是删除数据时的流程图。

图2-6删除数据流程图
由于本系统在逻辑事务处理方面对数据库的操作比较频繁所以系统在底层连接数据库时并没有使用原生的JDBC,而是把JDBC进行了封装,封装之后相当于一个连接数据库的工具DB UTIL,这样使用起来会更加方便而且这样进行封装还可以降低系统中代码的冗余,当我们需要连接和使用数据库时只需要调用这个工具里面的一个方法就可以了。而且通过封装可以把对数据库的操作独立起来,当需要连接不同种类的数据库时只需要加以修改就可以达到目的。
DAO层本来并无这个类,它只是java中MVC构造里的一个model概念,主要就是里面的一些方法,而这些方法就是用来访问数据库的方法。我们在软件开发时DAO层我们一般都放接口和接口的实现类,用于来规范实现类的我们叫它接口,实现类重点用于对数据库的操纵。
MVC是一种系统研发的关键模型,M是Model模型,它是系统内部关键程序运行的核心,主要进行对数据库的各种操作。视图View是V也叫做视图,主要的作用是对一些数据进行显示。控制器Controller 是C执行从View的视图层来读取数据,然后控制用户的输入。
系统架构如下图所示。

图3-1系统架构图
进入系统后首先要进行登录,验证你的身份,赋予你不同的权限。当你成功登录后,页面会有多个板块,分别是后台首页、系统用户、发布行程管理、接单记录管理、支付记录管理、拼车记录管理、通知信息管理、一键报警管理、系统管理、网站公告管理、资源管理。里面界面简单易懂,根据标示可以直接进行方便快捷的操作。
系统功能结构图如下所示。

图3-2系统功能结构图
一个好的系统它的后台数据库一定要考虑的全面,这和我们建造房子一个概念,房子不是随心所欲建起来的,一切都是在合理设计的基础是实现的,地基打牢固了房子才能建的更高。数据库如果设计的很合理,而且每个方面都能考虑到了那么这个系统才能不会出现大的问题。
一个好的数据库可以关系到程序开发的优劣,数据库设计离不开表结构的设计,还有表与表之间的联系,以及系统开发需要设计的数据表内容等信息。在进行数据库设计期间,要结合实际情况来对数据库进行针对性的开发设计。
-
-
- 数据库E-R图设计
-
武汉纺织大学团惠拼车系统采用的是mysql数据库,数据存储快,因为武汉纺织大学团惠拼车系统,主要的就是对信息的管理,信息内容比较多,这就需要好好的设计一个好的数据库,分类要清楚,不能添加信息的时候,造成信息太过混乱,设计好的数据库首先就需要先把各个实体之间的关系表达明确,
系统的主要实体间关系E-R图如下图所示。

图3-3系统E-R图
此环节把概念转变成数据。由于整个数据库所处理的信息过多,就只展示以下几个表。
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | accept_itinerary_id | int | 10 | 0 | N | Y | 接单记录ID | |
| 2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
| 3 | driver_users | int | 10 | 0 | Y | N | 0 | 司机用户 |
| 4 | drivers_name | varchar | 64 | 0 | Y | N | 司机姓名 | |
| 5 | contact_number | varchar | 64 | 0 | Y | N | 联系号码 | |
| 6 | license_plate_number | varchar | 64 | 0 | Y | N | 车牌号码 | |
| 7 | vehicle_information | varchar | 64 | 0 | Y | N | 车辆信息 | |
| 8 | vehicle_condition | varchar | 64 | 0 | Y | N | 车辆情况 | |
| 9 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 10 | mobile_phone_number | varchar | 64 | 0 | Y | N | 手机号码 | |
| 11 | departure_location | varchar | 64 | 0 | Y | N | 出发地点 | |
| 12 | departure_time | datetime | 19 | 0 | Y | N | 出发时间 | |
| 13 | destination_location | varchar | 64 | 0 | Y | N | 目的地点 | |
| 14 | number_of_carpoolers | int | 10 | 0 | Y | N | 0 | 拼车人数 |
| 15 | order_acceptance_time | datetime | 19 | 0 | Y | N | 接单时间 | |
| 16 | order_acceptance_remarks | varchar | 64 | 0 | Y | N | 接单备注 | |
| 17 | location_address | varchar | 64 | 0 | Y | N | 当前位置 | |
| 18 | location_lng | varchar | 64 | 0 | Y | N | 当前位置经度 | |
| 19 | location_lat | varchar | 64 | 0 | Y | N | 当前位置纬度 | |
| 20 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 21 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表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 | 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 | carpool_record_id | int | 10 | 0 | N | Y | 拼车记录ID | |
| 2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
| 3 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 4 | mobile_phone_number | varchar | 64 | 0 | Y | N | 手机号码 | |
| 5 | departure_location | varchar | 64 | 0 | Y | N | 出发地点 | |
| 6 | departure_time | datetime | 19 | 0 | Y | N | 出发时间 | |
| 7 | destination_location | varchar | 64 | 0 | Y | N | 目的地点 | |
| 8 | number_of_carpoolers | int | 10 | 0 | Y | N | 0 | 拼车人数 |
| 9 | carpool_time | datetime | 19 | 0 | Y | N | 拼车时间 | |
| 10 | carpool_remarks | varchar | 64 | 0 | Y | N | 拼车备注 | |
| 11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 12 | 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 | driver_users_id | int | 10 | 0 | N | Y | 司机用户ID | |
| 2 | drivers_name | varchar | 64 | 0 | Y | N | 司机姓名 | |
| 3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
| 4 | contact_number | varchar | 16 | 0 | Y | N | 联系号码 | |
| 5 | identification_number | varchar | 255 | 0 | Y | N | 证件号码 | |
| 6 | license_plate_number | varchar | 64 | 0 | Y | N | 车牌号码 | |
| 7 | vehicle_information | varchar | 64 | 0 | Y | N | 车辆信息 | |
| 8 | vehicle_condition | varchar | 64 | 0 | Y | N | 车辆情况 | |
| 9 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
| 10 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
| 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 | 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 | 更新时间: |
表notification_information (通知信息)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | notification_information_id | int | 10 | 0 | N | Y | 通知信息ID | |
| 2 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
| 4 | mobile_phone_number | varchar | 64 | 0 | Y | N | 手机号码 | |
| 5 | matching_status | varchar | 64 | 0 | Y | N | 匹配状态 | |
| 6 | information_content | text | 65535 | 0 | Y | N | 信息内容 | |
| 7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | one_click_alarm_id | int | 10 | 0 | N | Y | 一键报警ID | |
| 2 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 3 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
| 4 | mobile_phone_number | varchar | 64 | 0 | Y | N | 手机号码 | |
| 5 | location_address | varchar | 64 | 0 | Y | N | 当前位置 | |
| 6 | location_lng | varchar | 64 | 0 | Y | N | 当前位置经度 | |
| 7 | location_lat | 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 | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | payment_records_id | int | 10 | 0 | N | Y | 支付记录ID | |
| 2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
| 3 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 4 | mobile_phone_number | varchar | 64 | 0 | Y | N | 手机号码 | |
| 5 | driver_users | int | 10 | 0 | Y | N | 0 | 司机用户 |
| 6 | drivers_name | varchar | 64 | 0 | Y | N | 司机姓名 | |
| 7 | contact_number | varchar | 64 | 0 | Y | N | 联系号码 | |
| 8 | vehicle_information | varchar | 64 | 0 | Y | N | 车辆信息 | |
| 9 | vehicle_condition | varchar | 64 | 0 | Y | N | 车辆情况 | |
| 10 | license_plate_number | varchar | 64 | 0 | Y | N | 车牌号码 | |
| 11 | departure_location | varchar | 64 | 0 | Y | N | 出发地点 | |
| 12 | departure_time | datetime | 19 | 0 | Y | N | 出发时间 | |
| 13 | destination_location | varchar | 64 | 0 | Y | N | 目的地点 | |
| 14 | number_of_carpoolers | int | 10 | 0 | Y | N | 0 | 拼车人数 |
| 15 | order_acceptance_time | datetime | 19 | 0 | Y | N | 接单时间 | |
| 16 | payment_time | datetime | 19 | 0 | Y | N | 付款时间 | |
| 17 | user_reviews | text | 65535 | 0 | Y | N | 用户评价 | |
| 18 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
| 19 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
| 20 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 21 | 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 | 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 | mobile_phone_number | varchar | 16 | 0 | Y | N | 手机号码 | |
| 5 | emergency_contact | varchar | 16 | 0 | Y | N | 紧急联系人 | |
| 6 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
| 7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
| 8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 9 | 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 | travel_information_id | int | 10 | 0 | N | Y | 发布行程ID | |
| 2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
| 3 | regular_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
| 4 | mobile_phone_number | varchar | 64 | 0 | Y | N | 手机号码 | |
| 5 | departure_location | varchar | 64 | 0 | Y | N | 出发地点 | |
| 6 | departure_time | datetime | 19 | 0 | Y | N | 出发时间 | |
| 7 | destination_location | varchar | 64 | 0 | Y | N | 目的地点 | |
| 8 | number_of_carpoolers | int | 10 | 0 | Y | N | 0 | 拼车人数 |
| 9 | booking_remarks | text | 65535 | 0 | Y | N | 订车备注 | |
| 10 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
| 11 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
| 12 | location_address | varchar | 64 | 0 | Y | N | 当前位置 | |
| 13 | location_lng | varchar | 64 | 0 | Y | N | 当前位置经度 | |
| 14 | location_lat | varchar | 64 | 0 | Y | N | 当前位置纬度 | |
| 15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 16 | 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 | 更新时间: |
- 系统实现
- 普通用户模块的实现
4.1.1 前台首页界面
进入系统首页,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,下面是拼车资讯,其主界面展示如下图所示。

图4-1 前台首页界面图
4.1.2 用户注册界面
用户注册:当用户想要进入系统中对信息进行查看的时候,就必须要登录到系统当中,要是新的用户没有系统的账号的话,点击“注册”按钮,就会进入到新用户注册这个界面上,用户输入对应的账号(必须填写)+密码(必须填写)+确认密码(必须填写,而且要与密码一直)+昵称+邮箱+性别+年龄+联系电话+选择用户身份等等,然后点击“注册”,系统在用户这一数据库中会查询账号是不是存在,两次密码是不是一样,都填写正确就会注册成功,然后再进行登录,如果是之前已经注册过的用户很长时间没有使用,忘记密码,也可以点击“忘记密码”进行找回。用户注册界面如下图所示。

图4-2 用户注册界面图
注册代码如下:
public String encryption(String plainText) {
String re_md5 = new String();
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(plainText.getBytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
re_md5 = buf.toString();
} catch (Exception e) {
e.printStackTrace();
}
return re_md5;
}
4.1.3 用户登录界面
系统中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到系统的首页中;否则将会提示相应错误信息。用户登录界面如下图所示。

图4-3用户登录界面图
登录代码如下:
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.selectBaseList(service.select(map, new HashMap<>()));
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.selectBaseList(userGroupService.select(groupMap, new HashMap<>()));
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String res = service.selectExamineState(userGroup.getSourceTable(),byUsername.getUserId());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
Duration duration = Duration.ofSeconds(7200L);
redisTemplate.opsForValue().set(accessToken.getToken(), accessToken,duration);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
4.1.4 拼车资讯界面
当用户点击“拼车资讯”这一菜单按钮,会显示管理员在后台发布的所有的拼车资讯信息,支持通过关键词对资讯进行搜索,选择需要的资讯信息点击可以进入到资讯信息详细的介绍界面,同时可以进行点赞、收藏和评论等操作,拼车资讯界面如下图所示。

图4-4拼车资讯界面图
用户可以查看系统发布的所有行程信息,包括订单编号、目的地点、拼车人数等。在详情页可以接受拼车、点赞、收藏,发布行程界面如下图所示。

图4-5发布行程界面图
-
- 管理员功能模块的实现
4.2.1 管理员登录界面
管理员进入到系统登录界面,需要填写正确的登录名、密码等信息输入准确无误后登录进入到系统操作界面。管理员的账号是在数据表表中直接设置生成的,不需要进行注册;修改密码:管理员可以随时修改自己进入系统的登录密码,以保证系统的安全性。管理员登录界面如下图所示。

图4-6管理员登录界面图
4.2.2 管理员功能界面
管理员可以查看后台首页、系统用户、发布行程管理、接单记录管理、支付记录管理、拼车记录管理、通知信息管理、一键报警管理、系统管理、网站公告管理、资源管理等,并且可以根据需要进行相应的操作。管理员功能界面如下图所示。

图4-7管理员功能界面图
4.2.3 系统用户管理界面
管理员可以对系统中所有的用户角色进行管控,包含了管理员、普通用户、司机用户这三种角色,如果需要添加新的用户,点击页面中的“添加”按钮根据提示输入上用户信息,点击“提交”以后在对应的用户界面就可以查看到了,可以点击用户后面的“删除”按钮直接删除某一用户。系统用户管理界面如下图所示。

图4-8系统用户管理界面图
4.2.4接单记录管理界面
允许管理员管理拼车系统的接单记录,包括查看接单情况、处理异常订单、确认订单状态等操作,确保拼车服务的顺利进行。接单记录管理界面如下图所示。

图4-9接单记录管理界面图
4.2.5 系统管理界面
管理员可以对系统前台展示的轮播图进行增删改查,方便用户进行查看。系统管理界面如下图所示。

图4-10系统管理界面图
轮播图添加代码:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
管理员可以对系统前台展示的通知公告进行增删改查,方便用户进行查看。网站公告管理界面如下图所示。

图4-11网站公告管理界面图
司机可以查看接单记录,包括拼车订单的详情、乘客信息等,方便司机查看和管理自己的接单情况。接单记录界面如下图所示。

图4-12接单记录界面
4.3.2拼车记录界面
显示司机的拼车记录,包括历史接单记录、拼车时间、拼车人数、行程轨迹等信息,方便司机回顾和管理自己的拼车记录。拼车记录界面如下图所示。

图4-13拼车记录界面图
系统开发到了最后一个阶段那就是系统测试,系统测试对软件的开发其实是非常有必要的。因为没什么系统一经开发出来就可能会尽善尽美,再厉害的系统开发工程师也会在系统开发的时候出现纰漏,系统测试能够较好的改正一些bug,为后期系统的维护性提供很好的支持。通过系统测试,开发人员也可以建立自己对系统的信心,为后期的系统版本的跟新提供支持。
5.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)点击进行提交。 |
| 预期结果 | 使用新的密码可以登录 |
| 实际结果 | 实际结果与预期结果一致 |
5.3 系统测试结果
通过编写武汉纺织大学团惠拼车系统的测试用例,已经检测完毕用户登录模块、拼车资讯查看模块、发布行程添加模块、发布行程搜索模块、密码修改功能测试,通过这5大模块为武汉纺织大学团惠拼车系统的后期推广运营提供了强力的技术支撑。
武汉纺织大学团惠拼车系统的整体功能模块的实现,主要是对自己在大学这几年时间所学内容的一个测试,对于系统,主要是通过现在智能化的武汉纺织大学团惠拼车系统进行开始系统的实现,并且可以根据需求进行数据信息的增加修改删除等操作,完美的解决了当下武汉纺织大学团惠拼车系统所遇到的问题。
经过一个学期的毕业设计的实现完成已接近尾声,到目前为止,当我回想起整个学期的系统开发日,收获颇丰。毕业设计的主要任务是建立一个智能化的武汉纺织大学团惠拼车系统的信息系统,主要使用springboot+vue框架和Mysql数据库的开发工具,对系统的每个功能模块进行相对应的操作,最后,系统调试结果表明系统基本可以满足功能要求。
武汉纺织大学团惠拼车系统的开发对我大学学习的改进有很大帮助。它使我能够学习计算机知识的相关技术方面问题及与人交往的沟通交流方面,让我意识到无论我们做什么,我们都需要坚持不懈,努力工作,只有这样尝试了并且坚持去做了,我们才可以成功,才可以获得成功的喜悦,如果没有尝试,只是想,那连成功的机会都没有,实际操作进行做了,才会越来越近的靠近成功,随着道路一路向前,未来的路是美好的。
武汉纺织大学团惠拼车系统的实现,是自己第一次完成的设计一个拼车系统。在项目的设计过程中,我克服了各种困难,并且在面对这些困难,我积极的面对,想办法解决问题,并且更好的掌握了理论知识和动手操作实践能力,从系统的开发到设计完成,我完成了一个更全面、更完善、更安全的管理系统,这也让我取得了很大的成就感,也使我对未来的生活更有信心。
参考文献
[1]李明,冯树栋,白宗文,等.基于SpringBoot的成果需求匹配系统设计与实现[J].延安大学学报(自然科学版),2024,43(01):90-95.DOI:10.13876/J.cnki.ydnse.230026.
[2]王晓东,刘海燕,王迎,等.基于SpringBoot的气象信息资源管理系统设计与实现[J].电脑编程技巧与维护,2024,(03):79-82.DOI:10.16184/j.cnki.comprg.2024.03.028.
[3]刘慧玲,谭定英,陈平平.基于SpringBoot和Vue.js的大学生团队管理系统的设计[J].电脑编程技巧与维护,2024,(03):120-122.DOI:10.16184/j.cnki.comprg.2024.03.039.
[4]孙铁强,刘俊,于洪健,等.基于SpringBoot框架的在线监测和专家系统的研究[J].自动化应用,2024,65(04):15-16+19.DOI:10.19769/j.zdhy.2024.04.006.
[5]雷欣,马宏琳,郑霖,等.基于SpringBoot的域名信息系统设计与实现[J].电脑知识与技术,2024,20(05):44-47.DOI:10.14004/j.cnki.ckt.2024.0188.
[6]Purwantiningsih B ,Leksono S A ,Yanuwiyadi B , et al.Inventory of plants as food source for Apis sp. and Trigona sp. in Tlekung Batu East Java Indonesia[J].IOP Conference Series: Earth and Environmental Science,2024,1302(1):
[7]Asmy E A ,Rauf A ,Rahmawaty, et al.Persimmon fruit downstream prospects: a promising solution to increase farmer income in Malang Regency, East Java, Indonesia[J].IOP Conference Series: Earth and Environmental Science,2024,1302(1):
[8]Widodo A ,Aditama Y F ,Rochman N G P J , et al.Preliminary study of tsunami simulations on megathrust earthquake scenarios in Pacitan Regency, East Java[J].IOP Conference Series: Earth and Environmental Science,2024,1307(1):
[9]Hasyim A M ,Qurrotaayunina P R ,Nayomi M , et al.The diversity of aerial insect in coffee agroforestry, Dampit and Purwodadi district East Java Indonesia[J].IOP Conference Series: Earth and Environmental Science,2024,1312(1):
[10]Agustin M ,Zubaidah S ,Susanto H , et al.Study of drosophila kinship from three regions in East Java, Indonesia[J].IOP Conference Series: Earth and Environmental Science,2024,1312(1):
[11]白茹鑫.基于SpringBoot+SSM框架的企业安全培训管理系统设计与实现[J].现代信息科技,2024,8(01):44-49.DOI:10.19850/j.cnki.2096-4706.2024.01.009.
[12]石雨昕,关家兴,邹博华,等.基于SpringBoot微服务架构设计与实现实验室开放课题管理系统[J].实验室检测,2024,2(01):101-106.
[13]张雷雨,单田清,梁霄.基于SpringBoot的水利地理信息系统设计与实现[J].连云港职业技术学院学报,2023,36(04):1-7.DOI:10.19858/j.cnki.1009-4318.2023.04.003.
[14]吴伶琳.基于SpringBoot的客户关系管理系统设计与实现[J].无线互联科技,2023,20(24):60-62.
[15]袁泽森,周融.基于微信小程序的校园拼车系统的设计与实现[J].信息与电脑(理论版),2023,35(13):176-181.
[16]韦玮,卜庆茹,罗颖,等.共享经济背景下大学生“校园拼车”小程序的需求分析及设计推广[J].商展经济,2023,(03):78-80.DOI:10.19995/j.cnki.CN10-1617/F7.2023.03.078.
[17]滕毅,马焯文.基于Uniapp的校园拼车多端小程序设计与实现[J].电子制作,2022,30(16):43-46.DOI:10.16589/j.cnki.cn11-3571/tn.2022.16.025.
[18]童迎鹏,张雪松.基于Android的拼车应用设计与实现[J].计算机应用,2021,41(S1):308-315.
[19]徐佳丽.面向大学城的“WE”拼车平台的开发设计[J].电脑知识与技术,2019,15(18):72-74+83.DOI:10.14004/j.cnki.ckt.2019.1956.
[20]王吉悦.基于机场情景下的拼车匹配方案研究[D].西南交通大学,2019.DOI:10.27414/d.cnki.gxnju.2019.000580.
致谢
经过几个月时间的努力终于完成了这篇文章,在文章的写作与研究的过程中遇到了很多困难,都在同学和老师的帮助下解决了。尤其非常感谢我最敬爱的老师,他对我进行了无私的指导和帮助,不厌其烦的帮助进行文章的修改。老师严谨的治学态度、渊博的学术知识、诲人不倦的敬业精神以及宽容的待人风范使我获益颇丰。此外,在校图书馆查找资料的时候,图书馆的老师也给我提供了很多方面的支持与帮助。在此,向帮助和指导过我的老师表示最衷心的感谢!感谢这篇文章所涉及到的各位学者。本文引用了数位学者的文献,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇文章的写作。感谢我的同学和朋友,在我写文章的过程中给与了我很多素材和帮助,还在文章的撰写和排版过程中提供热情的帮助。同时,感谢我的室友对我的热心指导和帮助,经常有不懂之处都是大家在帮助我,才使得我比较顺利的完成了这篇文章。由于我水平有限,所写文章难免有不足之处,恳请各位老师和学友批评和指正!
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~
759

被折叠的 条评论
为什么被折叠?



