springboot校园跑腿服务系统-计算机毕业设计源码15157

摘要

本文介绍了一种基于Springboot和uniapp的校园跑腿服务系统的设计与实现。该系统旨在为大学校园提供一种方便快捷的跑腿服务,满足学生和教职员工的日常需求。首先,系统采用了Springboot作为后端框架,利用其轻量级、高效的特性,实现了系统的后端服务。其次,系统采用了uniapp作为前端框架,通过uniapp的跨平台特性,实现了同时支持iOS和Android平台的移动端应用。在系统功能设计方面,包括用户注册登录、发布任务、接受任务、支付结算等核心功能,同时还考虑了评价系统、订单管理等辅助功能,以提升用户体验。在实现过程中,采用了MVC架构,合理划分了各个模块,提高了代码的可维护性和扩展性。最后,通过对系统进行测试和优化,确保了系统的稳定性和性能。该系统的设计与实现为校园跑腿服务提供了一种新的解决方案,具有一定的实用和推广价值。

关键词:校园跑腿服务系统;微信小程序;UniApp;SpringBoot


Abstract

This paper introduces the design and implementation of a campus errand service system based on Springboot and uniapp. The system is designed to provide a convenient and quick errand for the university campus to meet the daily needs of students and staff. First, the system adopts Springboot as the back-end framework, and realizes the back-end service of the system. Secondly, the system adopts uniapp as the front-end framework, and through the cross-platform features of uniapp, the mobile terminal applications supporting both iOS and Android platforms are realized. In terms of system function design, it includes core functions such as user registration and login, publishing tasks, acceptance tasks, payment and settlement. Meanwhile, auxiliary functions such as evaluation system and order management are also considered to improve user experience. In the implementation process, the MVC architecture is adopted, each module is reasonably divided, and the maintainability and scalability of the code are improved. Finally, the stability and performance of the system are ensured through its testing and optimization. The design and implementation of this system provides a new solution for the campus errands service, which has certain practical and promotion value.

Keywords:Campus errand service system; WeChat small program; UniApp; SpringBoot

目 录

1 绪论

1.1 研究背景与意义

1.2 研究现状

1.3 论文章节安排

1.4 关键技术

1.4.1  Java语言

1.4.2  Uni-app开发工具

1.4.3  SpringBoot框架

1.4.4  MySQL数据库

2 系统分析

2.1 可行性分析

2.1.1 经济可行性分析

2.1.2 技术可行性分析

2.1.3 操作可行性分析

2.2 需求分析

2.2.1 功能需求分析

2.2.2 性能需求分析

2.2.3 业务流程分析

3 系统设计

3.1 架构设计

3.2 功能模块设计

3.3 数据库设计

3.3.1 概念模型设计

3.3.2 数据库表的设计

4 系统实现

4.1 开发环境

4.2 功能模块实现

4.2.1 用户端首页模块

4.2.2 用户端注册模块

4.2.3 用户端登录模块

4.2.4 用户端新闻资讯模块

4.2.5 用户端积分兑换模块

4.2.6 管理员端系统用户模块

4.2.7 管理员服务类型管理模块

4.2.8 管理员端评价反馈管理模块

4.2.9 管理员端系统管理模块

4.2.10 管理员端资源管理模块

5.1测试计划

5.1.1 测试范围与主要内容

5.1.2 测试方法

5.2 功能测试

5.3 测试结论

6 总结与展望

参考文献

致谢

1 绪论

1.1 研究背景与意义

在当今社会,随着大学生活的日益繁忙和多样化需求的增加,校园跑腿服务成为了大学校园里一项备受欢迎的服务。这种服务能够为学生和教职员工提供便利,解决他们日常生活中的各种琐事,如购物、取快递、送餐等。然而,传统的校园跑腿服务往往存在着效率低下、信息不透明、沟通不畅等问题,需要一种新的解决方案来提升服务质量和用户体验。

基于此背景,本文提出了一种基于Springboot和uniapp的校园跑腿服务系统的设计与实现。该系统融合了先进的技术和创新的思路,旨在为大学校园提供一种方便快捷的跑腿服务,满足用户日常生活的各种需求。其设计与实现具有以下几点重要意义:

提升服务效率:传统的校园跑腿服务往往需要通过电话、微信等方式进行下单和沟通,效率较低。而基于Springboot和uniapp的系统能够通过手机端应用实现在线下单、实时沟通等功能,大大提升了服务的效率,减少了沟通成本和等待时间。

优化用户体验:该系统通过uniapp框架实现了同时支持iOS和Android平台的移动端应用,用户可以随时随地通过手机轻松下单和查看订单状态,极大地方便了用户的使用体验。同时,系统还考虑了评价系统、订单管理等功能,进一步提升了用户的满意度和粘性。

提高服务质量:系统采用了Springboot作为后端框架,利用其轻量级、高效的特性,实现了系统的后端服务。通过合理划分模块、采用MVC架构等手段,提高了代码的可维护性和扩展性,从而更好地保障了服务的稳定性和可靠性。

推动技术创新:基于Springboot和uniapp的校园跑腿服务系统,不仅是对传统服务模式的一种创新,也是对技术应用的一种推动。它充分利用了Springboot框架的优势和uniapp的跨平台特性,为校园跑腿服务领域的发展提供了新的思路和可能性。

综上所述,基于Springboot和uniapp的校园跑腿服务系统的设计与实现具有重要的研究意义和实际应用价值,有望为校园生活带来更加便利和舒适的体验,推动校园跑腿服务行业的发展和完善。

1.2 研究现状

