目录
1 绪论
1.1 研究背景
1.2研究现状
1.3论文结构与章节安排
2 基于微信小程序的大用户心理咨询系统设计与实现分析
2.1 可行性分析
2.2 系统功能分析
2.3 系统用例分析
2.4 系统流程分析
2.5本章小结
3 基于微信小程序的大用户心理咨询系统设计与实现总体设计
3.1 系统功能模块设计
3.2 数据库设计
3.4本章小结
4 基于微信小程序的大用户心理咨询系统设计与实现详细设计与实现
4.1用户功能模块
4.2管理员功能模块
5系统测试
结论
参考文献
致 谢
摘要
随着社会的快速发展和竞争的日益激烈,大用户面临着越来越多的心理压力和挑战。为了有效缓解这些压力,提供及时、便捷的心理咨询服务显得尤为重要。微信小程序作为一种新兴的移动互联网应用形式,以其轻量级、即用即走的特点,为大用户心理咨询提供了新的解决方案。
本文旨在探讨基于微信小程序的大用户心理咨询系统的设计与实现。该系统将利用微信小程序的平台优势,结合大用户群体的心理需求,构建一个集心理咨询、心理测试、心理知识普及于一体的综合性服务平台。通过该系统,大用户可以随时随地获取专业的心理咨询服务,及时了解自身心理状态,学习有效的心理调适方法,从而提高心理素质,更好地应对学习和生活中的挑战。同时,该系统也将为心理心理课程提供一个高效的工作平台,方便他们与大用户进行线上交流和指导,进一步推动大用户心理咨询事业的发展。
基于微信小程序的大用户心理咨询系统设计与实现使用 Java 语言,采用基于 MVC 模式的 JavaEE 技术进行开发,使用MyEclipse 编译器编写,数据方面主要采用的是微软的 MySQL 关系型数据库来作为数据存储媒介,配合前台 HTML+CSS 技术完成系统的开发。
关键词:微信小程序的大用户心理咨询系统;Springboot框架;MySQL数据库
Abstract
With the rapid development of society and increasingly fierce competition, college students are facing more and more psychological pressure and challenges. In order to effectively alleviate these pressures, providing timely and convenient psychological counseling services is particularly important. As a new form of mobile Internet application, WeChat applet provides a new solution for college students' psychological consultation with its lightweight, ready to use and ready to go characteristics.
This article aims to explore the design and implementation of a college student psychological counseling system based on WeChat mini programs. The system will leverage the platform advantages of WeChat mini programs, combined with the psychological needs of college students, to build a comprehensive service platform that integrates psychological counseling, psychological testing, and popularization of psychological knowledge. Through this system, college students can access professional psychological counseling services anytime and anywhere, timely understand their own psychological status, learn effective psychological adjustment methods, thereby improving their psychological quality and better responding to challenges in learning and life. At the same time, the system will also provide an efficient work platform for psychological counselors, facilitating online communication and guidance with college students, and further promoting the development of college student psychological counseling.
The design and implementation of a college student psychological counseling system based on WeChat mini program is carried out using Java language and Java EE technology based on MVC mode. The system is developed using MyEclipse compiler, and Microsoft's MySQL relational database is mainly used as the data storage medium. The system is developed in conjunction with front-end HTML+CSS technology.
Keywords:A psychological counseling system for college students using WeChat mini programs; Springboot framework; MySQL database
1 绪论
1.1 研究背景
在当今这个信息爆炸、节奏快速的社会,大用户作为社会的未来栋梁,面临着来自学业、就业、人际关系等多方面的压力。这些压力不仅影响着他们的身心健康,还可能对他们的成长和发展产生负面影响。因此,为大用户提供及时、有效的心理咨询服务,帮助他们缓解压力、解决问题,成为了一个亟待解决的问题。
随着移动互联网技术的飞速发展,微信小程序以其轻便、易用、无需安装等特点,迅速成为了人们生活中不可或缺的一部分。微信小程序不仅提供了丰富的应用场景,还为用户带来了更加便捷、高效的服务体验。在这一背景下,基于微信小程序的大用户心理咨询系统应运而生,为大用户提供了一个随时随地、方便快捷的心理咨询平台。
该系统将利用微信小程序的技术优势,结合大用户的实际需求,提供心理咨询、心理测试、心理知识普及等功能。通过这一系统,大用户可以轻松地与心理心理课程进行在线交流,获取专业的心理咨询建议;同时,他们还可以进行心理测试,了解自己的心理状态,及时发现潜在的心理问题;此外,系统还将提供丰富的心理知识资源,帮助大用户更好地了解心理健康知识,提高自我调适能力。
因此,基于微信小程序的大用户心理咨询系统的设计与实现,不仅有助于满足大用户对心理咨询服务的需求,提高他们的心理素质和应对能力,还有助于推动大用户心理咨询事业的发展,为构建健康、和谐的校园环境提供有力支持。
1.2研究现状
在当前的研究领域,基于微信小程序的大用户心理咨询系统设计与实现已经引起了广泛关注。随着大用户心理健康问题日益凸显,以及移动互联网技术的不断革新,研究者们开始探索如何有效利用微信小程序这一轻量级、高可用的平台,为大用户提供更加便捷、高效的心理咨询服务。
目前,已有一些学者和机构在基于微信小程序的大用户心理咨询系统方面取得了初步的研究成果。这些系统通常集成了在线咨询、心理测试、心理知识库等功能模块,旨在为大用户提供全方位、个性化的心理支持。同时,研究者们还注重系统的用户体验和互动性,通过优化界面设计、增强功能实用性等方式,提高系统的使用率和用户满意度。
然而,尽管取得了一定的进展,但基于微信小程序的大用户心理咨询系统仍存在一些挑战和问题。例如,如何确保系统咨询服务的专业性和质量,如何保障用户隐私和数据安全,以及如何进一步提高系统的智能化和个性化水平等。因此,未来的研究需要在这些方面进行深入探索和创新,以推动基于微信小程序的大用户心理咨询系统的不断完善和发展。
1.3论文结构与章节安排
本文共分为六章,章节内容安排如下:
第一章为引言,此章节对所设计和实现的系统的背景和状况以及意义进行详细的论述以及说明,同时进行了论文整体框架的结构的简要介绍。
第二章为系统需求分析,章节所做的主要的工作是对系统进行了技术、经济和操作方面可行性的分析;对系统实行了总体功能的需求、用例分析。
第三章为系统的设计,主要是对系统的功能结构进行设计,并对系统数据库的概念结构以及物理结构的设计进行了分析。
第四章就是对系统的实现,根据系统功能的划分,分别的对系统所需要实现的前台客户功能和后台管理员功能进行了分析和说明。
第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试
2 基于微信小程序的大用户心理咨询系统设计与实现分析
2.1 可行性分析
系统可行行分析是对系统对系统可行性进行一个探讨。在探讨系统的可行性上我们主要从技术上的可行性和经济上的可行性以及法律层面的可行性上进行分析,如果三个层面度通过,我们则认为系统是比较可行的。
2.1.1技术可行性分析
基于微信小程序的大用户心理咨询系统设计与实现采用了Spring Boot框架,开发了功能完备、使用简单的前端应用程序,并建立、维护了一个数据完整、安全、稳定性强的后台数据库系统。
系统使用Spring Boot框架和Mysql数据库作为设计工具,可简单易行地学习操作。用户角色之间的相结合开发一套基于微信小程序的大用户心理咨询系统设计与实现是值得尝试的,数据完整性和许多品质为数据的功能分配和管理提供了依据。它也是数据库安全平台的重要组成部分,是提高和增强数据安全性的重要手段。此外,为了提供更平滑,更智能和更有效的基本控制方法,定义了同时构建对安全计算环境的支持所需的步骤,并帮助维护安全性。因为在这两种开发工具中,功能强大且免费且界面良好,所以基于微信小程序的大用户心理咨询系统设计与实现在技术方面是可行的。
2.1.2经济可行性分析
基于微信小程序的大用户心理咨询系统设计与实现管理的开发是由开发者自己开发,不需要购买其他软件或者端口之类的,而且在基于微信小程序的大用户心理咨询系统设计与实现管理的开发之前所做的市场调研及其他的基于微信小程序的大用户心理咨询系统设计与实现,都是没有任何费用的,通过开发者自己的努力,所有的工作的都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于基于微信小程序的大用户心理咨询系统设计与实现的开发在经济上是完全可行的,没有任何费用支出的。
使用Spring Boot框架是比较成熟的技术,所以基于微信小程序的大用户心理咨询系统设计与实现的开发在经济上是没有问题的。
2.1.3操作可行性分析
可操作性主要是对基于微信小程序的大用户心理咨询系统设计与实现系统设计完成后,用户的使用体验度,对于管理员可以通过系统随时管理相关的数据信息,并且对于管理员、用户角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息需求和课程信息管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
2.2 系统功能分析
2.2.1 功能性分析
基于微信小程序的大用户心理咨询系统设计与实现我划分为了普通用户管理模块和管理员模块这三大部分。
普通用户管理模块:
(1)注册登录:游客可以随时进入到系统中,对系统中的信息浏览,但是想要实现心理课程用户信息操作,就必须有这个系统的账号,如果没有账号的话,可以注册用户进行相关的操作,同时用户还可以通过“用户”这以按钮对个人信息以及操作的信息进行管控。
(2)心理咨询:当用户点击“心理咨询”这一菜单按钮,会显示管理员在后台发布的所有的心理咨询,可以查看详情;进行咨询预约、点赞、收藏、评论等;
(3)心理文章:当用户点击“心理文章”这一菜单按钮,会显示管理员在后台发布的所有的心理文章信息,可以查看详情;进行收藏、点赞、评论等;
(4)心理课程:当用户点击“心理课程”这一菜单按钮,会显示管理员在后台发布的所有的心理课程,可以查看详情,进行分享、收藏、点赞、评论等;
(5)心理知识:当用户点击“心理知识”这一菜单按钮,会显示管理员在后台发布的所有的心理知识信息,可以查看详情;进行收藏、点赞、评论等;
(6)FM:当用户点击“FM”这一菜单按钮,会显示管理员在后台发布的所有的FM信息,可以查看详情;进行收藏、点赞、评论等;
(7)我的:在前台点击“我的”可以对基本信息、收藏、统计图、咨询预约、错题列表等信息进行管控。
管理员管理模块:
(1)登录:管理员在后台可以输入用户名+密码进行登录,管理员的用户名和密码是在数据库中直接设定好的。
(2)心理咨询管理:管理员点击“心理咨询管理”菜单可以查看到系统中的所有心理咨询,对已经存在的心理咨询,管理员可以修改,也可以添加新的心理咨询或者删除心理咨询。
(3)咨询预约管理:管理员点击“咨询预约管理”菜单可以查看到系统中的所有咨询预约信息,可以进行增删改查等操作。
(4)公益中心管理:管理员点击“公益中心管理”菜单可以查看到系统中的所有公益中心信息,可以进行增删改查等操作。
(5)系统用户管理:管理员可以对系统中所有的用户角色进行管控,包含了管理员、普通用户等角色,如果需要添加新的用户,点击页面中的“添加”按钮根据提示输入上用户信息,点击“提交”以后在对应的用户界面就可以查看到了,可以点击用户后面的“删除”按钮直接删除某一用户。
(6)考试管理:进入后台首页工具栏点击“考试管理”这个按钮可以查看所有科目列表、试题库、错题记录、试卷列表等信息,可以进行详情查看、删除、查看评论等操作。
(7)资源管理:进入后台首页工具栏点击“资源管理”这个按钮可以查看所有心理文章、文章分类等信息,可以进行详情查看、删除、查看评论等操作。
2.2.2 非功能性需求分析
非功能性分析旨在评估基于微信小程序的大用户心理咨询系统设计与实现的非功能需求和性能要求。通过对性能、可靠性、安全性、可用性和扩展性等方面进行评估,确保平台能够满足用户和系统运行的要求。具体如下2-1表格中:
表2.1基于微信小程序的大用户心理咨询系统设计与实现非功能需求表
非功能性要求 | 说明 |
性能 | 评估响应时间、并发用户数、吞吐量等指标,以确保平台稳定高效地运行。 |
可靠性 | 评估系统的稳定性、容错能力和数据完整性,保障系统在故障情况下正常运行。 |
安全性 | 评估用户身份认证、数据加密和访问控制等,保护用户信息和交易的安全。 |
可用性 | 评估系统的稳定性、故障处理能力和用户界面友好性,提供良好的用户体验。 |
扩展性 | 评估系统的可扩展性和灵活性,以便根据需求进行功能扩展和升级。 |
2.3 系统用例分析
基于微信小程序的大用户心理咨询系统设计与实现的完整UML用例图分别是图2-1、图2-2和图2-3。
图2-1就是普通用户角色的用例展示。
图2-1 基于微信小程序的大用户心理咨询系统设计与实现普通用户角色用例图
图2-2就是管理员角色的用例展示。
图2-3 基于微信小程序的大用户心理咨询系统设计与实现管理员角色用例图
2.4 系统流程分析
2.4.1登录流程
登录模块主要满足管理员以及用户的权限登录,用户登录流程图如图24所示。
图2-4 登录流程图
2.4.2注册流程
未有账号的用户可进入注册界面进行注册操作,用户注册流程图如图2-5所示。
图2-5 注册流程图
2.4.3添加信息流程
用户在添加信息时,信息编号自动生成,系统会对添加的信息进行验证,验证通过则添加至数据库,添加信息成功,反之添加失败。添加信息流程如图2-6所示。
图2-6 添加信息流程图
2.4.4删除信息流程
用户可选择要删除的信息进行信息删除操作,在删除信息时系统提示是否确定删除信息,是则删除信息成功,系统数据库将信息进行删除。删除信息流程图如图2-7所示。
图2-7 删除信息流程图
2.5本章小结
本章主要通过对基于微信小程序的大用户心理咨询系统设计与实现的可行性分析、功能需求分析、系统用例分析、系统流程分析,确定整个基于微信小程序的大用户心理咨询系统设计与实现要实现的功能。同时也为基于微信小程序的大用户心理咨询系统设计与实现的代码实现和测试提供了标准。
3 基于微信小程序的大用户心理咨询系统设计与实现总体设计
本章主要讨论的内容包括基于微信小程序的大用户心理咨询系统设计与实现的功能模块设计、数据库系统设计。
3.1 系统功能模块设计
3.1.1整体功能模块设计
在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本基于微信小程序的大用户心理咨询系统设计与实现中的用例。那么接下来就要开始对本基于微信小程序的大用户心理咨询系统设计与实现的架构、主要功能和数据库开始进行设计。基于微信小程序的大用户心理咨询系统设计与实现根据前面章节的需求分析得出,其总体设计模块图如图3-1所示。
图3-1 基于微信小程序的大用户心理咨询系统设计与实现功能模块图
3.1.2用户模块设计
本系统的用户包括管理员和用户两种用户模块的功能基本是相同的,用户比管理员多了一个注册功能,所以以用户模块的结构图为例进行分析,用户模块结构图为例进行分析,如下图:
图3-2用户模块结构图
3.1.3 评论管理模块设计
基于微信小程序的大用户心理咨询系统设计与实现是一个交流性质的公开平台,用户在平台上提交评论,增加用户之间的互动性。但是同时也为了更好的规范评论的内容,给予管理员删除不合适的评论的功能,所以需要专门设计一个评论管理模块,具体的结构图如下:
图3-3评论管理模块结构图
3.1.4咨询管理模块设计
基于微信小程序的大用户心理咨询系统设计与实现最重要的一个功能就是咨询,其模块功能结构,具体的结构图如下:
图3-4咨询信息模块结构图
3.2 数据库设计
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。
3.2.1 数据库概念结构设计
下面是整个基于微信小程序的大用户心理咨询系统设计与实现中主要的数据库表总E-R实体关系图。
图3-6 基于微信小程序的大用户心理咨询系统设计与实现总E-R关系图
3.3.2 数据库逻辑结构设计
通过上一小节中基于微信小程序的大用户心理咨询系统设计与实现中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 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: |
表consultation_appointment (咨询预约)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | consultation_appointment_id | int | 10 | 0 | N | Y | 咨询预约ID | |
2 | consultants_name | varchar | 64 | 0 | Y | N | 咨询师姓名 | |
3 | gender_of_consultant | varchar | 64 | 0 | Y | N | 咨询师性别 | |
4 | age_of_consultant | varchar | 64 | 0 | Y | N | 咨询师年龄 | |
5 | problem_type | varchar | 64 | 0 | Y | N | 问题类型 | |
6 | contact_information | varchar | 64 | 0 | Y | N | 联系方式 | |
7 | appointment_users | int | 10 | 0 | Y | N | 0 | 预约用户 |
8 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
9 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
10 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
11 | appointment_content | text | 65535 | 0 | Y | N | 预约内容 | |
12 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
13 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | exam_question_id | mediumint | 8 | 0 | N | Y | ||
2 | subject_name | varchar | 255 | 0 | Y | N | 科目名称 | |
3 | type | varchar | 20 | 0 | Y | N | 类型 | |
4 | title | varchar | 255 | 0 | Y | N | 题目 | |
5 | question_item | varchar | 500 | 0 | Y | N | 选项 | |
6 | answer | varchar | 500 | 0 | Y | N | 参考答案 | |
7 | score | double | 9 | 2 | Y | N | 总分 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | fm_id | int | 10 | 0 | N | Y | FMID | |
2 | radio_station_name | varchar | 64 | 0 | Y | N | 电台名称 | |
3 | radio_type | varchar | 64 | 0 | Y | N | 电台类型 | |
4 | radio_anchor | varchar | 64 | 0 | Y | N | 电台主播 | |
5 | radio_time | varchar | 64 | 0 | Y | N | 电台时间 | |
6 | radio_audio | varchar | 255 | 0 | Y | N | 电台音频 | |
7 | radio_content | text | 65535 | 0 | Y | N | 电台内容 | |
8 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
9 | praise_len | 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 | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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已取消 |
表psychological_counseling (心理咨询)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | psychological_counseling_id | int | 10 | 0 | N | Y | 心理咨询ID | |
2 | consultants_name | varchar | 64 | 0 | Y | N | 咨询师姓名 | |
3 | gender_of_consultant | varchar | 64 | 0 | Y | N | 咨询师性别 | |
4 | age_of_consultant | varchar | 64 | 0 | Y | N | 咨询师年龄 | |
5 | consultants_photo | varchar | 255 | 0 | Y | N | 咨询师照片 | |
6 | problem_type | varchar | 64 | 0 | Y | N | 问题类型 | |
7 | contact_information | varchar | 64 | 0 | Y | N | 联系方式 | |
8 | proficient_in_direction | varchar | 64 | 0 | Y | N | 擅长方向 | |
9 | coaching_field | text | 65535 | 0 | Y | N | 辅导领域 | |
10 | shift_scheduling_time | text | 65535 | 0 | Y | N | 排班时间 | |
11 | career_history | text | 65535 | 0 | Y | N | 从业履历 | |
12 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
13 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | psychological_courses_id | int | 10 | 0 | N | Y | 心理课程ID | |
2 | course_name | varchar | 64 | 0 | Y | N | 课程名称 | |
3 | course_type | varchar | 64 | 0 | Y | N | 课程类型 | |
4 | course_images | varchar | 255 | 0 | Y | N | 课程图片 | |
5 | course_hours | varchar | 64 | 0 | Y | N | 课程课时 | |
6 | course_start_time | varchar | 64 | 0 | Y | N | 开课时间 | |
7 | class_location | varchar | 64 | 0 | Y | N | 上课地点 | |
8 | course_website | varchar | 255 | 0 | Y | N | 课程网址 | |
9 | course_content | text | 65535 | 0 | Y | N | 课程内容 | |
10 | course_introduction | text | 65535 | 0 | Y | N | 课程简介 | |
11 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表psychological_knowledge (心理知识)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | psychological_knowledge_id | int | 10 | 0 | N | Y | 心理知识ID | |
2 | knowledge_title | varchar | 64 | 0 | Y | N | 知识标题 | |
3 | knowledge_type | varchar | 64 | 0 | Y | N | 知识类型 | |
4 | release_date | date | 10 | 0 | Y | N | 发布日期 | |
5 | knowledge_cover | varchar | 255 | 0 | Y | N | 知识封面 | |
6 | knowledge_description | text | 65535 | 0 | Y | N | 知识描述 | |
7 | knowledge_content | text | 65535 | 0 | Y | N | 知识内容 | |
8 | knowledge_video | varchar | 255 | 0 | Y | N | 知识视频 | |
9 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
10 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | 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 | user_phone_number | varchar | 16 | 0 | Y | N | 用户电话 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | 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 | subject_id | int | 10 | 0 | N | Y | ||
2 | name | varchar | 255 | 0 | Y | N | ||
3 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | exam_id | mediumint | 8 | 0 | N | Y | 考试id | |
2 | subject_name | varchar | 255 | 0 | Y | N | ||
3 | name | varchar | 32 | 0 | N | N | 考试名称:[2,32] | |
4 | duration | int | 10 | 0 | Y | N | 答题时长 | |
5 | score | double | 9 | 2 | Y | N | 总分 | |
6 | status | varchar | 10 | 0 | Y | N | 状态:启用、禁用 | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | user_id | int | 10 | 0 | Y | N | 出题人 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | exam_question_id | mediumint | 8 | 0 | N | Y | ||
2 | subject_name | varchar | 255 | 0 | Y | N | 科目名称 | |
3 | type | varchar | 20 | 0 | Y | N | 类型 | |
4 | title | varchar | 255 | 0 | Y | N | 题目 | |
5 | question_item | varchar | 500 | 0 | Y | N | 选项 | |
6 | answer | varchar | 500 | 0 | Y | N | 参考答案 | |
7 | score | double | 9 | 2 | Y | N | 总分 | |
8 | question_order | int | 10 | 0 | Y | N | 排序 | |
9 | exam_id | mediumint | 7 | 0 | Y | N | 所属试卷 | |
10 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_answer_id | mediumint | 8 | 0 | N | Y | ||
2 | user_id | mediumint | 7 | 0 | N | N | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
3 | exam_id | mediumint | 7 | 0 | N | N | 0 | 考试id |
4 | score | double | 9 | 2 | Y | N | 0.00 | 分数 |
5 | answers | text | 65535 | 0 | Y | N | 答案 | |
6 | score_detail | text | 65535 | 0 | Y | N | 评分详情 | |
7 | objective_score | double | 9 | 2 | Y | N | 0.00 | 客观题得分 |
8 | subjective_score | double | 9 | 2 | Y | N | 0.00 | 主观题得分 |
9 | score_state | tinyint | 4 | 0 | Y | N | 0 | 评分状态 |
10 | nickname | varchar | 255 | 0 | Y | N | 提交人 | |
11 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
13 | comment_desc | varchar | 255 | 0 | Y | N | 评语 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | user_answer_id | mediumint | 8 | 0 | N | Y | ||
2 | subject_name | varchar | 255 | 0 | Y | N | 科目名称 | |
3 | question_item | varchar | 255 | 0 | Y | N | 选项 | |
4 | title | varchar | 255 | 0 | Y | N | 题目 | |
5 | type | varchar | 255 | 0 | Y | N | 题目类型 | |
6 | exam_id | mediumint | 7 | 0 | N | N | 0 | 考试id |
7 | score | double | 9 | 2 | Y | N | 0.00 | 分数 |
8 | answers | text | 65535 | 0 | Y | N | 用户提交的答案 | |
9 | answer | text | 65535 | 0 | Y | N | 参考答案 | |
10 | score_detail | text | 65535 | 0 | Y | N | 评分详情 | |
11 | objective_score | double | 9 | 2 | Y | N | 0.00 | 客观题得分 |
12 | subjective_score | double | 9 | 2 | Y | N | 0.00 | 主观题得分 |
13 | score_state | tinyint | 4 | 0 | Y | N | 0 | 评分状态 |
14 | nickname | varchar | 255 | 0 | Y | N | 提交人 | |
15 | user_id | int | 10 | 0 | N | N | 提交人ID | |
16 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
17 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
3.4本章小结
整个基于微信小程序的大用户心理咨询系统设计与实现的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。
4 基于微信小程序的大用户心理咨询系统设计与实现详细设计与实现
基于微信小程序的大用户心理咨询系统设计与实现的详细设计与实现主要是根据前面的基于微信小程序的大用户心理咨询系统设计与实现的需求分析和基于微信小程序的大用户心理咨询系统设计与实现的总体设计来设计页面并实现业务逻辑。主要从基于微信小程序的大用户心理咨询系统设计与实现界面实现、业务逻辑实现这两部分进行介绍。
4.1用户功能模块
4.1.1 前台首页界面
当进入基于微信小程序的大用户心理咨询系统设计与实现的时候,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,下面是心理测评,再往下是心理咨询,其主界面展示如下图4-1所示。
图4-1 前台首页界面图
4.1.2 用户注册界面
基于微信小程序的大用户心理咨询系统设计与实现的游客和用户时可以进行注册登录,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可用户注册成功。其用用户注册界面展示如下图4-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.1.3 用户登录界面
基于微信小程序的大用户心理咨询系统设计与实现中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到基于微信小程序的大用户心理咨询系统设计与实现的首页中;否则将会提示相应错误信息,用户登录界面如下图4-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.1.4心理咨询详情界面
当用户点击“心理咨询”这一菜单按钮,会显示管理员在后台发布的所有的心理咨询,可以查看详情,进行咨询预约、收藏、点赞、评论等,心理咨询详情展示页面如图4-4所示。
图4-4心理咨询详情界面图
4.1.5咨询预约界面
当用户在咨询预约信息详情界面想要进行咨询,点击下方的“咨询预约”按钮,就会跳转到咨询预约填写界面,点击“提交”按钮,咨询预约就完成了。咨询预约界面如下图4-5所示。
图4-5咨询预约界面图
4.2管理员功能模块
4.2.1系统用户界面
基于微信小程序的大用户心理咨询系统设计与实现中的管理人员在“系统用户”这一菜单是中可以对注册的普通用户,心理课程用户以及管理员进行管控。界面如下图4-6所示。
图4-6系统用户界面图
系统用户关键代码如下:
@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.2 心理知识管理界面
管理员点击“心理知识管理”菜单可以查看到系统中的所有心理知识,对已经存在的心理知识,管理员可以修改,也可以进行增删改查等操作,界面如下图4-7所示。
图4-7心理知识管理界面图
4.2.3公益中心管理界面
管理员点击“公益中心管理”会显示出所有的公益中心,支持通过标题进行查询,如果想要添加新的公益中心,点击“添加”按钮,输入相关信息,点击“提交”按钮就可以添加了,同时可以选择某一条公益中心,点击“删除”进行删除。界面如下图4-8所示。
图4-8公益中心管理界面图
公益中心管理关键代码如下:
@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.4 考试管理界面
进入后台首页工具栏点击“考试管理”这个按钮可以查看所有科目列表、试题库、错题记录、试卷列表等信息,可以进行详情增删改查等操作,界面如下图4-9所示。
图4-9试题库界面图
4.2.5FM管理界面
管理员点击“FM管理”菜单可以查看到系统中的所有FM信息,可以进行增删改查等操作。界面如下图4-10所示。
图4-10 FM管理界面图
5系统测试
5.1测试的目的
测试目的是为了验证系统的功能、性能和稳定性,以确保系统在实际应用中能够达到预期的要求。通过测试,可以发现潜在的问题和缺陷,并及时进行修复和改进。测试还可以评估系统的可靠性、安全性和用户体验,以提供一个高质量和可信赖的产品。此外,测试也有助于验证系统是否满足用户需求和预期,是否符合相应的标准和规范。总之,测试的目的是为了确保系统的质量和可靠性,从而为用户提供良好的使用体验和价值。
5.2系统部分测试
表5.1 用户注册测试用例
测试编号 | 测试内容 | 预期结果 |
TC-001 | 输入有效信息 | 注册成功,跳转到登录页面 |
TC-002 | 输入已存在账号 | 显示账号已存在的提示信息 |
TC-003 | 输入无效信息 | 显示注册失败的提示信息,要求重新输入有效信息 |
表5.2 用户登录测试用例
测试编号 | 测试内容 | 预期结果 |
TC-004 | 输入正确的账号密码 | 登录成功,跳转到个人主页 |
TC-005 | 输入错误的账号密码 | 显示登录失败的提示信息,要求重新输入正确的账号密码 |
表5.3 修改密码测试用例
测试编号 | 测试内容 | 预期结果 |
TC-006 | 输入有效密码 | 密码修改成功,显示修改成功的提示信息 |
TC-007 | 输入无效密码 | 显示密码无效的提示信息,要求重新输入有效密码 |
TC-008 | 输入错误原密码 | 显示原密码错误的提示信息,要求重新输入正确原密码 |
表5.4 查看心理课程测试用例
测试编号 | 测试内容 | 预期结果 |
TC-011 | 点击查看食谱 | 显示当日的心理课程 |
TC-012 | 选择其他日期 | 显示所选日期的心理课程 |
TC-013 | 无可用食谱信息 | 显示暂无食谱的提示信息,提醒用户重新选择日期 |
表5.5 查看心理咨询测试用例
测试编号 | 测试内容 | 预期结果 |
TC-014 | 点击查看心理咨询 | 显示心理咨询页面,展示相关的文章、新闻等内容 |
TC-015 | 选择其他分类 | 显示所选分类下的相关文章、新闻等内容 |
TC-016 | 无可用心理咨询信息 | 显示暂无心理咨询的提示信息,提醒用户重新选择分类 |
5.3系统测试结果
综上所述,基于微信小程序的大用户心理咨询系统设计与实现在功能测试中表现良好,通过了所有测试用例。系统提供的用户注册、登录、修改密码、查看心理课程和查看心理咨询等主要功能都能正常运行,并能够给出预期的提示信息和结果。然而,为了确保系统的全面稳定性和质量,仍建议进行更多的综合性测试,包括性能测试、安全性测试和用户体验测试等,以进一步验证和改进系统的功能和性能。
结论
基于微信小程序的大学生心理咨询系统的设计与实现,为大学生提供了一个便捷、高效且专业的心理咨询平台。通过系统的运行和实际应用,我们验证了其可行性和有效性。该系统不仅满足了大学生对心理咨询的迫切需求,提高了他们的心理健康水平,同时也为心理咨询师提供了一个新的工作平台,拓宽了服务渠道。
在设计和实现过程中,我们注重用户体验,优化界面设计,增强功能实用性,确保用户能够轻松、快速地获取所需的心理咨询服务。此外,我们也关注数据安全和隐私保护,采取了一系列措施来确保用户信息的安全性和保密性。
尽管该系统已经取得了一定的成果,但仍有改进和完善的空间。未来,我们将继续优化系统性能,提升用户体验,同时加强心理咨询服务的专业性和质量,以更好地满足大学生的需求。此外,我们还将探索引入更多先进的技术和理念,如人工智能、大数据分析等,以进一步提升系统的智能化和个性化水平。
综上所述,基于微信小程序的大学生心理咨询系统设计与实现是一项具有重要意义的研究工作。通过该系统,我们能够更好地关注大学生的心理健康问题,为他们提供及时、有效的心理支持,助力他们健康成长。
参考文献
[1]周辉奎,章立. 基于微信小程序的移动学习平台的研究与设计 [J]. 网络安全和信息化, 2024, (04): 103-105.
[2]高敏钦. 基于微信小程序的智慧校园平台设计 [J]. 河北软件职业技术学院学报, 2024, 26 (01): 12-15. DOI:10.13314/j.cnki.jhbsi.2024.01.017.
[3]陈佳乐. 基于微信小程序的图书馆座位预约系统 [J]. 电脑编程技巧与维护, 2024, (03): 63-65+75. DOI:10.16184/j.cnki.comprg.2024.03.021.
[4]刘慧玲,谭定英,陈平平. 基于SpringBoot和Vue.js的大学生团队管理系统的设计 [J]. 电脑编程技巧与维护, 2024, (03): 120-122. DOI:10.16184/j.cnki.comprg.2024.03.039.
[5]戴峰. 基于微信小程序的多选题题库设计与开发 [J]. 现代信息科技, 2024, 8 (05): 45-48+53. DOI:10.19850/j.cnki.2096-4706.2024.05.010.
[6]徐少军,李宗哲,梅杰,等. 基于Springboot+Vue框架的质量检验监督管理系统研发 [J]. 纺织标准与质量, 2024, (01): 11-14+21.
[7]李鹏,高燕,王思源. 基于微信小程序的智能语音家居系统 [J]. 微型电脑应用, 2024, 40 (02): 225-228.
[8]孙梦菲,周天源,王天澍. 基于微信小程序的校园社团管理系统设计与实现 [J]. 现代信息科技, 2024, 8 (03): 40-44. DOI:10.19850/j.cnki.2096-4706.2024.03.009.
[9]Xiao J ,Zhou H ,Lei Q , et al. Attention-Mechanism-Based Face Feature Extraction Model for WeChat Applet on Mobile Devices [J]. Electronics, 2024, 13 (1):
[10]Wu J ,Chen N ,Xia H , et al. Design and application of a game‐based WeChat mini‐program for screening cognitive impairments in Chinese older adults [J]. Alzheimer's & Dementia, 2023, 19 (S11):
[11]何畅,谯炜骅,马跃. 在校大学生在线心理咨询系统设计 [J]. 现代信息科技, 2023, 7 (21): 36-39+43. DOI:10.19850/j.cnki.2096-4706.2023.21.009.
[12]Wang R ,Zhao Z ,Chen S . Research on the Application of Wechat Mini Program in Rural Revitalization – Taking Yanping Jukou Township in Nanping as An Example [J]. Journal of Social Science Humanities and Literature, 2023, 6 (5):
[13]易云恒. 基于深度学习的心理咨询系统的研究与开发[D]. 广西民族大学, 2023. DOI:10.27035/d.cnki.ggxmc.2023.000293.
[14]刘浪,张媛. 基于深度学习的大学生心理健康咨询系统设计 [J]. 自动化与仪器仪表, 2022, (12): 148-152. DOI:10.14016/j.cnki.1001-9227.2022.12.148.
[15]Yang Y . Design and Implementation of Student Information Management System Based on Springboot [J]. Advances in Computer, Signals and Systems, 2022, 6 (6):
[16]Hejing W . Commerce Middle Office Management System Based on Springboot [J]. International Journal of Advanced Network, Monitoring and Controls, 2022, 7 (2): 32-45.
致 谢
在基于微信小程序的大学生心理咨询系统设计与实现的过程中,我深感众多人的帮助与支持是我能够顺利完成这一项目的关键。在此,我衷心地向所有给予我帮助的人表示深深的感谢。
首先,我要感谢我的导师,是您的悉心指导和严谨要求,让我在设计和实现过程中不断追求卓越。您不仅为我提供了宝贵的学术资源和实践机会,还在我遇到困难时给予我耐心的解答和鼓励,使我在项目中不断成长和进步。
其次,我要感谢我的团队成员们。是你们的团结协作和无私奉献,让这个项目得以顺利完成。我们共同面对挑战,分享成功与喜悦,每一次的讨论和交流都使我受益匪浅。
此外,我还要感谢学校提供的学习平台和资源支持,为我创造了良好的学习和研究环境。同时,也要感谢所有参与系统测试的用户,是你们的反馈和建议让我们的系统更加完善。
最后,我要感谢我的家人和朋友,是你们的默默支持和关心,让我在面对困难和挑战时始终保持坚定和乐观。你们的爱是我前进的动力,也是我不断追求的目标。
在此,我再次向所有给予我帮助和支持的人表示衷心的感谢!我将继续努力,不辜负大家的期望,为社会做出更大的贡献。