1 绪论
1.1 研究背景
随着社会竞争加剧与生活节奏加快,个体面临的心理压力源日益增多,焦虑、抑郁等情绪障碍发生率呈上升趋势。心理健康状况不仅关乎个人生活质量,更直接影响社会和谐稳定。传统心理服务模式主要依赖线下咨询,存在服务半径有限、预约周期长、隐私顾虑大以及资源分布不均等局限,导致许多有需求的人群难以及时获得专业支持。现有部分信息化平台功能较为单一,多侧重于知识展示,缺乏对患者症状的持续追踪、医患间的深度互动以及测评数据的系统化管理,难以形成完整的心理服务闭环。在信息技术快速发展的背景下,利用成熟的Web开发技术构建集测评、记录、咨询、资源管理于一体的综合管理平台,成为突破传统服务瓶颈的有效途径。通过整合多方资源,优化服务流程,能够为不同群体提供更加便捷、私密且连续的心理支持,弥补线下服务的不足,推动心理健康服务工作向更高效、规范的方向发展。
1.2 研究意义
构建心理健康管理系统对于优化心理服务资源配置、提升干预效率具有深远影响。系统通过整合测评、记录与咨询功能,打破了传统服务在时间与空间上的限制,使求助者能够随时随地获取专业支持,有效降低了寻求帮助的门槛。电子化的档案管理方式确保了用户数据的连续性与完整性,帮助专业人员全面掌握个体心理变化轨迹,从而制定更具针对性的治疗方案。平台建立的即时沟通机制缩短了医患响应时间,让潜在危机得以被尽早发现和处理,减少了严重心理事件的发生概率。丰富的资源共享模块促进了科学知识的普及,有助于公众树立正确心理健康观念,增强自我调节能力。这种模式缓解了线下专业力量不足的矛盾,让有限的人力资源覆盖更广泛的群体,推动心理服务工作向规范化、常态化方向发展,为营造健康和谐的社会环境提供了坚实的技术保障与实践路径。
1.3 国内外研究现状
1.3.1 国内研究现状
国内心理健康服务领域近年来发展迅速,众多机构与高校尝试利用Web技术构建在线服务平台。早期系统多采用单体架构,功能集中于心理知识展示与简单的留言板互动,难以支撑高并发访问与复杂业务逻辑,且前后端代码耦合度高,导致后期维护与功能扩展困难。随着Spring Boot框架的普及,部分新建平台开始转向微服务或模块化设计,提升了后端接口的稳定性与开发效率,但在用户体验层面,仍大量依赖传统服务端渲染技术,页面跳转频繁,交互流畅度不足。Vue.js等现代前端框架的应用逐渐增多,实现了组件化开发与局部刷新,显著改善了操作体验,然而将Spring Boot与Vue深度结合并应用于全流程心理管理的案例相对较少。现有成熟系统往往侧重单一环节,如仅专注于在线测评或视频咨询,缺乏将档案建立、症状追踪、医生诊疗、资源管理及后台监管融为一体的综合性解决方案。部分平台虽具备多项功能,但模块间数据孤岛现象明显,信息流转不畅,难以形成服务闭环。此外,针对管理员、医生与患者三方角色的权限精细化控制与业务协同机制尚不完善,制约了服务效率的进一步提升。当前研究正逐步从单纯的功能堆砌转向架构优化与业务流程重塑,力求通过技术融合解决数据一致性、系统可扩展性及用户交互体验等关键问题,以满足日益增长的专业化心理服务需求。
1.3.2 国外研究现状
欧美等发达国家在心理健康服务信息化领域起步较早,已形成较为成熟的在线支持体系。早期平台多聚焦于认知行为疗法的自助式应用与心理教育资源库建设,随后逐渐演变为涵盖视频咨询、同伴互助及危机干预的综合服务网络。在技术架构层面,国外研究普遍倾向于采用微服务架构与前后端分离模式,利用Spring生态体系构建高可用后端服务,并结合React或Vue等现代前端框架打造流畅的用户交互界面,以应对大规模用户并发访问需求。现有系统特别注重数据隐私保护,严格遵循HIPAA等法规标准,在数据传输加密、访问控制及匿名化处理方面建立了严密机制。服务内容上,不仅提供标准化的心理量表测评,还强调长周期的情绪追踪与个性化反馈,通过结构化数据记录帮助专业人员精准把握用户状态。部分平台已实现与线下医疗机构的信息互通,形成了线上线下联动的服务闭环。尽管功能完善且技术规范,但针对特定文化背景下的本地化适配以及多角色协同管理的深度整合仍有优化空间,相关研究正致力于通过架构迭代与流程再造,进一步提升系统的可访问性、安全性及服务连续性,以满足多元化群体的心理支持需求。
2 相关技术介绍
2.1 Java语言
Java是一种广泛应用于企业级软件开发的面向对象编程语言,具有平台无关性、安全性高、稳定性强等优点1。通过JVM(Java虚拟机)机制,Java实现了"一次编写,到处运行"的特性,极大地提升了代码的可移植性和复用性,其丰富的类库支持和成熟的生态系统,使得Java在Web应用、分布式系统及大型后台服务开发中占据主导地位2。在系统中,Java作为主要开发语言,能够实现高效的服务器端逻辑处理和数据管理,为系统的功能实现提供了坚实的基础,同时Java的多线程和网络编程能力有助于系统的高并发处理,为多个用户提供服务。
2.2 SpringBoot框架
SpringBoot是一个开源框架,可以快速构建基于Spring的应用程序,通过简化配置和提供开箱即用的特性,极大地提升了开发效率3。SpringBoot框架安排了一系列默认的配置,支持开展自动化配置,减少了应用启动的复杂性,并集成嵌入式Web服务器,让开发者可以不依赖外部独立运行Java应用,无需借助外部容器4。SpringBoot框架的应用为系统的后端开发提供了强大的支持。开发者使用SpringBoot框架可以轻松创建RESTful风格的API,与前端进行数据交互,支持各种业务操作。数据访问层使用Spring Data JPA简单集成数据库,与MySQL进行操作,实现数据的持久化。安全管理方面利用Spring Security提供用户身份验证和授权功能,确保数据访问的安全性。
2.3 MySQL数据库
MySQL是一款流行的开源关系型数据库管理系统,因其性能稳定、易于使用、社区活跃而被广泛应用于各类Web应用系统中,支持标准SQL语句,即以结构化查询语言为基础,通过表格的形式存储数据,具备良好的事务处理能力和多用户并发访问能力5。同时MySQL占用资源较少,适合中小型项目的数据库需求。本系统采用MySQL作为核心数据存储工具,负责管理系统中的用户信息、业务数据和操作日志等关键信息,通过合理的数据库设计和优化,保障数据的安全性和一致性,并且MySQL支持对多用户的高并发操作,能够快速处理系统中的各种数据查询需求,为后端提供所需的数据服务6。
2.4 Vue框架
Vue 是一款轻量级、渐进式的前端JavaScript框架,专注于构建用户界面,具有学习成本低、开发效率高、组件化设计良好等特点,能够快速实现响应式数据绑定和动态页面交互7。Vue支持模块化开发,并与现代前端构建工具,如Webpack、Vite,兼容良好,适用于开发高性能、易维护的单页面应用(SPA)。在系统中Vue框架被用于实现系统的前端界面,提供友好的交互体验,提升系统的交互体验与开发效率8。
2.5 B/S模式
B/S(Browser/Server)架构是一种基于浏览器的三层体系结构,用户通过浏览器即可访问服务器端的应用程序和数据资源,无需安装额外客户端,具有部署简单、维护方便、跨平台兼容性强等优势9。B/S架构降低了用户的客户端配置要求,用户只需要使用浏览器即可访问应用。该架构下,业务逻辑主要集中在服务器端处理,前端仅负责展示与交互,有利于提升系统的可扩展性和安全性10。本系统基于B/S架构进行设计与开发,使得系统能够在不同设备和操作系统上便捷访问,增强系统的可用性与灵活性。
3 系统分析
3.1 系统可行性
3.1.1 技术可行性
系统采用当前主流的B/S架构设计,后端基于Spring Boot框架结合Java语言进行开发,前端使用Vue.js实现响应式界面交互,数据库选用MySQL进行数据存储与管理。系统所选用的技术成熟稳定、社区支持广泛,且具备良好的可扩展性和安全性,能够满足系统的高可用性需求。同时系统采用前后端分离的设计模式有利于后期维护与扩展。因此,在现有技术条件下,系统的开发与部署是完全可行的。
3.1.2 经济可行性
从经济投入角度来看,系统主要依赖于开源技术和通用服务器资源,所选择的Java、SpringBoot及MySQL等均为免费开源技术,开发成本相对较低。同时,该系统上线后将有效提升系统管理的效率,减少人工操作和重复劳动,从而降低长期运营成本。另外在吸引和留存大量用户后,系统可借助广告或其他增值服务实现有效创收,以此来支撑系统后期维护和运营升级,所以系统具备一定的投资回报率和良好的经济可持续性。
3.1.3 操作可行性
系统具备较强的易用性和实用性,系统面向不同角色用户设计了简洁直观的操作界面,功能模块划分清晰,易于用户理解和上手操作使用。系统为用户提供了必要的操作提示和帮助文档,以降低操作学习门槛,便于用户快速完成操作。系统后台管理界面也具备良好的可视化配置功能,便于管理人员进行日常维护和数据监控。
3.2 系统功能需求
根据用户在系统中的操作权限以及功能需求的不同,本系统在设计过程中,将用户角色划分为三大主要类别,分别为患者用户、医生用户以及管理员。这三种角色在系统中分别对应不同的功能模块,并拥有相应的操作权限,以实现对各类业务流程的合理分配与管理。针对每种角色的具体功能职责,其详细的功能模块划分如下所述。
3.2.1 患者用户功能分析
首页:个性化推荐文章/医生,提供测评、预约、记录的快捷入口。
心理测评:在线完成各类量表测试,即时查看报告与历史对比。
平台公告/知识/资源:阅读官方通知,学习心理科普文章与舒缓视频。
智能问答:7x24小时AI情感陪伴,获取初步疏导与就医引导。
我的账户/个人中心:查看健康指数趋势,管理个人资料与安全设置。
患者信息:查看与维护个人电子心理档案。
症状记录:每日打卡记录情绪与睡眠,生成可视化心情轨迹图。
治疗建议:接收并查看医生的诊疗指导,反馈方案执行情况。
交流信息:向医生发送私信咨询,在社区匿名发帖互动。
收藏/点赞记录:回顾收藏的优质内容与点赞过的互助信息。
3.2.2 医生用户功能分析
首页:展示待办咨询、预约日程及接诊数据统计。
平台公告/知识/资源:浏览最新通知,查阅科普文献与共享资源库。
我的账户/个人中心:编辑个人简介与擅长领域,查看执业资质与服务评价。
患者信息:管理名下患者列表,查看完整电子病历与历史档案。
症状记录:实时查阅患者心情日记,分析症状变化趋势曲线。
治疗建议:在线开具个性化诊疗方案,查看历史建议及患者反馈。
心理资源:上传个人原创科普内容,管理已发布的资源状态。
交流信息:回复患者私信咨询,参与社区专业话题互动。
心理测评:查看患者测评详情报告,添加人工专业解读意见。
收藏/点赞/评论:管理个人收藏夹,回复患者评论,查看互动记录。
3.2.3 管理员功能分析
后台首页:数据概览(用户数、咨询量等统计图表)与快捷入口。
系统用户:管理医生与患者账号,支持启用/禁用、重置密码及角色分配。
患者信息管理:维护患者基础档案,支持信息脱敏查看与批量导入导出。
症状记录管理:监控全平台症状上报,对高危记录进行预警标记。
治疗建议管理:抽查医生建议合规性,维护通用治疗方案模板。
心理资源管理:审核上传的文章/视频资源,管理资源分类标签。
交流信息管理:监管社区留言,处理违规内容与用户举报。
系统管理(轮播图):配置首页轮播图片、跳转链接及展示顺序。
平台公告管理:发布、编辑、置顶或撤回全站通知。
资源管理:维护心理知识库目录,配置测评量表(题目、评分规则)。
权限管理:基于RBAC模型配置角色菜单与按钮操作权限。
操作日志:审计全员登录IP、操作时间及增删改查行为。
3.3 非功能性需求
在系统的开发与设计过程中,除了满足基本的功能性需求外,还需要从多个维度考虑系统的非功能性要求,以保证系统的整体质量和用户体验。下面将从可靠性、可用性、性能、安全性等方面进行详细分析。
可靠性:系统应具备较高的稳定性和容错能力,在面对高并发访问或异常操作时能够保持正常运行。通过合理的异常处理机制和日志记录功能,确保系统在发生错误时可以快速定位问题并恢复服务,从而保障用户操作的连续性和数据的一致性。
可用性:系统界面应设计简洁、直观,操作流程清晰,便于不同层次的用户理解和使用。对于不同角色用户,应提供相应的引导提示和帮助信息以提升用户的操作效率和满意度。
性能需求:系统需支持多用户并发访问,并能在合理的时间内响应用户的请求。在典型负载条件下,页面加载时间应控制在合理范围内,关键业务操作的响应延迟不宜过高。
安全性:系统需具备完善的身份认证和权限控制机制,防止未经授权的访问和敏感信息泄露,并应对用户密码进行加密存储,对关键操作进行审计日志记录,确保系统具备一定的抗攻击能力和数据保护能力。
3.4 用户用例模型
3.4.1 患者用户用例图
心理健康管理系统的患者用户主要拥有首页、心理测评、平台公告、心理知识、智能问答、心理资源、我的账户、个人中心(个人首页、患者信息、症状记录、治疗建议、交流信息、收藏记录、点赞记录)等功能。患者用户角色用例图如图3-1所示。