校园跑腿服务系统的设计与实现一直是大学校园中备受关注的话题。在当今社会,随着大学生活的日益繁忙和多样化需求的增加,校园跑腿服务成为了大学校园里一项备受欢迎的服务。这种服务能够为学生和教职员工提供便利,解决他们日常生活中的各种琐事,如购物、取快递、送餐等。然而,传统的校园跑腿服务往往存在着效率低下、信息不透明、沟通不畅等问题,需要一种新的解决方案来提升服务质量和用户体验。

基于这些需求背景,近年来基于Springboot和uniapp的校园跑腿服务系统的设计与实现备受关注。Springboot作为一种轻量级的Java后端开发框架,以其简洁的编程模型、快速的开发能力和丰富的生态系统受到广泛欢迎。而uniapp作为一个跨平台的开发框架,能够同时支持iOS和Android平台,极大地简化了移动应用的开发和维护工作。

在这一研究领域中,以提升服务效率、优化用户体验、提高服务质量和推动技术创新为目标,研究者们提出了一系列创新性的设计与实现方案。其中,对于服务效率的提升,研究者们着重利用Springboot框架的优势,通过设计高效的后端服务接口,实现了用户在手机端应用上的在线下单、实时沟通等功能,大大提升了服务的效率,减少了沟通成本和等待时间。

同时,针对用户体验的优化,研究者们采用uniapp框架实现了移动端应用,并设计了友好的界面和交互,使用户可以随时随地通过手机轻松下单和查看订单状态,极大地方便了用户的使用体验。此外,系统还考虑了评价系统、订单管理等功能,进一步提升了用户的满意度和粘性。

在提高服务质量方面,研究者们通过合理划分模块、采用MVC架构等手段,提高了代码的可维护性和扩展性,从而更好地保障了服务的稳定性和可靠性。通过对技术的不断探索和应用,他们不仅实现了对传统服务模式的一种创新,也为技术应用的推动做出了贡献。

综上所述,基于Springboot和uniapp的校园跑腿服务系统的设计与实现在提升服务效率、优化用户体验、提高服务质量和推动技术创新等方面都取得了重要进展。这一研究领域的发展有望为校园生活带来更加便利和舒适的体验,推动校园跑腿服务行业的发展和完善。

1.3 论文章节安排

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

第一章:绪论。此章节对所设计和实现的系统的目的以及意义和国内外研究现在进行详细的论述以及说明,同时进行了关键技术和论文整体框架的结构的简要介绍。

第二章:系统需求分析。章节所做的主要的工作是对系统进行了技术、经济和操作方面可行性的分析;对系统实行了总体功能的需求、用例分析。

第三章:系统的设计。主要是对系统的功能结构进行设计,并对系统数据库的概念结构以及物理结构的设计进行了分析。

第四章:系统的实现。根据系统功能的划分,分别的对系统所需要实现的前台客户功能和后台管理员功能进行了分析和说明。

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

第六章:总结。

1.4 关键技术

系统采用前后端分离架构,使用UniApp跨平台开发工具术进行界面开发,并采用微信小程序作为开发平台,提供良好的用户体验。后端采用Java语言,使用SpringBoot框架作为基础架构进行系统开发。数据库方面使用MySQL数据库进行数据存储,设计合理的表结构和关联关系,确保数据的准确性和完整性。

1.4.1  Java语言

Java是一种由Sun Microsystems(现在是Oracle Corporation)开发的高级编程语言,最初发布于1995年。Java被设计成一种“写一次,到处运行”的跨平台语言,这意味着开发人员可以编写一次Java代码,然后在各种不同的操作系统和硬件平台上运行,而无需对代码进行修改。

Java被广泛应用于各种领域,包括企业级应用程序开发、Web开发、移动应用开发、游戏开发、大数据处理等。它具有简单易学的语法,强大的面向对象编程能力,以及丰富的类库和工具支持,使得开发人员可以快速高效地构建复杂的应用程序。

Java语言的另一个重要特点是其平台无关性。Java代码通过Java虚拟机(JVM)在不同平台上运行,这使得Java成为一种非常灵活和便捷的编程语言。此外,Java还提供了丰富的开发工具和框架,如Eclipse、IntelliJ IDEA、Spring等,帮助开发人员更好地组织和管理代码,提高开发效率。

总的来说,Java是一种功能强大、易于学习和使用的编程语言,适用于各种类型的应用程序开发,并且具有广泛的应用领域。

1.4.2  Uni-app开发工具

Uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。

DCloud公司拥有900万开发者、数百万应用、12亿手机端月活用户、数千款uni-app插件、70+微信/qq群。阿里小程序工具官方内置uni-app,腾讯课堂官方为uni-app录制培训课程,开发者可以放心选择。

1.4.3  SpringBoot框架

Spring Boot是一个基于Spring框架的快速开发工具,它简化了Spring应用程序的搭建过程,提供了快速启动、自动配置和约定优于配置的特性。首先,通过Spring Boot,开发人员能够更快速地搭建系统的基本结构,而无需过多繁琐的配置。它提供了自动配置的能力,减少了开发者的工作量,并且内置了大量常用的库和组件,例如Spring MVC用于Web开发、Spring Data用于数据库访问等,从而提高了开发效率。另外,Spring Boot提供了内嵌的Servlet容器,无需额外配置即可进行快速部署和运行,有助于简化部署流程。此外,Spring Boot还支持各种构建工具,并提供丰富的监控和管理功能,有助于系统的维护和管理。综合来看,Spring Boot框架的应用能够帮助开发者快速搭建“我爱我家”家政服务小程序的设计与实现,提高开发效率、简化部署流程,并且提供一系列强大的功能以支持系统的稳定运行。

1.4.4  MySQL数据库

MySQL是一种流行的关系型数据库管理系统,广泛应用于各种Web应用程序和服务中。它是一种开源软件,由Oracle公司开发和维护。MySQL以其稳定性、可靠性和高性能而闻名,被许多开发人员和组织选择作为其首选的数据库解决方案。

