基于springboot微信小程序的校园跑腿平台-附源码62054

摘 要

随着移动互联网的飞速发展,智能手机和移动互联网应用已经深入到人们生活的每一个角落。特别是在校园生活中,学生们对于便捷、高效的服务需求日益增强。校园跑腿服务作为一种解决学生日常琐事、节省时间精力的服务模式,受到了广大学生的热烈欢迎。然而,传统的校园跑腿服务往往存在信息不透明、效率低下、服务质量参差不齐等问题。因此,开发一款基于微信小程序的校园跑腿平台,通过技术手段提升服务效率和质量,成为了当前校园信息化建设的迫切需求。

SpringBoot作为一种轻量级、快速构建Web应用的框架,具有高度的集成性和良好的扩展性,非常适合用于搭建校园跑腿平台的后端服务。通过整合SpringBoot与微信小程序,我们可以实现一个功能完善、操作便捷、用户体验良好的校园跑腿平台,为学生提供更加高效、优质的跑腿服务。

本文将对基于微信小程序的校园跑腿平台的设计与实现过程进行详细介绍,包括平台的需求分析、架构设计、功能实现等方面。通过本文的阐述,希望能够为类似项目的开发提供有益的参考和借鉴。

在接下来的章节中,我们将首先进行需求分析,明确平台的功能定位和用户群体;然后,我们将进行架构设计,确定平台的技术路线和模块划分;接着,我们将详细介绍各个功能模块的实现过程;最后,我们将对平台进行测试和部署,确保平台的稳定性和可用性。

通过本文的阐述,我们希望能够为校园跑腿平台的开发提供一套完整、可行的解决方案,推动校园信息化建设的进一步发展。

关键词:校园跑腿平台;Java编程语言;Spring Boot框架;微信小程序

Design and Implementation of Campus Running Platform Based on WeChat Mini Program

Abstract

With the rapid development of mobile Internet, smart phones and mobile Internet applications have penetrated into every corner of people's lives. Especially in campus life, students have an increasing demand for convenient and efficient services. Campus errand service, as a service model that solves students' daily trivial matters and saves time and energy, has been warmly welcomed by a large number of students. However, traditional campus errand services often suffer from issues such as information opacity, low efficiency, and uneven service quality. Therefore, developing a campus errand platform based on WeChat mini programs to improve service efficiency and quality through technological means has become an urgent need for current campus information construction.

SpringBoot, as a lightweight and fast framework for building web applications, has high integration and good scalability, making it very suitable for building backend services for campus running platforms. By integrating SpringBoot and WeChat mini programs, we can achieve a campus running platform with comprehensive functions, convenient operation, and good user experience, providing students with more efficient and high-quality running services.

This article will provide a detailed introduction to the design and implementation process of a campus running platform based on WeChat mini programs, including platform requirements analysis, architecture design, functional implementation, and other aspects. Through the explanation in this article, it is hoped that it can provide useful reference and inspiration for the development of similar projects.

In the following chapters, we will first conduct a requirements analysis to clarify the platform's functional positioning and user group; Then, we will conduct architecture design, determine the technical roadmap and module division of the platform; Next, we will provide a detailed introduction to the implementation process of each functional module; Finally, we will test and deploy the platform to ensure its stability and availability.

Through the explanation in this article, we hope to provide a complete and feasible solution for the development of campus running platforms, and promote the further development of campus information construction.

Key words:Campus errand platform; Java programming language; Spring Boot framework; WeChat Mini Program

目  录

第1章 绪论

1.1 研究背景与意义

1.2 国内外研究现状

1.3 论文组成结构

第2章 系统分析

2.1 可行性分析

2.1.1 技术可行性

2.1.2 经济可行性

2.1.3 操作可行性

2.2 需求分析

2.3 性能分析

2.4 系统用例分析

2.5 系统流程分析

第3章 系统设计

3.1 系统架构设计

3.2 系统功能结构

3.3 数据库设计

3.3.1 数据库E-R图设计

3.3.2 逻辑结构设计

第4章 系统实现

4.1 学生用户模块的实现

4.1.1 前台首页界面

4.1.2 用户注册界面

4.1.3 用户登录界面

4.1.4密码修改界面

4.1.5 学生论坛界面

4.2 管理员功能模块的实现

4.2.1 管理员登录界面

4.2.2 管理员功能界面

4.2.3 系统用户管理界面