图3-1患者用户用例图
3.4.2 医生用户用例图
心理健康管理系统的医生用户主要包含了首页、平台公告、心理知识、心理资源、我的账户、个人中心(个人首页、患者信息、症状记录、治疗建议、心理资源、交流信息、心理测评、收藏记录、点赞记录、评论管理)等功能,医生用户角色用例图如如图3-2所示。

图3-2医生用户用例图
3.4.3 管理员用例图
心理健康管理系统的管理员主要涵盖了后台首页、系统用户、患者信息管理、症状记录管理、治疗建议管理、心理资源管理、交流信息管理、系统管理(轮播图)、平台公告管理、资源管理(心理知识、知识分类、心理测评)、权限管理、操作日志等功能,管理员角色用例图如如图3-3所示。

图3-3管理员用例图
3.5 系统流程分析
3.5.1 注册登录流程图
用户注册登录模块主要是为了方便用户和管理员能够安全地访问系统并管理自己的信息,用户根据提示输入注册信息进行注册操作以获得个人账号,在登录界面输入账号密码等信息进行系统登录,用户注册登录流程如下图所示。

图3-4系统操作流程图
3.5.2 数据添加流程图
用户成功登录系统后,即可进行添加数据操作。添加的数据具有一个由系统自动生成的特定编号,用户可根据提示输入其余信息并提交,系统会对提交信息进行验证,验证通过则显示添加数据成功。数据添加流程如下图所示。