MySQL支持多种操作系统,包括Linux、Windows和macOS,使其成为一个跨平台的数据库系统。它提供了强大的SQL语言支持,允许用户进行数据的增删改查操作,并支持复杂的查询和数据操作。此外,MySQL还提供了各种存储引擎,如InnoDB、MyISAM等,使用户可以根据应用程序的需求选择合适的存储引擎来优化性能和功能。

作为一种开源软件,MySQL拥有庞大的社区支持和活跃的开发者社区,用户可以从社区中获取各种技术支持、文档和工具,帮助他们更好地使用和管理MySQL数据库。

总的来说,MySQL是一种功能强大、性能优越、稳定可靠的关系型数据库管理系统,适用于各种规模的应用程序和服务,为用户提供了强大的数据存储和管理能力。
2 系统分析

2.1 可行性分析

2.1.1 经济可行性分析

Spring Boot作为一个基于Java的开源框架,具备丰富的功能和组件,非常适合用于开发校园跑腿服务系统。使用UniApp进行开发可以充分发挥其面向对象、跨平台和可扩展的特性。同时,Spring Boot与MySQL等关系型数据库紧密集成,提供了便捷的数据存储和管理方式。通过对SpringBoot技术在小程序开发中的应用进行分析,探讨其在开发校园跑腿服务系统中的优势和适用性,包括开发效率、用户体验、性能等方面。

2.1.2 技术可行性分析

从经济角度来看, 校园跑腿服务系统具备良好的经济可行性。小程序开发相对较低成本,不需要单独开发独立的移动应用程序,减少了开发和维护的成本。同时,Spring Boot框架提供了免费且开源的开发工具和库,降低了开发成本。此外,MySQL作为开源数据库管理系统,没有额外的购买和使用费用,可以降低系统的运行成本。

2.1.3 操作可行性分析

在操作可行性方面,校园跑腿服务系统具备良好的操作可行性。小程序作为一种轻量级应用形式,用户无需进行额外的安装和更新,可以直接在微信平台上访问和使用。基于小程序的界面设计通常简洁明了,易于操作和导航,提供良好的用户体验。

2.2 需求分析

2.2.1 功能需求分析

根据校园跑腿服务系统的角色,可以划分为学生用户模块、跑腿用户模块和管理员模块。具体功能如下:

前台学生用户功能

(1)用户注册登录:游客可以随时进入到系统中,对系统中的信息浏览,但是想要实现发布订单等操作,就必须有这个系统的账号,如果没有账号的话,可以注册用户进行相关的操作。

(2)首页:学生用户可以查看校园跑腿服务系统的首页信息包括主导航、新闻资讯、我的等。

(3)新闻资讯:学生用户点击首页的“新闻资讯”按钮,可以查看到新闻资讯信息列表,点击可查看新闻资讯详情信息,学生用户可以进行点赞、收藏和发表评论信息。

4)我的:学生用户在“我的”模块主要对基本信息、收藏、任务信息、任务订单、沟通记录、评价反馈、学生兑换、学生信用等模块的信息进行管理。

学生用户用例图如下所示。

图2.1 学生用户用例图

前台跑腿用户功能

(1)用户注册登录:游客可以随时进入到系统中,对系统中的信息浏览,但是想要实现接收订单等操作,就必须有这个系统的账号,如果没有账号的话,可以注册用户进行相关的操作。

(2)首页:跑腿用户可以查看校园跑腿服务系统的首页信息包括主导航、新闻资讯、我的等。

(3)新闻资讯:跑腿用户点击首页的“新闻资讯”按钮,可以查看到新闻资讯信息列表,点击可查看新闻资讯详情信息,跑腿用户可以进行点赞、收藏和发表评论信息。

4)我的:跑腿用户在“我的”模块主要对基本信息、收藏、任务订单、沟通记录、评价反馈、跑腿兑换、跑腿信用等模块的信息进行管理。

跑腿用户用例图如下所示。

图2.2跑腿用户用例图

3、后台管理员功能

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

(2)系统用户:管理员可以对校园跑腿服务系统中的管理员学生用户和宠物主人进行增删改查。

(3)任务信息管理:管理员点击“任务信息管理”可以对系统的任务信息进行管理。

(4)服务类型管理:管理员点击“服务类型管理”可以对系统的服务类型进行管理。

5任务订单管理管理员点击“任务订单管理”可以对系统的任务订单进行管理。

6沟通记录管理:管理员点击“沟通记录管理”可以对系统的沟通记录进行管理。

7评价反馈管理:管理员点击“评价反馈管理”可以对系统的评价反馈进行管理。

8积分兑换管理:管理员点击“积分兑换管理”可以对系统的积分兑换进行管理。

(9)学生兑换管理:管理员点击“学生兑换管理”可以对系统的学生兑换进行管理。

(10)跑腿兑换管理:管理员点击“跑腿兑换管理”可以对系统的跑腿兑换进行管理。

11)系统管理:管理员点击“系统管理”菜单可以对首页展示的轮播图进行管理。

12通知公告管理:管理员点击“通知公告管理”菜单可以查看到系统中的所有通知公告信息,对已经存在的通知公告,管理员可以修改,也可以添加新的通知公告或者删除通知公告

(13)资源管理:管理员点击“资源管理”菜单可以查看到系统中的所有新闻资讯和资讯分类信息,对已经存在的新闻资讯和资讯分类,管理员可以修改,也可以添加新的新闻资讯和资讯分类或者删除新闻资讯和资讯分类

管理员用例图如下所示。

图2.3 管理员用例图

2.2.2 性能需求分析