4.2.4任务类型管理界面

4.2.5 跑腿任务管理界面

4.2.6 系统管理界面

4.2.7 通知公告管理界面

4.3 跑腿用户模块的实现

4.3.1 跑腿任务界面

4.3.2 跑腿订单界面

第5章 系统测试

5.1 测试目的

5.2系统部分测试

5.2系统测试结果

第6章 总结与展望

参考文献

致谢

1 绪论

1.1研究背景与意义

随着科技的飞速发展和智能手机的普及,移动互联网已经成为人们生活中不可或缺的一部分。微信作为中国最大的社交平台之一,拥有庞大的用户基础和丰富的功能生态。微信小程序作为一种轻量级的应用形态,为用户提供了便捷、快速的服务体验。在这样的背景下,结合微信小程序开发校园跑腿平台,具有重要的研究背景与意义。

研究背景方面,校园作为一个庞大的学生社区,学生对于便捷、高效的服务需求日益增长。传统的校园跑腿服务通常依赖于口口相传或校园内的实体店铺,存在着信息不透明、服务范围有限、服务质量参差不齐等问题。而基于微信小程序的校园跑腿平台,可以充分利用微信的用户基础和社交属性,实现信息的快速传播和服务的高效匹配。

意义方面,首先,基于微信小程序的校园跑腿平台可以为学生提供更加便捷、高效的服务体验。学生可以通过平台轻松发布跑腿需求,快速找到合适的服务提供者,节省时间和精力。同时,平台还可以提供评价、投诉等功能,保障服务质量和用户权益。其次,平台可以促进校园内的创新创业氛围。通过搭建校园跑腿平台,可以吸引更多的学生参与到创新创业中来,培养创业意识和创新能力。

综上所述,基于微信小程序的校园跑腿平台设计与实现具有重要的研究背景与意义。通过整合微信小程序的强大功能和校园跑腿服务的实际需求,我们可以为学生、商家和创业者提供更加便捷、高效的服务体验,推动校园信息化建设的进一步发展。

1.2国内外研究现状

国内研究现状:

在国内,随着移动互联网的普及和微信小程序的快速发展,校园跑腿平台已成为创新创业的热点领域。许多团队和公司都投入到这一领域的研发中,推出了各具特色的校园跑腿小程序。这些平台通常提供包括代取快递、购买食品、日常用品等各类校园生活服务。它们通过微信小程序的便捷性,实现了服务需求的快速发布和匹配,提高了校园生活的便利性。同时,国内的研究还关注于如何通过算法优化供需匹配,提高服务效率和质量,以及如何通过数据分析来提升用户体验和平台运营效果。

国外研究现状:

在国外,尤其是美国的一些大学校园内,类似的跑腿服务平台也已经开始流行。这些平台主要通过APP提供服务,涵盖了送外卖、代购、取快递等多样化的服务内容。这些平台利用先进的算法技术,实现了服务需求的智能匹配和高效处理。此外,国外的研究还关注于如何通过技术手段保障服务的安全性和隐私性,以及如何通过用户反馈来不断优化平台的服务质量和用户体验。

综上所述,基于微信小程序的校园跑腿平台在国内外都受到了广泛的关注和研究。随着技术的不断进步和创新思维的不断涌现,未来的校园跑腿平台将有望提供更加智能化、个性化和安全化的服务体验。

1.3论文组成结构

根据市场调研得到的信息数据,结合国内外前沿研究,利用相关系统开发和设计方法,最终设计出基于微信小程序的校园跑腿平台。

本文共有七章,如下所示。

第一章概述了基于微信小程序的校园跑腿平台的研究目的和意义;精炼地总结了国内外研究情况和未来的研究趋势,最后给出了论文的组成结构。

第二章简要对系统各业务流程进行需求分析、可行性分析。

第三章对基于微信小程序的校园跑腿平台进行设计。

第四章对基于微信小程序的校园跑腿平台进行实现,并贴出相关页面截图,语言描述出具体功能实现的操作方法。

第五章对基于微信小程序的校园跑腿平台采用测试用例的方式来对一些主要功能模块测试,最后得出测试结果。

第六章总结全文并对未来的研究做出展望。

2 系统分析

2.1可行性分析