图3-5 数据添加流程图
3.5.3 数据修改流程图
用户成功登录系统后,可进行修改数据操作,流程与添加数据操作相似,数据修改流程如下图所示。

图3-6数据修改流程图
3.5.4 数据删除流程图
当系统里面存在一些无效或过期的数据信息,系统支持相关的管理人员对这些数据进行删除操作,数据修改流程如下图所示。

图3-7 数据删除流程图
3.5.5 数据搜索流程图
用户可以通过输入关键字方式在系统大量的数据中检索所需的信息,在搜索框输入关键字确认查询后,系统会自动检索数据库并显示特定的数据信息,数据搜索流程如下图所示。

图3-8数据搜索流程图
4 系统设计
4.1 系统架构设计
本系统在架构设计上采用了经典的三层体系结构,分别为表现层、业务逻辑层以及数据访问层,并通过集群化管理方式实现高效的数据处理与并发访问。其中表现层主要承担用户交互功能,负责信息的展示与用户输入的接收,将用户操作传达给业务逻辑层处理,并最终将处理的结果反馈给用户,采用JavaScript等技术进行构建简洁和直观前端页面,以提升界面响应速度与用户体验。业务逻辑层作为系统的核心处理单元,主要负责各类核心业务规则的封装与执行,按需与数据访问层交互,以便获取或更新所需的数据,该层基于SpringBoot框架进行开发,借助其良好的模块化设计和自动化配置能力来保障系统业务流程的高效运行与稳定性。数据访问层则专注于与数据库之间的交互操作,包括数据的存储、查询与更新等功能,系统中采用JPA或MyBatis等持久层框架来实现对MySQL数据库的访问,确保数据操作的准确性、一致性与安全性。系统架构图如图4-1所示,展示了各层次之间的功能划分与数据流向关系。

图4-1系统架构图
4.2 功能模块设计
整个心理健康管理系统由多个功能模块组成,通过对用户需求进行分析,该系统主要划分为患者用户、医生用户与管理员三大核心模块。每个模块下又包含了若干子功能模块,系统将通过多角色协作来实现系统的各项职能。不同角色对应的具体功能模块如图4-2所示,心理健康管理系统功能设计能够确保各角色能够负责其特定职责。

图4-2系统功能结构图
4.3 数据库设计
4.3.1 概念结构设计
通过提供清晰的系统总E-R图,可以使其他用户快速理解和分析复杂的系统结构,更加轻松地掌握了解系统的整体架构和各功能组件之间的联系。根据对系统中各类实体及其属性的分析,系统总体E-R图如图4-3所示,以直观地展示各实体之间的关系。