本系统主要是为了方便用户发布订单信息、通过提供跑腿服务,使用户能够在领取物品的时候方便快速地进行收取,包括以下特点:

(1)界面简洁、操作简单方便。设计网站前端界面时应当站在用户的角度,尽量符合大众审美,迎合用户的使用习惯。整体简洁大方,主要功能位于主页显眼位置,方便用户查找使用,登录界面作为第一页面,用户可快速登录得到自身的功能主页,进行操作。各个页面统一风格,颜色搭配合理,便于用户浏览,个板块间布局合适,提高用户体验。

(2)运行流畅,响应速度快。虽然每日的信息发布交流有限,对系统的并发能力无太大要求,但为了保证用户体验,减少等待时间,仍应该尽可能提高网站的运行速度,可提高更合理的算法设计,更多的模型效率达到,而在业务流程中,减少无关业务量,也是提高运行速度的关键,访问数据库时,选择合适的数据库锁,设计切合实际的数据库表,都能一定程度上提高网站运行效率。

2.2.3 业务流程分析

业务流程图不仅能反映出内部业务之间的关系,而且能体现出管理顺序及信息的流动。校园跑腿服务系统必须支持整个组织在不同层次上的各种功能,各个功能模块之间又有各种不同相关的信息进行联系,构成了一个有机的整体,根据校园跑腿服务系统的特点以及结合所面临的实际情况,设计出了系统的业务流程图。

系统的业务流程如下图所示。

图2.4 业务流程图


3 系统设计

3.1 架构设计 

MVC 是指 Model、View 和 Controller,翻译成中文分别是模型层、视图层和控制层。MVC 模式是一种设计模式,它强制性的把应用程序的输入、输出和处理全部分开,将其分为三个核心部分,这三个部分分别有不同的功能。

系统架构图如图3.1所示:

图3.1 系统架构图

视图层视图是指被用户所看到的并且能够与之进行交互的界面。视图可以向用户展示相关的数据,并接收用户输入的数据,但对用户数据不进行任何实际业务操作处理。

模型层通过控制层来处理视图层传递的数据,同一个模型可以给不同的视图提供数据,也可以被不同的视图重复使用。由于 Model 的主要内容是数据、方法和行为,其也是 MVC 中逻辑最为复杂,代码量最多的部分,其中包含了许多应用中需要用到的业务逻辑,因此模型层的开发也变得尤为重要,后期一般不会对模型层进行大规模改动,也是 MVC 中最稳定的部分。

控制层主要负责视图层和模型层之间的数据传输和处理请求操作。当用户通过视图发送数据和请求时,控制层可以接收请求和数据并决定调用哪些模型、通过模型的哪些操作来处理数据和请求,处理完成后,控制层再将数据返回给相应的视图。

3.2 功能模块设计

根据对系统的功能进行分析可以总结校园跑腿服务系统的具体功能模块包括下面的几个主要的功能模块:该系统主要从大模块进行设计的,首先就是两个不同身份的用户参与操作需要的模块,此外还需要有管理员用到的模块,者之间不是互相独立的,他们之间有着密切的联系,同数据库表中的数据连接起来进行操作。每个模块访问相同的数据库,但访问的表不同。系统的各个功能模块是根据所收集的资料研究得到的。在以上分析功能的基础上,系统模块分为多个模块。

本系统的功能模块图如图3.2所示

图3.2 系统功能模块图

3.3 数据库设计 

3.3.1 概念模型设计 

根据前面的数据流程图,结合系统的功能模块设计,设计出符合系统的各信息实体。

系统E-R图如下图所示。

图3.3 系统数据库E-R图

3.3.2 数据库表的设计 

数据库是校园跑腿服务系统的数据处理的基础,也是为界面数据的展示与存储的关键。校园跑腿服务系统的主要数据库表如下。

表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

用户编号:

表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

文章描述