在软件开发的过程中系统的可行性分析是必不可少的,可行性的研究就是评估问题是否能得到解决并且是要以最少的时间和最少的代价来解决。为实现上面的目标还要必须考虑到解决这些问题的方法的优点和缺点,还要考虑到实现了这些系统规模的开发带来的经济效益。这里可以用技术的可行性,操作的可行性,经济的可行性对我们的系统进行可行性的研究。基于微信小程序的校园跑腿平台的可行性分析如下所示:

2.1.1技术可行性

基于微信小程序的校园跑腿平台设计与实现,在技术可行性上具备显著优势。微信小程序作为一种轻量级、易推广的应用形态,拥有庞大的用户基础和丰富的功能生态,为校园跑腿平台的快速搭建和普及提供了有力支持。同时,SpringBoot框架以其高效、简洁的特性,为后端服务的搭建提供了强大的技术支撑。SpringBoot的自动配置和快速开发特性,使得开发人员能够迅速搭建起稳定、可靠的后端服务,并与微信小程序进行无缝对接。此外,结合现代软件开发技术,如数据库优化、负载均衡、安全性保障等,可以确保校园跑腿平台的稳定运行和高效服务。因此,从技术可行性角度来看,基于微信小程序的校园跑腿平台设计与实现是完全可行的,并且有望为用户带来便捷、高效的服务体验。

2.1.2经济可行性

基于微信小程序的校园跑腿平台设计与实现,在经济可行性上也表现出显著优势。首先,微信小程序作为一种免费的应用形态,降低了平台的开发和运营成本。同时,通过整合校园内的资源和服务提供者,平台可以形成规模效应,降低单个服务的成本,提高整体的经济效益。此外,校园跑腿平台还可以为服务提供者带来更多的商业机会和收益,进一步促进校园内的经济发展。最后,通过优化供需匹配和算法调度,平台可以提高服务效率和质量,减少资源浪费和人力成本。因此,从经济可行性角度来看,基于微信小程序的校园跑腿平台设计与实现具有广阔的市场前景和盈利能力,是一种经济合理的解决方案。

2.1.3操作可行性

本系统是基于浏览器和服务器的基于微信小程序的校园跑腿平台,系统开发完成之后用户只需要在浏览器中输入正确的URL地址即可进行访问。本系统的前台页面简单明了,在没有操作指导的情况下也可以进行操作,无论是系统管理员还是用户在页面中所有的操作都是在浏览器中完成的,因此只要电脑在有网络的情况下,打开浏览器都能操作。而且在使用之前也不用进行相关的环境配置,因此本系统方便、简单、易于使用,所以该系统是容易并且可操作的。

2.2需求分析

在设计和实现基于微信小程序的校园跑腿平台之前,我们进行了详尽的需求分析,以确保平台能够满足校园内广大师生的实际需求,提供高效、便捷的服务体验。

首先,我们深入了解了校园内师生的日常生活习惯和需求,发现许多学生在忙碌的学习生活中,对于日常琐事如取快递、购买餐食等常常感到不便。同时,校园内的商家也希望有一个渠道能够更直接地触达学生,提供服务和推广产品。

因此,我们明确了平台的核心功能需求:一是为学生提供一个快速发布和接收跑腿任务的平台,二是为商家提供一个展示服务和产品的渠道。在此基础上,我们还考虑了平台的易用性、安全性和稳定性等因素,确保用户能够轻松上手并享受到流畅的服务体验。

为了满足这些需求,我们决定采用微信小程序作为平台的前端展示和交互界面。微信小程序具有用户基数大、使用门槛低、推广方便等优势,能够迅速吸引校园内的用户。同时,我们选择了SpringBoot作为后端框架,利用其高效、稳定的特点,快速搭建起后端服务。

在需求分析的过程中,我们还与校园内的师生进行了广泛的沟通,收集他们的意见和建议,不断优化平台的设计和功能。我们希望通过这个平台,为校园内的师生提供更加便捷、高效的服务体验,同时促进校园内的创新创业氛围。

综上所述,基于微信小程序的校园跑腿平台旨在解决校园内师生的实际需求,提供高效、便捷的服务体验。我们期待这一平台能够为校园生活带来更多的便利和乐趣。

2.3性能分析

基于微信小程序的校园跑腿平台在性能分析上表现出色,主要体现在以下几个方面:

微信小程序本身具有优秀的性能表现。微信小程序采用了轻量级的技术架构,使得用户可以快速加载和使用平台。同时,微信小程序还提供了丰富的API和组件,方便开发者进行高效开发,进一步提升平台的性能。