图4-3 系统总体ER图
4.3.2 物理结构设计
依据前一节对系统的整体E-R关系图的分析,为了满足系统功能需求,需要创建多个数据表。下面将着重介绍几个核心数据库表的设计结构,详细阐述这些关键数据库表的设计细节,包括但不限于字段定义、数据类型及其相互间的关系,从而为系统的稳定运行提供坚实的基础。
表 4-1-access_token(登陆访问时长)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | token_id | int | 是 | 是 | 临时访问牌ID | |
| 2 | token | varchar | 64 | 否 | 否 | 临时访问牌 |
| 3 | info | text | 65535 | 否 | 否 | 信息 |
| 4 | maxage | int | 是 | 否 | 最大寿命:默认2小时 | |
| 5 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 6 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 7 | user_id | int | 是 | 否 | 用户编号 |
表 4-2-article(文章)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | article_id | mediumint | 是 | 是 | 文章id | |
| 2 | title | varchar | 125 | 是 | 是 | 标题 |
| 3 | type | varchar | 64 | 是 | 否 | 文章分类 |
| 4 | hits | int | 是 | 否 | 点击数 | |
| 5 | praise_len | int | 是 | 否 | 点赞数 | |
| 6 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 7 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 8 | source | varchar | 255 | 否 | 否 | 来源 |
| 9 | url | varchar | 255 | 否 | 否 | 来源地址 |
| 10 | tag | varchar | 255 | 否 | 否 | 标签 |
| 11 | content | longtext | 4294967295 | 否 | 否 | 正文 |
| 12 | img | varchar | 255 | 否 | 否 | 封面图 |
| 13 | description | text | 65535 | 否 | 否 | 文章描述 |
表 4-3-article_type(文章分类)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | type_id | smallint | 是 | 是 | 分类ID | |
| 2 | display | smallint | 是 | 否 | 显示顺序 | |
| 3 | name | varchar | 16 | 是 | 否 | 分类名称 |
| 4 | father_id | smallint | 是 | 否 | 上级分类ID | |
| 5 | description | varchar | 255 | 否 | 否 | 描述 |
| 6 | icon | text | 65535 | 否 | 否 | 分类图标 |
| 7 | url | varchar | 255 | 否 | 否 | 外链地址 |
| 8 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 9 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-4-auth(用户权限管理)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | auth_id | int | 是 | 是 | 授权ID | |
| 2 | user_group | varchar | 64 | 否 | 否 | 用户组 |
| 3 | mod_name | varchar | 64 | 否 | 否 | 模块名 |
| 4 | table_name | varchar | 64 | 否 | 否 | 表名 |
| 5 | page_title | varchar | 255 | 否 | 否 | 页面标题 |
| 6 | path | varchar | 255 | 否 | 否 | 路由路径 |
| 7 | parent | varchar | 64 | 否 | 否 | 父级菜单 |
| 8 | parent_sort | int | 是 | 否 | 父级菜单排序 | |
| 9 | position | varchar | 32 | 否 | 否 | 位置 |
| 10 | mode | varchar | 32 | 是 | 否 | 跳转方式 |
| 11 | add | tinyint | 是 | 否 | 是否可增加 | |
| 12 | del | tinyint | 是 | 否 | 是否可删除 | |
| 13 | set | tinyint | 是 | 否 | 是否可修改 | |
| 14 | get | tinyint | 是 | 否 | 是否可查看 | |
| 15 | field_add | text | 65535 | 否 | 否 | 添加字段 |
| 16 | field_set | text | 65535 | 否 | 否 | 修改字段 |
| 17 | field_get | text | 65535 | 否 | 否 | 查询字段 |
| 18 | table_nav_name | varchar | 500 | 否 | 否 | 跨表导航名称 |
| 19 | table_nav | varchar | 500 | 否 | 否 | 跨表导航 |
| 20 | option | text | 65535 | 否 | 否 | 配置 |
| 21 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 22 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-5-code_token(验证码)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | code_token_id | int | 是 | 是 | 验证码ID | |
| 2 | token | varchar | 255 | 否 | 否 | 令牌 |
| 3 | code | varchar | 255 | 否 | 否 | 验证码 |
| 4 | expire_time | timestamp | 是 | 否 | 失效时间 | |
| 5 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 6 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-6-collect(收藏)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | collect_id | int | 是 | 是 | 收藏ID | |
| 2 | user_id | int | 是 | 是 | 收藏人ID | |
| 3 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 4 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
| 5 | source_id | int | 是 | 否 | 来源ID | |
| 6 | title | varchar | 255 | 否 | 否 | 标题 |
| 7 | img | varchar | 255 | 否 | 否 | 封面 |
| 8 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 9 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-7-comment(评论)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | comment_id | int | 是 | 是 | 评论ID | |
| 2 | user_id | int | 是 | 是 | 评论人ID | |
| 3 | reply_to_id | int | 是 | 否 | 回复评论ID | |
| 4 | content | longtext | 4294967295 | 否 | 否 | 内容 |
| 5 | nickname | varchar | 255 | 否 | 否 | 昵称 |
| 6 | avatar | varchar | 255 | 否 | 否 | 头像地址 |
| 7 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 8 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 9 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 10 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
| 11 | source_id | int | 是 | 否 | 来源ID | |
| 12 | hidden | tinyint | 否 | 否 | 是否隐藏 | |
| 13 | sticky | tinyint | 否 | 否 | 是否置顶 |
表 4-8-customer_chat_group(在线沟通群组表)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | customer_chat_group_id | int | 是 | 是 | 沟通群组ID | |
| 2 | member | text | 65535 | 是 | 否 | 成员信息 |
| 3 | read_state | tinyint | 是 | 否 | 已读状态,0=未读,1=已读 | |
| 4 | last_read_time | timestamp | 否 | 否 | 最后阅读时间 | |
| 5 | unread_count | int | 否 | 否 | 未读消息数 | |
| 6 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 7 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-9-customer_chat_log(在线沟通记录表)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | customer_chat_log_id | int | 是 | 是 | 沟通记录ID | |
| 2 | customer_chat_id | int | 是 | 是 | 沟通群组ID | |
| 3 | content | text | 65535 | 是 | 否 | 沟通内容 |
| 4 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 5 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-10-doctor_user(医生用户)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | doctor_user_id | int | 是 | 是 | 医生用户ID | |
| 2 | doctors_job_number | varchar | 64 | 是 | 是 | 医生工号 |
| 3 | doctors_name | varchar | 64 | 否 | 否 | 医生姓名 |
| 4 | physician_qualification | varchar | 255 | 否 | 否 | 医师资质 |
| 5 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
| 6 | user_id | int | 是 | 否 | 用户ID | |
| 7 | create_time | datetime | 是 | 否 | 创建时间 | |
| 8 | create_by | int | 是 | 否 | 创建用户ID | |
| 9 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-11-evaluation(测评问卷)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | exam_id | mediumint | 是 | 是 | 问卷id | |
| 2 | name | varchar | 32 | 是 | 否 | 问卷名称 |
| 3 | duration | int | 否 | 否 | 答题时长 | |
| 4 | status | varchar | 10 | 否 | 否 | 状态:启用、禁用 |
| 5 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 6 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 7 | evaluation_result | text | 65535 | 否 | 否 | 测评结果 |
| 8 | open_start | datetime | 否 | 否 | 开放开始时间 | |
| 9 | open_end | datetime | 否 | 否 | 开放结束时间 |
表 4-12-evaluation_question(题目)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | exam_question_id | mediumint | 是 | 是 | 题目ID | |
| 2 | type | varchar | 20 | 否 | 否 | 类型 |
| 3 | title | varchar | 255 | 否 | 否 | 题目 |
| 4 | question_item | varchar | 500 | 否 | 否 | 选项 |
| 5 | question_order | int | 否 | 否 | 排序 | |
| 6 | exam_id | mediumint | 是 | 是 | 所属问卷 | |
| 7 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 8 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-13-evaluation_user_answer(用户答题)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | user_answer_id | mediumint | 是 | 是 | 用户答题ID | |
| 2 | user_id | mediumint | 是 | 否 | 用户ID | |
| 3 | exam_id | mediumint | 是 | 是 | 考试ID | |
| 4 | score | double | 否 | 否 | 分数 | |
| 5 | answers | text | 65535 | 否 | 否 | 答案 |
| 6 | comment_state | tinyint | 否 | 否 | 点评状态 | |
| 7 | nickname | varchar | 255 | 否 | 否 | 提交人 |
| 8 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 9 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 10 | comment_desc | varchar | 255 | 否 | 否 | 评语 |
表 4-14-exchange_of_information(交流信息)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | exchange_of_information_id | int | 是 | 是 | 交流信息ID | |
| 2 | doctor_user | int | 否 | 否 | 医生用户 | |
| 3 | doctors_name | varchar | 64 | 否 | 否 | 医生姓名 |
| 4 | areas_of_expertise | varchar | 64 | 否 | 否 | 擅长领域 |
| 5 | patient_user | int | 否 | 否 | 患者用户 | |
| 6 | patient_name | varchar | 64 | 否 | 否 | 患者姓名 |
| 7 | communication_title | varchar | 64 | 否 | 否 | 交流标题 |
| 8 | patient_vuser_ideo | varchar | 255 | 否 | 否 | 患者视频 |
| 9 | number_of_exchanges | varchar | 64 | 是 | 否 | 交流数量 |
| 10 | communication_content | text | 65535 | 否 | 否 | 交流内容 |
| 11 | the_doctor_replied | text | 65535 | 否 | 否 | 医生回复 |
| 12 | the_doctor_vuser_ideo | varchar | 255 | 否 | 否 | 医生视频 |
| 13 | create_time | datetime | 是 | 否 | 创建时间 | |
| 14 | create_by | int | 是 | 否 | 创建用户ID | |
| 15 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 16 | extra | text | 65535 | 否 | 否 | 额外信息 |
| 17 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 18 | source_id | int | 否 | 否 | 来源ID | |
| 19 | source_user_id | int | 否 | 否 | 来源用户 |
表 4-15-hits(用户点击)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | hits_id | int | 是 | 是 | 点赞ID | |
| 2 | user_id | int | 是 | 否 | 点赞人 | |
| 3 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 4 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 5 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 6 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
| 7 | source_id | int | 是 | 否 | 来源ID |
表 4-16-message_inform(通知记录)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | content | varchar | 255 | 否 | 否 | 内容 |
| 2 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 3 | inform_id | int | 是 | 是 | 通知ID | |
| 4 | state | varchar | 255 | 否 | 否 | 状态 |
| 5 | title | varchar | 255 | 否 | 否 | 标题 |
| 6 | type | varchar | 64 | 否 | 否 | 分类 |
| 7 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 8 | user_id | int | 是 | 是 | 通知人ID |
表 4-17-notice(公告)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | notice_id | mediumint | 是 | 是 | 公告ID | |
| 2 | title | varchar | 125 | 是 | 否 | 标题 |
| 3 | content | longtext | 4294967295 | 否 | 否 | 正文 |
| 4 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 5 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-18-operation_log(操作日志表)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | create_time | datetime | 是 | 否 | 创建时间 | |
| 2 | operation_log_id | int | 是 | 是 | 操作日志ID | |
| 3 | routes | varchar | 64 | 否 | 否 | 模块名称 |
| 4 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 5 | user_group | varchar | 64 | 否 | 否 | 用户角色 |
| 6 | user_name | varchar | 64 | 否 | 否 | 用户账号 |
表 4-19-patient_information(患者信息)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | patient_information_id | int | 是 | 是 | 患者信息ID | |
| 2 | patient_user | int | 否 | 否 | 患者用户 | |
| 3 | patient_name | varchar | 64 | 否 | 否 | 患者姓名 |
| 4 | patient_gender | varchar | 64 | 否 | 否 | 患者性别 |
| 5 | patient_age | varchar | 64 | 否 | 否 | 患者年龄 |
| 6 | mental_illness | varchar | 64 | 否 | 否 | 心理疾病 |
| 7 | family_introduction | text | 65535 | 否 | 否 | 家庭介绍 |
| 8 | growth_environment | text | 65535 | 否 | 否 | 成长环境 |
| 9 | personal_information | text | 65535 | 否 | 否 | 个人信息 |
| 10 | symptom_record_limit_times | int | 是 | 否 | 每日症状限制次数 | |
| 11 | create_time | datetime | 是 | 否 | 创建时间 | |
| 12 | create_by | int | 是 | 否 | 创建用户ID | |
| 13 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-20-patient_user(患者用户)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | create_by | int | 是 | 否 | 创建用户ID | |
| 2 | create_time | datetime | 是 | 否 | 创建时间 | |
| 3 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
| 4 | patient_gender | varchar | 64 | 否 | 否 | 患者性别 |
| 5 | patient_name | varchar | 64 | 否 | 否 | 患者姓名 |
| 6 | patient_user_id | int | 是 | 是 | 患者用户ID | |
| 7 | patients_phone | varchar | 16 | 是 | 是 | 患者手机 |
| 8 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 9 | user_activity | double | 否 | 否 | 用户活跃度 | |
| 10 | user_id | int | 是 | 否 | 用户ID |
表 4-21-praise(点赞)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | praise_id | int | 是 | 是 | 点赞ID | |
| 2 | user_id | int | 是 | 是 | 点赞人 | |
| 3 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 4 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 5 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 6 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
| 7 | source_id | int | 是 | 否 | 来源ID | |
| 8 | status | tinyint | 是 | 否 | 点赞状态:1为点赞,0已取消 | |
| 9 | img | varchar | 255 | 否 | 否 | |
| 10 | title | varchar | 255 | 否 | 否 |
表 4-22-psychological_resources(心理资源)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | areas_of_expertise | varchar | 64 | 否 | 否 | 擅长领域 |
| 2 | collect_len | int | 是 | 否 | 收藏数 | |
| 3 | comment_len | int | 是 | 否 | 评论数 | |
| 4 | create_by | int | 是 | 否 | 创建用户ID | |
| 5 | create_time | datetime | 是 | 否 | 创建时间 | |
| 6 | doctor_user | int | 否 | 否 | 医生用户 | |
| 7 | doctors_name | varchar | 64 | 否 | 否 | 医生姓名 |
| 8 | examine_state | varchar | 16 | 是 | 否 | 审核状态 |
| 9 | exchange_of_information_limit_times | int | 是 | 否 | 咨询交流限制次数 | |
| 10 | hits | int | 是 | 否 | 点击数 | |
| 11 | praise_len | int | 是 | 否 | 点赞数 | |
| 12 | psychological_resources_id | int | 是 | 是 | 心理资源ID | |
| 13 | release_date | date | 否 | 否 | 发布日期 | |
| 14 | resource_class_nameification | varchar | 64 | 否 | 否 | 资源分类 |
| 15 | resource_content | text | 65535 | 否 | 否 | 资源内容 |
| 16 | resource_cover | varchar | 255 | 否 | 否 | 资源封面 |
| 17 | resource_file | varchar | 255 | 否 | 否 | 资源文件 |
| 18 | resource_specificss | longtext | 4294967295 | 否 | 否 | 资源详情 |
| 19 | resource_title | varchar | 64 | 否 | 否 | 资源标题 |
| 20 | resource_vuser_ideo | varchar | 255 | 否 | 否 | 资源视频 |
| 21 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-23-slides(轮播图)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | slides_id | int | 是 | 是 | 轮播图ID | |
| 2 | title | varchar | 64 | 否 | 否 | 标题 |
| 3 | content | varchar | 255 | 否 | 否 | 内容 |
| 4 | url | varchar | 255 | 否 | 否 | 链接 |
| 5 | img | varchar | 255 | 否 | 否 | 轮播图 |
| 6 | hits | int | 是 | 否 | 点击量 | |
| 7 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 8 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-24-symptom_record(症状记录)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | create_by | int | 是 | 否 | 创建用户ID | |
| 2 | create_time | datetime | 是 | 否 | 创建时间 | |
| 3 | emotion_score | double | 否 | 否 | 情绪分数 | |
| 4 | emotional_change | text | 65535 | 否 | 否 | 情绪变化 |
| 5 | event_log | text | 65535 | 否 | 否 | 事件记录 |
| 6 | extra | text | 65535 | 否 | 否 | 额外信息 |
| 7 | mental_illness | varchar | 64 | 否 | 否 | 心理疾病 |
| 8 | patient_age | varchar | 64 | 否 | 否 | 患者年龄 |
| 9 | patient_gender | varchar | 64 | 否 | 否 | 患者性别 |
| 10 | patient_name | varchar | 64 | 否 | 否 | 患者姓名 |
| 11 | patient_user | int | 否 | 否 | 患者用户 | |
| 12 | record_date | date | 否 | 否 | 记录日期 | |
| 13 | source_id | int | 否 | 否 | 来源ID | |
| 14 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 15 | source_user_id | int | 否 | 否 | 来源用户 | |
| 16 | symptom_record | text | 65535 | 否 | 否 | 症状记录 |
| 17 | symptom_record_id | int | 是 | 是 | 症状记录ID | |
| 18 | treatment_recommendations_limit_times | int | 是 | 否 | 治疗建议限制次数 | |
| 19 | update_time | timestamp | 是 | 否 | 更新时间 |
表 4-25-treatment_recommendations(治疗建议)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | treatment_recommendations_id | int | 是 | 是 | 治疗建议ID | |
| 2 | patient_user | int | 否 | 否 | 患者用户 | |
| 3 | patient_name | varchar | 64 | 否 | 否 | 患者姓名 |
| 4 | patient_gender | varchar | 64 | 否 | 否 | 患者性别 |
| 5 | patient_age | varchar | 64 | 否 | 否 | 患者年龄 |
| 6 | mental_illness | varchar | 64 | 否 | 否 | 心理疾病 |
| 7 | record_date | date | 否 | 否 | 记录日期 | |
| 8 | emotion_score | double | 否 | 否 | 情绪分数 | |
| 9 | symptom_record | text | 65535 | 否 | 否 | 症状记录 |
| 10 | doctor_user | int | 否 | 否 | 医生用户 | |
| 11 | doctors_name | varchar | 64 | 否 | 否 | 医生姓名 |
| 12 | treatment_recommendations | text | 65535 | 否 | 否 | 治疗建议 |
| 13 | create_time | datetime | 是 | 否 | 创建时间 | |
| 14 | create_by | int | 是 | 否 | 创建用户ID | |
| 15 | update_time | timestamp | 是 | 否 | 更新时间 | |
| 16 | extra | text | 65535 | 否 | 否 | 额外信息 |
| 17 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 18 | source_id | int | 否 | 否 | 来源ID | |
| 19 | source_user_id | int | 否 | 否 | 来源用户 |
表 4-26-upload(文件上传)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | dir | varchar | 255 | 否 | 否 | 文件夹 |
| 2 | display | varchar | 255 | 否 | 否 | 显示顺序 |
| 3 | father_id | int | 否 | 否 | 父级ID | |
| 4 | file | varchar | 255 | 否 | 否 | 文件路径 |
| 5 | name | varchar | 64 | 否 | 否 | 文件名 |
| 6 | path | varchar | 255 | 否 | 否 | 访问路径 |
| 7 | type | varchar | 32 | 否 | 否 | 文件类型 |
| 8 | upload_id | int | 是 | 是 | 上传ID |
表 4-27-user(用户账户)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|----|-------------|-----------|-----|------|------|------------|------|-------|-------|
| 1 | user_id | int | | 是 | 是 | 用户ID |
| 2 | state | smallint | | 是 | 否 | 账户状态:(1可用 | 2异常 | 3已冻结 | 4已注销) |
| 3 | user_group | varchar | 32 | 否 | 否 | 所在用户组 |
| 4 | login_time | timestamp | | 否 | 否 | 上次登录时间 |
| 5 | phone | varchar | 11 | 否 | 否 | 手机号码 |
| 6 | phone_state | smallint | | 是 | 否 | 手机认证:(0未认证 | 1审核中 | 2已认证) |
| 7 | username | varchar | 16 | 是 | 否 | 用户名 |
| 8 | nickname | varchar | 16 | 否 | 否 | 昵称 |
| 9 | password | varchar | 64 | 是 | 否 | 密码 |
| 10 | email | varchar | 64 | 否 | 否 | 邮箱 |
| 11 | email_state | smallint | | 是 | 否 | 邮箱认证:(0未认证 | 1审核中 | 2已认证) |
| 12 | avatar | varchar | 255 | 否 | 否 | 头像地址 |
| 13 | open_id | varchar | 255 | 否 | 否 | 针对获取用户信息字段 |
| 14 | create_time | timestamp | | 是 | 否 | 创建时间 |
表 4-28-user_group(用户组)
| 编号 | 字段名 | 类型 | 长度 | 是否非空 | 是否主键 | 注释 |
|---|---|---|---|---|---|---|
| 1 | create_time | timestamp | 是 | 否 | 创建时间 | |
| 2 | description | varchar | 255 | 否 | 否 | 描述 |
| 3 | display | smallint | 是 | 否 | 显示顺序 | |
| 4 | group_id | mediumint | 是 | 是 | 用户组ID | |
| 5 | name | varchar | 16 | 是 | 否 | 名称 |
| 6 | register | smallint | 否 | 否 | 注册位置 | |
| 7 | source_field | varchar | 255 | 否 | 否 | 来源字段 |
| 8 | source_id | int | 是 | 否 | 来源ID | |
| 9 | source_table | varchar | 255 | 否 | 否 | 来源表 |
| 10 | update_time | timestamp | 是 | 否 | 更新时间 |
5 系统实现
5.1 患者用户功能实现
5.1.1 用户登录模块
用户在登录界面点击"登录"按钮后,需输入用户名、密码以及验证码以完成身份验证操作。系统在前端会自动对所输入信息进行有效性校验,同时检查该用户是否已通过后台审核流程。若审核通过且信息无误,则系统将允许用户成功登录并跳转至相应的功能界面;反之页面会弹出相应的提示信息,提醒用户重新输入或检查相关信息的正确性。登录界面如下图所示。