表article_type (文章分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

表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

更新时间:

表collect (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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:

表communication_records (沟通记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

communication_records_id

int

10

0

N

Y

沟通记录ID

2

task_name

varchar

64

0

Y

N

任务名称

3

task_classification

varchar

64

0

Y

N

任务分类

4

service_type

varchar

64

0

Y

N

服务类型

5

pickup_location

varchar

64

0

Y

N

取货地点

6

delivery_location

varchar

64

0

Y

N

送达地点

7

running_time

varchar

64

0

Y

N

跑腿时间

8

student_users

int

10

0

Y

N

0

学生用户

9

running_errand_users

int

10

0

Y

N

0

跑腿用户

10

student_content

text

65535

0

Y

N

学生内容

11

running_errands_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

更新时间

表evaluation_feedback (评价反馈)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

evaluation_feedback_id

int

10

0

N

Y

评价反馈ID

2

task_name

varchar

64

0

Y

N

任务名称

3

task_classification

varchar

64

0

Y

N

任务分类

4

service_type

varchar

64

0

Y

N

服务类型

5

student_users

int

10

0

Y

N

0

学生用户

6

student_phone_number

varchar

64

0

Y

N

学生电话

7

running_errand_users

int

10

0

Y

N

0

跑腿用户

8

running_name

varchar

64

0

Y

N

跑腿姓名

9

running_phone

varchar

64

0

Y

N

跑腿电话

10

evaluation_content

text

65535

0

Y

N

评价内容

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

更新时间

表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:

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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已取消

表redemption_of_points (积分兑换)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

redemption_of_points_id

int

10

0

N

Y

积分兑换ID

2

exchange_items

varchar

64

0

Y

N

兑换物品

3

release_date

date

10

0

Y

N

发布日期

4

redeem_points

int

10

0

Y

N

0

兑换积分

5

item_images

varchar

255

0

Y

N

物品图片

6

item_introduction

longtext

2147483647

0

Y

N

物品介绍

7

praise_len

int

10

0

N

N

0

点赞数

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表running_errands_redemption (跑腿兑换)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_errands_redemption_id

int

10

0

N

Y

跑腿兑换ID

2

exchange_items

varchar

64

0

Y

N

兑换物品

3

redeem_points

int

10

0

Y

N

0

兑换积分

4

running_errand_users

int

10

0

Y

N

0

跑腿用户

5

running_name

varchar

64

0

Y

N

跑腿姓名

6

running_phone

varchar

64

0

Y

N

跑腿电话

7

redemption_remarks

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

更新时间

表running_errand_credit (跑腿信用)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_errand_credit_id

int

10

0

N

Y

跑腿信用ID

2

running_errand_users

int

10

0

Y

N

0

跑腿用户

3

running_name

varchar

64

0

Y

N

跑腿姓名

4

running_gender

varchar

64

0

Y

N

跑腿性别

5

running_phone

varchar

64

0

Y

N

跑腿电话

6

credit_rating

varchar

64

0

Y

N

信用等级

7

credit_details

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

更新时间

表running_errand_users (跑腿用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_errand_users_id

int

10

0

N

Y

跑腿用户ID

2

running_name

varchar

64

0

N

N

跑腿姓名

3

running_gender

varchar

64

0

Y

N

跑腿性别

4

running_phone

varchar

16

0

Y

N

跑腿电话

5

running_points

int

10

0

Y

N

0

跑腿积分

6

points_details

text

65535

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

更新时间

表service_type (服务类型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

service_type_id

int

10

0

N

Y

服务类型ID

2

service_type

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

更新时间

表slides (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

更新时间:

表student_credit (学生信用)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_credit_id

int

10

0

N

Y

学生信用ID

2

student_users

int

10

0

Y

N

0

学生用户

3

student_name

varchar

64

0

Y

N

学生姓名

4

student_gender

varchar

64

0

Y

N

学生性别

5

student_phone_number

varchar

64

0

Y

N

学生电话

6

credit_rating

varchar

64

0

Y

N

信用等级

7

credit_details

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

更新时间

表student_exchange (学生兑换)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_exchange_id

int

10

0

N

Y

学生兑换ID

2

exchange_items

varchar

64

0

Y

N

兑换物品

3

redeem_points

int

10

0

Y

N

0

兑换积分

4

student_users

int

10

0

Y

N

0

学生用户

5

student_name

varchar

64

0

Y

N

学生姓名

6

student_phone_number

varchar

64

0

Y

N

学生电话

7

redemption_remarks

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

更新时间

表student_users (学生用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_users_id

int

10

0

N

Y

学生用户ID

2

student_name

varchar

64

0

N

N

学生姓名

3

student_gender

varchar

64

0

Y

N

学生性别

4

student_phone_number

varchar

16

0

Y

N

学生电话

5

student_points

int

10

0

Y

N

0

学生积分

6

points_details

text

65535

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

更新时间

表task_information (任务信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

task_information_id

int

10

0

N

Y

任务信息ID

2

task_name

varchar

64

0

Y

N

任务名称

3

task_classification

varchar

64

0

Y

N

任务分类

4

service_type

varchar

64

0

Y

N

服务类型

5

access_status

varchar

64

0

Y

N

接取状态

6

pickup_location

varchar

64

0

Y

N

取货地点

7

delivery_location

varchar

64

0

Y

N

送达地点

8

task_date

date

10

0

Y

N

任务日期

9

running_time

varchar

64

0

Y

N

跑腿时间

10

salary_and_compensation

varchar

64

0

Y

N

薪资报酬

11

number_of_tasks

varchar

64

0

Y

N

任务数量

12

student_users

int

10

0

Y

N

0

学生用户

13

student_phone_number

varchar

64

0

Y

N

学生电话

14

cover_photo

varchar

255

0

Y

N

封面图片

15

task_content

text

65535

0

Y

N

任务内容

16

praise_len

int

10

0

N

N

0

点赞数

17

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

18

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表task_order (任务订单)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

task_order_id

int

10

0

N

Y

任务订单ID

2

task_name

varchar

64

0

Y

N

任务名称

3

task_classification

varchar

64

0

Y

N

任务分类

4

service_type

varchar

64

0

Y

N

服务类型

5

pickup_location

varchar

64

0

Y

N

取货地点

6

delivery_location

varchar

64

0

Y

N

送达地点

7

running_time

varchar

64

0

Y

N

跑腿时间

8

salary_and_compensation

varchar

64

0

Y

N

薪资报酬

9

student_users

int

10

0

Y

N

0

学生用户

10

student_phone_number

varchar

64

0

Y

N

学生电话

11

running_errand_users

int

10

0

Y

N

0

跑腿用户

12

running_name

varchar

64

0

Y

N

跑腿姓名

13

running_phone

varchar

64

0

Y

N

跑腿电话

14

task_status

varchar

64

0

Y

N

任务状态

15

progress_description

text

65535

0

Y

N

进度描述

16

pay_state

varchar

16

0

N

N

未支付

支付状态

17

pay_type

varchar

16

0

Y

N

支付类型: 微信、支付宝、网银

18

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

19

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

更新时间:


4 系统实现

4.1 开发环境

本系统采用了前后端分离的架构设计,基于SpringBoot框架和UniApp开发,数据库选用关系型数据库MySQL,系统开发环境如表4.1所示。

表4.1 系统开发环境

硬件环境

软件环境

CPU: 2.0G 以上

操作系统:Windows 7及 以上版本

内存:8GB 以上

开发语言:Java

使用框架:SpringBoot+微信小程序

开发工具:UniApp

数据库:MySQL 5.6以上

硬盘:100MB以上

数据库管理工具:Navicat

JDK版本:Java 1.8

显卡:图像级显卡以上

数据库:MySQL 5.6以上

4.2 功能模块实现

4.2.1 用户端首页模块

首页主要分别展示各个模块的最新动态,浏览者可以很清楚地看到不同模块的最新更新内容。并且系统首页每个部分可以跳转到相对应的模块,方便浏览者选择感兴趣的地方。前端首页界面如下图所示。

图4.1 前台首页模块实现图

4.2.2 用户端注册模块

当用户点击“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等信息后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可注册成功。

用户端注册模块实现图如下所示。

图4.2 用户端注册模块实现图

注册关键代码如下所示。

/**

     * 注册

     * @param user

     * @return

     */

    @PostMapping("register")

    public Map<String, Object> signUp(@RequestBody User user) {

        // 查询用户

        Map<String, String> query = new HashMap<>();

        Map<String,Object> map = JSON.parseObject(JSON.toJSONString(user));

        query.put("username",user.getUsername());

        List list = service.selectBaseList(service.select(query, new HashMap<>()));

        if (list.size()>0){

            return error(30000, "用户已存在");

        }

        map.put("password",service.encryption(String.valueOf(map.get("password"))));

        service.insert(map);

        return success(1);

}  

4.2.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.select(map, new HashMap<>()).getResultList();

        }

        else if(email != null && "".equals(email) == false){

            map.put("email", email);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }

        else if(phone != null && "".equals(phone) == false){

            map.put("phone", phone);

            resultList = service.select(map, new HashMap<>()).getResultList();

        }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.select(groupMap, new HashMap<>()).getResultList();

        if (groupList.size()<1){

            return error(30000,"用户组不存在");

        }

        UserGroup userGroup = (UserGroup) groupList.get(0);

        //查询用户审核状态

        if (!StringUtils.isEmpty(userGroup.getSourceTable())){

            String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();

            String res = String.valueOf(service.runCountSql(sql).getSingleResult());

            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());

            tokenService.save(accessToken);

            // 返回用户信息

            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.2.4 用户端新闻资讯模块

当用户点击基于Springboot+uniapp的校园跑腿服务系统中的“新闻资讯”后将会进入到该“新闻资讯”列表的界面,然后选择想要看的新闻资讯信息,点击进入到详细界面,在详细界面可以收藏+赞+评论等操作。界面如下图所示。

用户端新闻资讯模块界面图如下所示。

图4.4 用户端新闻资讯模块界面图

4.2.5 用户端积分兑换模块

当用户点击基于Springboot+uniapp的校园跑腿服务系统中的“积分兑换”后将会进入到该“积分兑换”列表的界面,然后选择想要的积分兑换信息,点击进入到详细界面,在详细界面可以收藏+赞+评论+兑换等操作。

图4.5 积分兑换界面图

4.2.6 管理员端系统用户模块

在后台系统用户管理中,主要是管理注册的学生用户、跑腿用户和管理员,管理员拥有对所有用户管控的功能。管理端系统用户实现图如下所示。

图4.10 管理端系统用户模块实现图

用户列表管理关键代码如下:

   @RequestMapping("/get_list")

    public Map<String, Object> getList(HttpServletRequest request) {

        Map<String, Object> map = service.selectToPage(service.readQuery(request), service.readConfig(request));

        return success(map);

    }

4.2.7 管理员服务类型管理模块

管理员点击“服务类型管理”可以查看到所有的服务类型信息,可以对其进行增删改查操作。管理端服务类型管理实现图如下所示。

图4.11 管理端服务类型管理实现图

添加服务类型的逻辑代码如下所示。

@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.2.8 管理员端评价反馈管理模块

管理员点击“评价反馈管理”会显示出所有用户提交的评价反馈信息,可以选择某一条评价反馈信息,点击详情进行审核回复,审核通过后添加确认评价反馈。

管理端评价反馈实现图如下所示。

图4.12 管理端评价反馈管理实现图

修改评价反馈关键代码如下:

    @PostMapping("/set")

@Transactional

    public Map<String, Object> set(HttpServletRequest request) throws IOException {

        service.update(service.readQuery(request), service.readConfig(request), service.readBody(request.getReader()));

        return success(1);

    }

4.2.9 管理员端系统管理模块

管理员点击“系统管理”菜单可以对系统的轮播图进行管理,查看到系统中的所有轮播图信息,对已经存在的轮播图,管理员可以修改,也可以发布新的轮播图信息。管理端系统轮播图管理实现图如下所示。

图4.13 管理端系统轮播图管理实现图

4.2.10 管理员端资源管理模块

管理员点击“资源管理”菜单能够对管理系统内的新闻资讯及其所属资讯分类信息进行增删改查。管理端资源管理实现图如下所示。

图4.14 管理端资源管理实现图


5 系统测试

5.1测试计划

5.1.1 测试范围与主要内容

一个系统测试的目的就是检验系统在真正的工作环境、条件下是不是能够正常运行,各种功能能不能符合设计的要求,通过测试发现系统当中存在的一些潜在的错误,然后对系统进行改进,使得系统最终以完美的形式展现给用户,提高用户使用过程中的体验度,真正达到项目的实际使用目的。

5.1.2 测试方法

具体测试方法包括:黑盒测试和白盒测试。

黑盒测试又被人们称作为功能测试,通常是在程序的接口来做一些测试的方法,它一般包括对程序的功能和使用的方法来做出一些数据的接受和输出,同时还可以做出正确的输出信息,并保证与外部信息的完整性。

白盒测试通常被人们称作为结构测试,在整个程序的结构和处理当中它是由程序当中的逻辑测试和检验程序来完成一些正确的工作。

具体的功能测试它是包括:系统的适用性、准确性、安全性等功能测试。

5.2 功能测试

下表是系统登录功能测试用例,检测了用户名和密码的不同的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表5.1 系统登录功能测试用例

功能描述

用于系统登录

测试目的

检测登录时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的用户名和密码带有非法字符

提示用户名或者密码错误

与预期结果一致

输入的用户名或者密码为空

提示用户名或者密码错误

与预期结果一致

输入的用户名和密码不存在

提示用户名或者密码错误

与预期结果一致

输入正确的用户名和密码

登录成功

与预期结果一致

下表是注册功能测试用例,检测了各种数据的输入情况,观察系统的响应情况。得出该功能达到了设计目标。

表5.2 注册功能测试用例

功能描述

用于用户注册

测试目的

检测用户注册时的合法性检查

测试数据以及操作

预期结果

实际结果

输入的手机号不合法

提示请输入正确的手机号码

与预期结果一致

输入的字段为空

提示必填项不能为空

与预期结果一致

输入的密码少于6位

提示密码必须为6-12位

与预期结果一致

输入的密码大于12位

提示密码必须为6-12位

与预期结果一致

下表是任务订单管理功能的测试用例,检测了任务订单管理中对任务订单信息的增加,删除,修改,查询操作是否成功运行。观察系统的响应情况,得出该功能也达到了设计目标,系统运行正确。

前置条件;用户登录系统。

表5.3 任务订单管理的测试用例

功能描述

用于任务订单管理

测试目的

检测任务订单管理时的各种操作的运行情况

测试数据以及操作

预期结果

实际结果

点击添加任务订单信息,必填项合法输入,点击保存

提示添加成功

与预期结果一致

点击添加任务订单信息,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击修改任务订单信息,必填项修改为空,点击保存

提示必填项不能为空

与预期结果一致

点击修改任务订单信息,必填项输入不合法,点击保存

提示必填项不能为空

与预期结果一致

点击删除任务订单信息,选择任务订单信息删除

提示删除成功

与预期结果一致

点击搜索任务订单信息,输入存在的任务订单信息名

查找出任务订单信息

与预期结果一致

点击搜索任务订单信息,输入不存在的任务订单信息名

不显示任务订单信息

与预期结果一致

5.3 测试结论

通过对校园跑腿服务系统的调试,能够检测校园跑腿服务系统的稳定性,为校园跑腿服务系统正式运行、稳定运行提供了可预测性的维护备案。能够帮助使用者熟悉整个校园跑腿服务系统,并对校园跑腿服务系统可能出现的错误有所了解。本章节提供了部分调试用例及调试日志,可以帮助使用者解决简单的错误问题,也加深了开发者对于此框架下的校园跑腿服务系统编写的了解度,为后期开发者顺利完成校园跑腿服务系统、发布任务订单提供了非常大的帮助。


6 总结与展望

随着科技的飞速发展,越来越多的行业和企业都在利用计算机技术来管理日益增长的数据。本文旨在探讨校园跑腿服务系统设计与实现,以满足校园跑腿服务系统信息化管理的需求。

本次毕业论文主要是利用Springboot+UniApp技术开发一个安全可靠,操作简易,同时具备业务可扩展的校园跑腿服务系统平台。本文详细的论述了系统的设计和开发,本系统的所有事务逻辑都是按照系统的需求分析进行设计的。在这个设计中,我花了大量的时间去理解系统开发中使用的知识,经过这段时间的努力工作最终完成了系统设计。通过这一阶段的学习,我发现了自己的不足,充分掌握了必要的应用技能,进一步的学习使我充实了自己的知识基础,完成了这个艰巨的任务。当遇到问题时,我很及时的寻求老师的帮助,通过专业的网站和论坛来解决,他们的帮助让我一步一步的成功克服了困难的问题。系统设计过程不容易,你需要不断充实自己,有勇气克服困难。系统开发的一些功能还不完善,需要继续改善后,通过用户体验来修改设计完美的系统,让用户得到更好的体验,我觉得很高兴,因为这是我第一次通过自己的努力实现这个系统,但绝不是我的最后一个,在未来我将努力实现更多的优秀的系统。

目前完成的校园跑腿服务系统设计与实现,还有许多有待改进的地方。一个是功能上的改进,第二个是技术上的改进。另外,系统如果能提供更多的功能就会使得系统更加丰富和多样化,比如兼职数据分析和可视化等。另外就是对前端UI的使用还不够熟练,视觉效果和界面观感有待提升,希望日后能对这个系统有所改进。

参考文献

[1]Gupta P M ,Kumar S ,Jatoth N D , et al.A new design approach of Rat-Race coupler based compact GaN HEMT power amplifier towards flat high efficiency over broadband[J].AEUE - International Journal of Electronics and Communications,2024,178155279-.

[2]罗光武,陈典灿,吴荷,等.应用Springboot+Vue框架的时间管理软件的设计与实现[J].工业控制计算机,2024,37(04):64-66.

[3]Chen L ,Zhu B ,Ru G , et al.Author Correction: Re-engineering the adenine deaminase TadA-8e for efficient and specific CRISPR-based cytosine base editing.[J].Nature biotechnology,2024,

[4]Liu Y ,Ma Q,Ou C, et al.Design and implementation of student micro-expression recognition system based on convolutional neural network[J].Computer Informatization and Mechanical System,2024,7(2):20-22.

[5]Barton J H ,Maru A ,Leaf A M , et al.Academic Detailing as a Health Information Technology Implementation Method: Supporting the Design and Implementation of an Emergency Department-Based Clinical Decision Support Tool to Prevent Future Falls.[J].JMIR human factors,2024,11e52592-e52592.

[6]Jasienski P J ,Shen Y ,Ohlbrock O P , et al.A computational implementation of Vector-based 3D Graphic Statics (VGS) for interactive and real-time structural design[J].Computer-Aided Design,2024,171103695-.

[7]Angela M V ,Harshini D ,Imran M P , et al.Rational design of quinoline-based D-A system to accomplish a switching from binary to ternary memory devices[J].Synthetic Metals,2024,305117598-.

[8]李明,冯树栋,白宗文,等.基于SpringBoot的成果需求匹配系统设计与实现[J].延安大学学报(自然科学版),2024,43(01):90-95.DOI:10.13876/J.cnki.ydnse.230026.

[9]王晓东,刘海燕,王迎,等.基于SpringBoot的气象信息资源管理系统设计与实现[J].电脑编程技巧与维护,2024,(03):79-82.DOI:10.16184/j.cnki.comprg.2024.03.028.

[10]郭甲天,陈婷,向阳.一种基于SpringBoot框架校园宿舍管理系统的设计与实现[J].电脑知识与技术,2024,20(07):37-40.DOI:10.14004/j.cnki.ckt.2024.0444.

[11]雷欣,马宏琳,郑霖,等.基于SpringBoot的域名信息系统设计与实现[J].电脑知识与技术,2024,20(05):44-47.DOI:10.14004/j.cnki.ckt.2024.0188.

[12]白茹鑫.基于SpringBoot+SSM框架的企业安全培训管理系统设计与实现[J].现代信息科技,2024,8(01):44-49.DOI:10.19850/j.cnki.2096-4706.2024.01.009.

[13]石雨昕,关家兴,邹博华,等.基于SpringBoot微服务架构设计与实现实验室开放课题管理系统[J].实验室检测,2024,2(01):101-106.

[14]张雷雨,单田清,梁霄.基于SpringBoot的水利地理信息系统设计与实现[J].连云港职业技术学院学报,2023,36(04):1-7.DOI:10.19858/j.cnki.1009-4318.2023.04.003.

[15]吴伶琳.基于SpringBoot的客户关系管理系统设计与实现[J].无线互联科技,2023,20(24):60-62.

[16]武际斌,段良华,金永亮.基于Vue+SpringBoot的课程思政素材库的设计与实现[C]//百色学院马克思主义学院.2023年思想政治教育论坛论文集.山东信息职业技术学院;,2023:3.DOI:10.26914/c.cnkihy.2023.087218.

[17]王连昆.智慧审批数据跑腿企业点单服务到家[N].滨城时报,2023-11-11(001).DOI:10.28019/n.cnki.nbfjs.2023.002293.

[18]牛占虎,郝晋娴.城关区一站式套餐服务让群众少跑腿[N].甘肃经济日报,2023-08-29(003).DOI:10.28283/n.cnki.ngsjj.2023.001669.

[19]叶子,周好雨,王圣婴.即时需求多,跑腿服务忙[J].科学之友,2023,(07):56-59.

[20]文静,赵敏坚.服务“送上门”企业“零跑腿”[N].韶关日报,2023-06-21(A05).DOI:10.28690/n.cnki.nsgrb.2023.001093.


致谢

眨眼之间,大学生活就要结束了。在本文的最后,我要感谢我和蔼可亲的导师、团结有爱的同学的帮助和鼓励。此刻,我找不到感谢之词可以用来表达我最深切的感激之情。尤其感谢我的指导老师,在选题的过程中与我进行了深入的交流,在毕业设计期间给我提供了一些指导。四年的学习生活让我受益良多,老师们的丰富的学术知识、认真负责的学习态度让我受益匪浅。在此,我深深地感谢那些曾经给予我帮助和指导的老师!

我们的论文得益于许多学者的贡献,他们的研究成果为我们提供了宝贵的指导,使我们能够更好地完成这篇文章。感谢我的同学和朋友在我的写作以及排版过程中给予热情的帮助,才使得我比较顺利的完成了这篇论文。

感谢大学里遇见的朋友,你们在我这四年里留下无数的温暖和快乐,让我对这个校园多了一份留念。最后,感谢我的父母、辅导员、班长,以及室友们对我大学生活上的关心和理解,让我能保持乐观和追求我所热爱的。尽管我的能力有限,但我仍然尽力去完善这篇论文,并且诚挚地希望各位老师和学友能够给予宝贵的指导与意见。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot校园跑腿系统是一个基于Spring Boot开发的校园内部服务平台,旨在解决校园内部的日常生活问题。 该系统主要包括三个主要模块:用户模块、订单模块和配送模块。 用户模块是该系统的核心,用于管理校园内的用户信息。该模块提供用户注册、登录、个人信息管理等功能。用户可以通过该模块发布任务需求,并查询历史订单。 订单模块是用于实现校园内快递和服务需求的下单流程。用户可以选择需求类型、填写详细信息、设置订单时间等。同时,该模块还提供订单管理功能,用户可以查询当前订单状态,取消或删除已完成的订单。 配送模块是校园跑腿系统的核心功能之一。当用户发布任务需求后,配送员可以根据自己的位置和可用时间选择接单,并通过系统分配的路线进行配送。同时,配送员可以通过该模块查看历史配送记录、管理个人信息等。 该系统还提供了实时消息通知功能,用户可以通过系统通知接收订单状态变更、任务进度等相关信息。 在技术上,Spring Boot校园跑腿系统采用了Spring Boot框架进行开发。借助Spring Boot的快速开发特性和自动化配置,减少了开发人员的繁琐配置工作,使得系统开发和部署更加简便快捷。同时,该系统使用了MySQL数据库用于数据存储,采用了前后端分离的开发方式,提高了系统的性能和可扩展性。 Spring Boot校园跑腿系统的推出,为校园内部的生活服务提供了一个简便和高效的解决方案,并且可以根据用户需求进行定制化开发,满足校园内部不同的日常需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值