基于SpringBoot的后端框架也为平台提供了强大的性能支持。SpringBoot通过自动配置和快速开发特性,简化了后端服务的搭建过程,提高了开发效率。同时,SpringBoot还提供了丰富的功能和工具,如负载均衡、缓存机制等,帮助开发者优化后端性能,确保平台的稳定运行。

校园跑腿平台在设计和实现过程中还充分考虑了性能优化。例如,通过合理的数据库设计和索引优化,提高了数据查询和处理的效率;通过异步处理和消息队列等技术,减少了请求的响应时间;通过CDN加速和图片压缩等手段,优化了前端页面的加载速度。

平台还进行了充分的压力测试和性能调优,确保在高并发场景下依然能够保持稳定的性能表现。通过模拟大量用户同时访问和使用平台,测试了平台的负载能力和处理能力,并根据测试结果进行了相应的优化和调整。

综上所述,基于微信小程序的校园跑腿平台在性能分析上表现出色,通过微信小程序和SpringBoot等技术的优势以及性能优化措施的应用,确保了平台的快速响应和稳定运行,为用户提供了高效、便捷的服务体验。

2.4系统用例分析

基于微信小程序的校园跑腿平台的完整UML用例图分别是图2-1、图2-2和图2-3。

图2-1就是学生用户角色的用例展示。

图2-1 基于微信小程序的校园跑腿平台学生用户角色用例图

图2-2就是管理员角色的用例展示。

图2-2 基于微信小程序的校园跑腿平台管理员角色用例图

图2-3就是跑腿用户角色的用例展示。

图2-3 基于微信小程序的校园跑腿平台跑腿用户角色用例图

2.5系统流程分析

与强调控制逻辑的程序流程图不同,它更关心的是整个系统中数据的具体流动以及数据的加工处理的整个客观过程,是对数据规格的说明。也正因如此,系统数据流图作为系统结构化分析方法中极为重要的一种描述工具备受青睐。

基于微信小程序的校园跑腿平台的顶层数据流如下图所示。

图2-4系统顶层数据流图

系统顶层数据流:外部实体为用户,第一个流程为登录验证,用户信息表返回密码验证,是否正确,正确则登录系统,错误咨询信息,登录系统后,根据不同用户的功能选择,来读写数据库。

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

图2-5系统底层数据流图

系统底层数据流:外部实体为管理员学生用户和跑腿用户,数据流分别有管理员学生用户和跑腿用户流向系统数据流程,数据表提供数据支持,来完成逻辑操作。

3 系统设计

3.1系统架构设计

由于本系统在逻辑事务处理方面对数据库的操作比较频繁所以系统在底层连接数据库时并没有使用原生的JDBC,而是把JDBC进行了封装,封装之后相当于一个连接数据库的工具DB UTIL,这样使用起来会更加方便而且这样进行封装还可以降低系统中代码的冗余,当我们需要连接和使用数据库时只需要调用这个工具里面的一个方法就可以了。而且通过封装可以把对数据库的操作独立起来,当需要连接不同种类的数据库时只需要加以修改就可以达到目的。

DAO层本来并无这个类,它只是java中MVC构造里的一个model概念,主要就是里面的一些方法,而这些方法就是用来访问数据库的方法。我们在软件开发时DAO层我们一般都放接口和接口的实现类,用于来规范实现类的我们叫它接口,实现类重点用于对数据库的操纵。

MVC是一种系统研发的关键模型,M是Model模型,它是系统内部关键程序运行的核心,主要进行对数据库的各种操作。视图View是V也叫做视图,主要的作用是对一些数据进行显示。控制器Controller 是C执行从View的视图层来读取数据,然后控制用户的输入。

系统架构如下图所示。

图3-1系统架构图

3.2系统功能结构

进入系统后首先要进行登录,验证你的身份,赋予你不同的权限。当你成功登录后,页面会有多个板块,分别是后台首页、系统用户、论坛板块管理、学生论坛管理、跑腿论坛管理、任务类型管理、跑腿任务管理、跑腿订单管理、订单沟通管理、学生投诉管理、跑腿申诉管理、学生举报管理、跑腿举报管理、学生申请管理、系统管理、通知公告管理、资源管理。里面界面简单易懂,根据标示可以直接进行方便快捷的操作。

系统功能结构图如下所示。

图3-2系统功能结构图