图5-1登录界面
5.1.2 前台首页模块
前台首页模块作为系统的重要入口,主要承担着信息展示与功能引导的核心功能。该模块不仅提供了系统搜索功能和主要功能模块的导航菜单,还集成了平台轮播图展示、最新动态资讯、热点信息推送以及推荐内容展示等多个板块,用户可以快速了解系统的主要服务内容,并便捷地进入相应功能界面进行操作。界面如下图所示。

图5-2首页界面
5.1.3 心理知识模块
用户在心理知识页面浏览心理知识。通过分类标签筛选心理知识类型,点击标题查看详细文章,页面提供评论区供用户交流心得。界面如下图所示。

图5-3心理知识界面
5.2.1 心理资源模块
用户进入心理资源页面,浏览心理资源的图片、名称、描述等基本信息。通过搜索栏输入关键词或筛选条件,快速查找心理资源。可以咨询交流、点赞、收藏、评论。界面如下图所示。

图5-4心理资源界面
5.2 医生用户功能实现
5.2.1 心理资源模块
医生用户可在心理资源模块查看由本人发布的资源列表,支持按标题、分类及审核状态进行筛选查询。界面清晰展示资源归属、擅长领域及发布时间等关键信息,并提供查看详情与查看评论的操作入口,便于对已发布内容进行跟踪与维护。界面如下图所示。