3.3数据库设计

一个好的系统它的后台数据库一定要考虑的全面,这和我们建造房子一个概念,房子不是随心所欲建起来的,一切都是在合理设计的基础是实现的,地基打牢固了房子才能建的更高。数据库如果设计的很合理,而且每个方面都能考虑到了那么这个系统才能不会出现大的问题。

一个好的数据库可以关系到程序开发的优劣,数据库设计离不开表结构的设计,还有表与表之间的联系,以及系统开发需要设计的数据表内容等信息。在进行数据库设计期间,要结合实际情况来对数据库进行针对性的开发设计。

3.3.1数据库E-R图设计

本基于微信小程序的校园跑腿平台采用的是mysql数据库,数据存储快,因为基于微信小程序的校园跑腿平台,主要的就是对信息的管理,信息内容比较多,这就需要好好的设计一个好的数据库,分类要清楚,不能添加信息的时候,造成信息太过混乱,设计好的数据库首先就需要先把各个实体之间的关系表达明确,

系统的主要实体间关系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:

表forum_section (论坛板块)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

forum_section_id

int

10

0

N

Y

论坛板块ID

2

forum_section

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

更新时间

表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

更新时间:

表order_communication (订单沟通)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

order_communication_id

int

10

0

N

Y

订单沟通ID

2

task_number

varchar

64

0

Y

N

任务单号

3

starting_point_for_running_errands

varchar

64

0

Y

N

跑腿起点

4

running_leg_finish_line

varchar

64

0

Y

N

跑腿终点

5

student_users

int

10

0

Y

N

0

学生用户

6

student_name

varchar

64

0

Y

N

学生姓名

7

running_errand_users

int

10

0

Y

N

0

跑腿用户

8

running_name

varchar

64

0

Y

N

跑腿姓名

9

student_news

text

65535

0

Y

N

学生消息

10

running_errand_news

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

更新时间

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

表running_errands (跑腿任务)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_errands_id

int

10

0

N

Y

跑腿任务ID

2

task_number

varchar

64

0

Y

N

任务单号

3

starting_point_for_running_errands

varchar

64

0

Y

N

跑腿起点

4

running_leg_finish_line

varchar

64

0

Y

N

跑腿终点

5

task_type

varchar

64

0

Y

N

任务类型

6

task_coefficient

varchar

64

0

Y

N

任务系数

7

weight_of_goods

varchar

64

0

Y

N

货物重量

8

student_users

int

10

0

Y

N

0

学生用户

9

student_name

varchar

64

0

Y

N

学生姓名

10

task_details

text

65535

0

Y

N

任务详情

11

order_price

int

10

0

Y

N

0

订单价格

12

examine_state

varchar

16

0

N

N

未审核

审核状态

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表running_errands_appeal (跑腿申诉)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_errands_appeal_id

int

10

0

N

Y

跑腿申诉ID

2

task_number

varchar

64

0

Y

N

任务单号

3

starting_point_for_running_errands

varchar

64

0

Y

N

跑腿起点

4

running_leg_finish_line

varchar

64

0

Y

N

跑腿终点

5

student_users

int

10

0

Y

N

0

学生用户

6

student_name

varchar

64

0

Y

N

学生姓名

7

running_errand_users

int

10

0

Y

N

0

跑腿用户

8

running_name

varchar

64

0

Y

N

跑腿姓名

9

student_complaints

text

65535

0

Y

N

学生投诉

10

running_errands_appeal

text

65535

0

Y

N

跑腿申诉

11

examine_state

varchar

16

0

N

N

未审核

审核状态

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表running_errands_report (跑腿举报)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_errands_report_id

int

10

0

N

Y

跑腿举报ID

2

report_title

varchar

64

0

Y

N

举报标题

3

running_errand_users

int

10

0

Y

N

0

跑腿用户

4

running_name

varchar

64

0

Y

N

跑腿姓名

5

report_content

text

65535

0

Y

N

举报内容

6

examine_state

varchar

16

0

N

N

未审核

审核状态

7

examine_reply

varchar

16

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_orders (跑腿订单)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_errand_orders_id

int

10

0

N

Y

跑腿订ID

2

task_number

varchar

64

0

N

N

任务单号

3

starting_point_for_running_errands

varchar

64

0

Y

N

跑腿起点

4

running_leg_finish_line

varchar

64

0

Y

N

跑腿终点

5

task_type