图5-5心理资源界面
5.2.2 心理测评模块
医生用户在心理测评模块可查看系统内置的量表列表,支持按名称或分类进行检索。界面展示量表简介、适用人群及常模信息,医生可查阅详细题目与评分规则,以便在诊疗过程中为患者选择合适的评估工具并解读测评结果。界面如下图所示。

图5-6心理测评界面
5.2.3 治疗建议模块
医生用户在治疗建议模块可按心理疾病类型或记录日期范围筛选患者信息,列表清晰展示患者姓名、性别、年龄及所患疾病等关键数据,支持分页浏览与操作入口,便于快速定位个案并制定或调整干预方案。界面如下图所示。

图5-7治疗建议界面
5.3 管理员功能实现
5.3.1 系统用户模块
管理员可管理所有用户信息,包括对患者用户、医生用户和管理员等用户信息增改删查操作,支持审核、封禁、权限设置等功能。界面如下图所示。

图5-8系统用户界面
5.3.2 患者信息管理模块
管理员点击"患者信息管理"这一菜单会显示患者信息列表和患者信息添加两个子菜单,点击"患者信息列表"可以查看患者信息详情和每日症状,可以进行查询、重置、删除等操作。点击"患者信息添加",管理员可以添加新的患者信息。界面如下图所示。