varchar

64

0

Y

N

任务类型

6

task_coefficient

varchar

64

0

Y

N

任务系数

7

weight_of_goods

varchar

64

0

Y

N

货物重量

8

student_users

int

10

0

Y

N

0

学生用户

9

student_name

varchar

64

0

Y

N

学生姓名

10

task_details

text

65535

0

Y

N

任务详情

11

order_price

int

10

0

Y

N

0

订单价格

12

running_errand_users

int

10

0

Y

N

0

跑腿用户

13

running_name

varchar

64

0

Y

N

跑腿姓名

14

running_phone

varchar

64

0

Y

N

跑腿电话

15

running_state

varchar

64

0

Y

N

跑腿状态

16

pay_state

varchar

16

0

N

N

未支付

支付状态

17

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

18

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

Y

N

跑腿姓名

3

running_gender

varchar

64

0

Y

N

跑腿性别

4

running_phone

varchar

64

0

Y

N

跑腿电话

5

id_number

varchar

64

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

更新时间

表running_forum (跑腿论坛)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

running_forum_id

int

10

0

N

Y

跑腿论坛ID

2

post_title

varchar

64

0

Y

N

帖子标题

3

forum_section

varchar

64

0

Y

N

论坛板块

4

running_errand_users

int

10

0

Y

N

0

跑腿用户

5

cover_photo

varchar

255

0

Y

N

封面图片

6

post_body

text

65535

0

Y

N

帖子正文

7

hits

int

10

0

N

N

0

点击数

8

praise_len

int

10

0

N

N

0

点赞数

9

recommend

int

10

0

N

N

0

智能推荐

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

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_application (学生申请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_application_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

application_title

varchar

64

0

Y

N

申请标题

5

application_message

text

65535

0

Y

N

申请消息

6

running_errand_account

varchar

64

0

Y

N

跑腿账号

7

running_code

varchar

64

0

Y

N

跑腿密码

8

examine_state

varchar

16

0

N

N

未审核

审核状态

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表student_complaints (学生投诉)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_complaints_id

int

10

0

N

Y

学生投诉ID

2

task_number

varchar

64

0

Y

N

任务单号

3

starting_point_for_running_errands

varchar

64

0

Y

N

跑腿起点

4

running_leg_finish_line

varchar

64

0

Y

N

跑腿终点

5

student_users

int

10

0

Y

N

0

学生用户

6

student_name

varchar

64

0

Y

N

学生姓名

7

running_errand_users

int

10

0

Y

N

0

跑腿用户

8

running_name

varchar

64

0

Y

N

跑腿姓名

9

student_complaints

text

65535

0

Y

N

学生投诉

10

examine_state

varchar

16

0

N

N

未审核

审核状态

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表student_forum (学生论坛)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_forum_id

int

10

0

N

Y

学生论坛ID

2

post_title

varchar

64

0

Y

N

帖子标题

3

forum_section

varchar

64

0

Y

N

论坛板块

4

student_users

int

10

0

Y

N

0

学生用户

5

cover_photo

varchar

255

0

Y

N

封面图片

6

post_body

text

65535

0

Y

N

帖子正文

7

hits

int

10

0

N

N

0

点击数

8

praise_len

int

10

0

N

N

0

点赞数

9

recommend

int

10

0

N

N

0

智能推荐

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表student_reporting (学生举报)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_reporting_id

int

10

0

N

Y

学生举报ID

2

report_title

varchar

64

0

Y

N

举报标题

3

student_users

int

10

0

Y

N

0

学生用户

4

student_name

varchar

64

0

Y

N

学生姓名

5

report_content

text

65535

0

Y

N

举报内容

6

examine_state

varchar

16

0

N

N

未审核

审核状态

7

examine_reply

varchar

16

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

Y

N

学生姓名

3

student_gender

varchar

64

0

Y

N

学生性别

4

student_phone_number

varchar

64

0

Y

N

学生电话

5

student_id

varchar

255

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

更新时间

表task_type (任务类型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

task_type_id

int

10

0

N

Y

任务类型ID

2

task_type

varchar

64

0

Y

N

任务类型

3

task_coefficient

varchar

64

0

Y

N

任务系数

4

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

5

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学生用户模块的实现

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密码修改界面图

修改密码关键代码如下:

  /**

     * 修改密码

     * @param data

     * @param request

     * @return

     */

    @PostMapping("change_password")

    public Map<String, Object> change_password(@RequestBody Map<String, String> data, HttpServletRequest request){

        // 根据Token获取UserId

        String token = request.getHeader("x-auth-token");

        Integer userId = tokenGetUserId(token);

        // 根据UserId和旧密码获取用户

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

        String o_password = data.get("o_password");

        query.put("user_id" ,String.valueOf(userId));

        query.put("password" ,service.encryption(o_password));

        int count = service.selectBaseCount(service.count(query, service.readConfig(request)));

        if(count > 0){

            // 修改密码

            Map<String,Object> form = new HashMap<>();

            form.put("password",service.encryption(data.get("password")));

            service.update(query,service.readConfig(request),form);

            return success(1);

        }

        return error(10000,"密码修改失败!");

    }

4.1.5 学生论坛界面

提供学生用户交流的平台,让用户可以发布帖子、回复帖子、分享经验和信息,促进校园内的交流和合作。学生论坛界面图如下图所示。

图4-5学生论坛界面图

4.2管理员功能模块的实现 

4.2.1 管理员登录界面

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

图4-6管理员登录界面图

4.2.2 管理员功能界面

管理员可以查看后台首页、系统用户、论坛板块管理、学生论坛管理、跑腿论坛管理、任务类型管理、跑腿任务管理、跑腿订单管理、订单沟通管理、学生投诉管理、跑腿申诉管理、学生举报管理、跑腿举报管理、学生申请管理、系统管理、通知公告管理、资源管理等,并且可以根据需要进行相应的操作,管理员功能界面如下图所示。

图4-7管理员功能界面图

4.2.3 系统用户管理界面

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

4-8系统用户管理界面图

4.2.4任务类型管理界面

允许管理员管理跑腿任务的类型,包括添加新类型、编辑类型信息、删除类型等操作,确保任务分类的准确性和完整性。任务类型管理如下图所示。

图4-9任务类型列表界面图

图4-10任务类型添加界面图

4.2.5 跑腿任务管理界面

提供对跑腿任务的管理功能,包括发布任务、编辑任务信息、删除任务、审核任务等操作,确保任务信息的更新和准确性。跑腿任务管理界面如下图所示。

图4-11跑腿任务列表界面图

4.2.6 系统管理界面

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

图4-12系统管理界面图

轮播图添加代码:

@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.7 通知公告管理界面

提供通知公告的管理功能,让管理员发布、编辑、删除系统通知和公告,让用户及时了解重要信息。通知公告管理界面如下图所示。

图4-13通知公告管理界面图

4.3 跑腿用户模块的实现

4.3.1 跑腿任务界面

提供浏览和接受跑腿任务的功能,让用户可以查看校园内的各类跑腿任务,并选择接单。跑腿任务界面如下图所示。

图4-14跑腿任务界面

4.3.2 跑腿订单界面

提供跑腿订单的管理功能,包括订单查看、接单、完成等操作。跑腿订单界面如下图所示。

图4-15跑腿订单界面图

5 系统测试

5.1 测试目的

对任何系统而言,测试都是必不可少的环节,测试可以发现系统存在的很多问题,所有的软件上线之前,都应该进行充足的测试之后才能保证上线后不会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 系统测试结果

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

6 总结与展望

经过一个学期的努力,我成功地实现了基于微信小程序的校园跑腿平台。这个平台不仅是对我大学几年所学知识的综合测试,更是对我实际操作能力和解决问题能力的挑战。

在整个平台开发过程中,我主要采用了Spring Boot和Vue框架,以及MySQL数据库作为开发工具。通过对每个功能模块进行精细化操作,我实现了包括用户管理、任务发布、任务接单、评价反馈等在内的完整功能体系。在平台调试阶段,我不断优化代码和逻辑,确保系统能够稳定运行,满足用户的实际需求。

这次毕业设计让我深刻体会到了实践的重要性。通过实际操作,我不仅巩固了所学的理论知识,还锻炼了自己的动手能力和解决问题的能力。在面对困难和挑战时,我始终保持积极的态度,勇于尝试和创新,这让我在项目中不断成长和进步。

同时,这次开发经历也让我意识到团队合作的重要性。在项目中,我与同学们互相学习、互相帮助,共同解决了许多难题。这种团队协作的精神让我更加珍惜与同学们一起度过的时光,也让我对未来充满了信心。

总之,基于微信小程序的校园跑腿平台的实现是我大学生活中的一次宝贵经历。通过这次实践,我不仅提升了自己的技能和能力,还收获了成长和自信。我相信,在未来的道路上,我会继续坚持努力,不断追求进步和创新。

参考文献

[1]Slameto ,Fahrudin E D ,Saputra W M .Effect of fertilizer composition and different varieties on yield, methane and nitrous oxide emission from rice field in East Java Indonesia[J].Frontiers in Agronomy,2024,6

[2]Prida H P ,Suyatno S ,Hafizh G , et al.Slagging Fouling Prediction of Wood Waste Blending as Co-Firing Fuel for Northern Java Power Plant[J].Key Engineering Materials,2024,7098165-172.

[3]Rendrarpoetri L B ,Rustiadi E ,Fauzi A , et al.Sustainability Assessment of the Upstream Bengawan Solo Watershed in Wonogiri Regency, Central Java Province, Indonesia[J].Sustainability,2024,16(5):

[4]Prabawani B ,Hadi P S ,Fisher R M , et al.Socioeconomic perspective of agroforestry development in Central Java[J].Environmental and Sustainability Indicators,2024,22100354-.

[5]徐少军,李宗哲,梅杰,等.基于Springboot+Vue框架的质量检验监督管理系统研发[J].纺织标准与质量,2024,(01):11-14+21.

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

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

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

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

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

[11]翟祥栩,陈谦民,陈宗玉.基于SpringBoot的农业大数据一站式分析预测平台的设计与实现[J].现代信息科技,2023,7(24):6-10+15.DOI:10.19850/j.cnki.2096-4706.2023.24.002.

[12]黄娟.基于SpringBoot和Vue.js的医院数据提取管理平台的设计与实现[J].信息与电脑(理论版),2023,35(22):91-93.

[13]洪保刘.基于大数据+SpringBoot技术的全国传染病数据分析可视化平台[J].数字技术与应用,2023,41(11):161-164.DOI:10.19695/j.cnki.cn12-1369.2023.11.50.

[14]余海燕,王姝翔,李红梅.基于众包平台的跑腿代购即时配送优化研究[J].工业工程,2022,25(04):100-107.

[15]包文夏,吴梓恩,朱宝怡.基于Axure平台的校园跑腿APP原型设计[J].办公自动化,2022,27(08):15-18.

[16]王姝翔.基于众包平台的跑腿代购即时配送优化研究[D].重庆交通大学,2022.DOI:10.27671/d.cnki.gcjtc.2022.000135.

[17]邓云霞,周沛,孙罡,等.“帮主”小程序的设计研究——基于微信小程序的校园跑腿互助平台[J].投资与合作,2021,(02):197-198.

[18]吕谨伊,谌杨杨,朱泓羲,等.校园跑腿服务平台发展影响因素实证分析——以江西某高校为例[J].市场周刊,2020,33(08):80-82+111.

[19]孙诗棋,黄佳怡,郑莹珊,等.基于O2O众包模式的SaaS跑腿平台研究[J].经济管理文摘,2020,(05):44-45.

[20]初航,高峰,常凤荣.基于Android平台面向大学生的校园服务软件孟德跑腿App开发与推广[J].考试周刊,2019,(26):153.

致谢

经过几个月时间的努力终于完成了这篇文章,在文章的写作与研究的过程中遇到了很多困难,都在同学和老师的帮助下解决了。尤其非常感谢我最敬爱的老师,他对我进行了无私的指导和帮助,不厌其烦的帮助进行文章的修改。老师严谨的治学态度、渊博的学术知识、诲人不倦的敬业精神以及宽容的待人风范使我获益颇丰。此外,在校图书馆查找资料的时候,图书馆的老师也给我提供了很多方面的支持与帮助。在此,向帮助和指导过我的老师表示最衷心的感谢!感谢这篇文章所涉及到的各位学者。本文引用了数位学者的文献,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇文章的写作。感谢我的同学和朋友,在我写文章的过程中给与了我很多素材和帮助,还在文章的撰写和排版过程中提供热情的帮助。同时,感谢我的室友对我的热心指导和帮助,经常有不懂之处都是大家在帮助我,才使得我比较顺利的完成了这篇文章。由于我水平有限,所写文章难免有不足之处,恳请各位老师和学友批评和指正!

点赞+收藏+关注  →私信领取本源代码、数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值