图5-9患者信息管理界面
5.3.3 症状记录管理模块
管理员点击"症状记录管理"这一菜单会显示症状记录列表这个子菜单,点击"症状记录列表"可以查看症状记录详情,可以进行查询、重置、删除等操作。界面如下图所示。

图5-10症状记录管理界面
5.3.4 系统管理模块
管理员点击"系统管理"菜单,可以对前台展示的轮播图进行设置。界面如下图所示。

图5-11系统管理界面
5.3.5 平台公告管理模块
管理员点击"平台公告管理"这个菜单,可以对系统中的平台公告进行管理,包括公告的增删改查等操作。界面如下图所示。

图5-12平台公告管理界面
5.3.6 资讯管理模块
资源管理模块涵盖心理知识库与测评管理两大核心功能。知识库支持富文本编辑与版本迭代,允许管理员自定义目录结构以构建清晰的知识体系。测评管理部分提供量表的上传、编辑及删除功能。界面如下图所示。

图5-13资讯管理界面
6 系统测试
6.1 测试目的方法
系统测试是软件开发过程中的关键环节,其主要目的是验证系统是否能够稳定、高效地运行,确保各功能模块符合设计需求,在不同应用场景下具备良好的兼容性与安全性。通过测试发现并修复潜在问题,保障系统在实际应用中的可靠性与用户体验。
在本系统的测试过程中,采用多种测试方法相结合的方式,以确保测试的全面性和有效性,包括功能测试、性能测试、兼容性测试、安全性测试多种手段,采用自动化工具与人工测试相结合的方式,全面评估系统的各项指标,确保系统在多用户并发、复杂网络环境下的稳定运行能力。下面将主要对功能测试用例进行分析说明。
6.2 功能测试用例
用户注册功能测试
在登录系统之前,用户必须先注册为系统用户拥有账户权限。需要用户在注册页面根据提示填写必要的注册信息来创建账户。用户注册功能测试用例设计如表6-1所示。
表6-1 用户注册功能测试表
| 测试目的 | 用例描述 | 预期结果 | 测试结果 |
|---|---|---|---|
| 验证用户成功注册 | 测试输入有效的用户名和密码,确认密码一致并点击注册 | 显示注册成功的提示信息 | 通过 |
| 验证用户名重复不能注册 | 测试输入已存在的用户名和输入有效的密码,确认密码一致并点击注册 | 显示用户名已存在的提示信息 | 通过 |
用户登录功能测试
为了使用系统的全部功能,用户首先需要进行登录。在登录界面,用户应输入其账号和密码以完成身份验证过程。有关用户登录功能测试用例设计如表6-2所示。
表6-2 用户登录功能测试表
| 测试目的 | 用例描述 | 预期结果 | 测试结果 |
|---|---|---|---|
| 验证有效登录 | 测试输入正确的用户名和密码,点击登录按钮 | 显示登录成功,跳转至用户首页 | 通过 |
| 验证空用户名登录 | 测试不输入用户名,输入正确密码 ,点击登录按钮 | 显示用户名不能为空提示信息 | 通过 |
| 验证空密码登录 | 测试输入正确用户名,不输入密码,点击登录按钮 | 显示密码不能为空提示信息 | 通过 |
| 验证错误用户名登录 | 测试输入错误的用户名和正确密码,点击登录按钮 | 显示用户名或密码错误提示信息 | 通过 |
| 验证错误密码登录 | 测试输入正确用户名和错误密码,点击登录按钮 | 显示用户名或密码错误提示信息 | 通过 |
患者信息管理功能测试
针对患者信息管理模块的功能测试,主要检验患者信息的信息展示、添加、修改、删除及搜索等操作是否符合预期。关于患者信息管理功能测试用例设计如表6-3所示。
表6-3 患者信息管理功能测试表
| 测试目的 | 用例描述 | 预期结果 | 测试结果 |
|---|---|---|---|
| 验证患者信息内容展示 | 测试患者信息展示功能是否正确显示所有患者信息内容 | 系统显示所有已添加的患者信息内容 | 通过 |
| 验证患者信息内容添加 | 测试添加一个新的患者信息,输入相应基本信息并提交 | 系统提示"添加成功"消息,列表中显示新的患者信息 | 通过 |
| 验证患者信息内容修改 | 测试修改已有患者信息的内容,修改某一患者信息内容并提交 | 系统提示"修改成功",系统更新患者信息内容 | 通过 |
| 验证患者信息内容删除 | 测试删除患者信息内容 | 系统提示"删除成功",列表中不再显示该患者信息 | 通过 |
| 验证患者信息内容查询 | 测试根据输入的关键字查询患者信息内容 | 系统会显示输入的关键字下的所有患者信息内容 | 通过 |
交流信息管理功能测试
针对交流信息管理模块的功能测试,主要检验交流信息的信息展示、添加、修改、删除及搜索等操作是否符合预期。关于交流信息管理功能测试用例设计如表6-4所示。
表6-4 交流信息管理功能测试表
| 测试目的 | 用例描述 | 预期结果 | 测试结果 |
|---|---|---|---|
| 验证交流信息内容展示 | 测试交流信息展示功能是否正确显示所有交流信息内容 | 系统显示所有已添加的交流信息内容 | 通过 |
| 验证交流信息内容添加 | 测试添加一个新的交流信息,输入相应基本信息并提交 | 系统提示"添加成功"消息,列表中显示新的交流信息 | 通过 |
| 验证交流信息内容修改 | 测试修改已有交流信息的内容,修改某一交流信息内容并提交 | 系统提示"修改成功",系统更新交流信息内容 | 通过 |
| 验证交流信息内容删除 | 测试删除交流信息内容 | 系统提示"删除成功",列表中不再显示该交流信息 | 通过 |
| 验证交流信息内容查询 | 测试根据输入的关键字查询交流信息内容 | 系统会显示输入的关键字下的所有交流信息内容 | 通过 |
| 验证交流信息内容审核 | 测试审核交流信息,更新审核状态及编辑回复并提交 | 系统提示"提交成功"消息,列表中更新的交流信息审核回复内容 | 通过 |
症状记录管理功能测试
针对症状记录管理模块的功能测试,主要检验症状记录的信息展示、添加、修改、删除及搜索等操作是否符合预期。关于症状记录管理功能测试用例设计如表6-5所示。
表6-5 症状记录管理功能测试表
| 测试目的 | 用例描述 | 预期结果 | 测试结果 |
|---|---|---|---|
| 验证症状记录内容展示 | 测试症状记录展示功能是否正确显示所有症状记录内容 | 系统显示所有已添加的症状记录内容 | 通过 |
| 验证症状记录内容添加 | 测试添加一个新的症状记录,输入相应基本信息并提交 | 系统提示"添加成功"消息,列表中显示新的症状记录 | 通过 |
| 验证症状记录内容修改 | 测试修改已有症状记录的内容,修改某一症状记录内容并提交 | 系统提示"修改成功",系统更新症状记录内容 | 通过 |
| 验证症状记录内容删除 | 测试删除症状记录内容 | 系统提示"删除成功",列表中不再显示该症状记录 | 通过 |
| 验证症状记录内容查询 | 测试根据输入的关键字查询症状记录内容 | 系统会显示输入的关键字下的所有症状记录内容 | 通过 |
6.3 测试结果分析
在本次系统测试过程中,针对各功能模块的操作逻辑和数据交互过程,重点对用户注册、用户登录、患者信息管理、交流信息管理、症状记录管理等核心模块进行了业务流程验证,通过设计并编写了相应的测试用例,并在此基础上开展了全面的功能性测试分析。
经过多轮测试验证,所有测试用例均已成功通过,结果表明系统各项功能均能按照预期正常运行,操作界面简洁直观,响应速度稳定,整体性能表现良好,能够有效满足信息化管理中的各项基本业务需求和用户群体的实际需求。同时,数据库中各类数据的存储、读取及更新操作也均准确无误,保证了数据的一致性和完整性,具备良好的信息处理能力和系统稳定性,达到了本次毕业设计初期所设定的目标与期望。