摘 要
智能问诊导诊平台作为一种智能化医疗服务工具,利用PHP语言开发,旨在为用户提供便捷的在线问诊和导诊服务。该平台集成了智能算法和医疗数据,实现了智能化的病情诊断和治疗建议,帮助用户更快速地获取医疗信息和建议。用户可以通过平台进行在线问诊,查看医院新闻,浏览医生信息,管理个人账户和挂号信息。管理员可以通过后台管理系统管理用户信息、医生信息、挂号信息等,保障平台的正常运行和信息安全。医生用户可登录平台,管理个人信息,处理挂号信息和诊断信息,提供专业的医疗服务。通过智能问诊导诊平台,用户可以更便捷地获取医疗帮助,医生可以更高效地提供医疗服务,为医患双方搭建了便捷的沟通桥梁。
****关键词:****智能问诊导诊平台;PHP;
Intelligent consultation and guidance platform
Abstract
The intelligent consultation and guidance platform, as an intelligent medical service tool developed using PHP language, aims to provide users with convenient online consultation and guidance services. This platform integrates intelligent algorithms and medical data, achieving intelligent disease diagnosis and treatment recommendations, helping users obtain medical information and advice more quickly. Users can conduct online consultations, view hospital news, browse doctor information, manage personal accounts and registration information through the platform. Administrators can manage user information, doctor information, registration information, etc. through the backend management system to ensure the normal operation and information security of the platform. Doctor users can log in to the platform, manage personal information, process registration and diagnostic information, and provide professional medical services. Through the intelligent consultation and guidance platform, users can more conveniently obtain medical assistance, and doctors can provide medical services more efficiently, building a convenient communication bridge for both doctors and patients.
****Keywords:****Intelligent consultation and guidance platform; PHP;
目 录
[摘 要](#摘 要)
[第一章 绪 论](#第一章 绪 论)
[第二章 系统分析](#第二章 系统分析)
[2.2.1 功能性分析](#2.2.1 功能性分析)
[2.2.2 非功能性分析](#2.2.2 非功能性分析)
[2.4 系统用例分析](#2.4 系统用例分析)
[第三章 系统设计与实现](#第三章 系统设计与实现)
[第四章 系统实现](#第四章 系统实现)
[4.2 管理端:医生用户功能模块](#4.2 管理端:医生用户功能模块)
[4.3 管理端:管理员功能模块](#4.3 管理端:管理员功能模块)
[5.2 系统测试用例](#5.2 系统测试用例)
[5.3 系统测试结果](#5.3 系统测试结果)
[结 论](#结 论)
[致 谢](#致 谢)
第一章 绪 论
1.1选题背景
随着互联网技术的飞速发展,智能医疗服务逐渐成为医疗行业的重要发展方向。智能问诊导诊平台的设计与实现旨在结合智能算法和在线服务,为用户提供便捷的医疗咨询和导诊服务,满足人们对医疗信息和服务的即时性和便捷性需求。通过利用PHP语言开发平台,将智能化技术应用于医疗领域,提高医疗服务的效率和质量,为患者和医生提供更便捷、高效的医疗交流平台。这一选题背景旨在推动医疗服务的智能化发展,促进医患沟通的便捷和高效,提升医疗行业的服务水平和用户体验
1.2 选题意义
智能问诊导诊平台的设计与实现具有重要意义如下几点:
- 提升医疗服务效率:智能问诊导诊平台结合智能算法和在线服务,能够提高医疗服务的效率,减少患者等待时间,让医患双方更快速地获取医疗信息和建议。
- 拓展医疗服务范围:通过在线问诊和导诊服务,智能平台能够跨越地域限制,让患者在家就能获得医疗建议,拓展了医疗服务的覆盖范围。
- 提升医患沟通质量:智能问诊导诊平台为医生和患者提供了便捷的沟通渠道,促进了医患之间的有效沟通,提升了医疗服务的质量和效果。
- 智能化医疗服务发展:通过结合智能算法和医疗数据,智能平台推动了医疗服务的智能化发展,为医疗行业的信息化和智能化进程提供了有益探索。
- 提升用户体验:智能问诊导诊平台为用户提供了便捷、高效的医疗服务体验,提升了用户对医疗服务的满意度和信任度。
通过智能问诊导诊平台的设计与实现,可以推动医疗服务的现代化和智能化发展,为医患双方提供更加便捷、高效的医疗服务,有助于提升整体医疗行业的服务水平和效率。
1.3研究内容
智能问诊导诊平台的设计与实现,所需要的研究内容:
(1)首先是确定选题,确定好所要做的系统,并对系统的背景及现在面临的一些问题等进行系统的初步确认。
(2)系统确认完成后,结合系统开发的需求进行确认系统开发所使用的技术,本智能问诊导诊平台的设计与实现使用php技术,数据库进行平台的搭建开发,确认好使用的技术进行技术分析,所使用的技术是否可以完成智能问诊导诊平台的实现。
(3)确定好系统使用的技术,进行在线确认系统所划分的用户角色,并且根据用户角色划分确定所要设计的功能模块,对于智能问诊导诊平台主要划分别为管理员、医生用户和注册用户这三种角色,并所使用的功能模块也相应不同,但是系统的数据库实现的内容是交互的,用户可以随时根据自己的需求查看挂号信息,对于系统工作人员可以根据自己的分管内容进行在线信息的处理及操作,管理员获取到所有用户的详细数据信息,并根据需求进行第一时间处理解决。
(4)系统的功能模块确认完成后进行程序及界面的设计,设计完成后,并且通过测试来判断程序是否完善,对于系统测试,需要不同的用户进行不同的内容编辑及提交,及使用不同的测试方式找出程序中存在的漏洞,并对程序出现的漏洞问题进行在线解决处理,如果测试系统没有任何问题时,可以将系统上传进行正式操作使用。
第 二 章 系统分析
2 . 1 可行性分析
2 . 1 .1技术可行性
智能问诊导诊平台采用了php技术,开发了功能完备、使用简单的前端应用程序,并建立、维护了一个数据完整、安全、稳定性强的后台数据库系统。
系统使用php技术和Mysql数据库作为设计工具,可简单易行地学习操作。用户角色之间的相结合开发一套智能问诊导诊平台是值得尝试的,数据完整性和许多品质为数据的功能分配和管理提供了依据。它也是数据库安全平台的重要组成部分,是提高和增强数据安全性的重要手段。此外,为了提供更平滑,更智能和更有效的基本控制方法,定义了同时构建对安全计算环境的支持所需的步骤,并帮助维护安全性。因为在这两种开发工具中,功能强大且免费且界面良好,所以智能问诊导诊平台在技术方面是可行的。
2 . 1 .2经济可行性
智能问诊导诊平台管理的开发是由开发者自己开发,不需要购买其他软件或者端口之类的,而且在智能问诊导诊平台管理的开发之前所做的市场调研及其他的智能问诊导诊平台,都是没有任何费用的,通过开发者自己的努力,所有的工作的都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于智能问诊导诊平台的开发在经济上是完全可行的,没有任何费用支出的。
使用php技术是比较成熟的技术,所以智能问诊导诊平台的开发在经济上是没有问题的。
2 . 1 .3操作可行性:
可操作性主要是对智能问诊导诊平台系统设计完成后,用户的使用体验度,对于管理员可以通过系统随时管理相关的数据信息,并且对于管理员、医生用户和注册用户、这三种用户角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户挂号,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
2 . 2系统功能 分析
2.2.1 功能性分析
按照智能问诊导诊平台的角色,划分了注册用户管理模块、医生用户管理模块和管理员管理模块这三大部分。
(一)注册用户功能模块:
- 首页:展示平台的整体信息和热门内容,方便用户快速了解平台的服务和功能。
- 注册登录:用户可以注册新账户或使用现有账户登录平台,确保用户身份和信息安全。
- 医院新闻:提供医院相关新闻和活动信息,让用户了解医院动态和健康知识。
- 医生信息:展示医生的个人资料、专长和排班信息,方便用户选择合适的医生进行咨询和挂号。
- 基本信息:用户个人信息管理,包括查看就诊记录、挂号信息等。提供个性化设置,如修改密码、个人资料等。
- 用户个人基本信息管理,包括姓名、联系方式等。
- 收藏:用户可以收藏感兴趣的医生信息或文章,方便日后查看。
- 挂号信息:用户可以挂号挂号、查询挂号记录、取消挂号等操作。
- 诊断信息:展示用户的诊断结果和医嘱信息,方便用户了解自身健康状况。
- 开药信息:展示医生开具的处方药品信息和用药建议。
(二)管理员功能模块:
- 后台首页:显示系统整体数据概况和重要信息概览。
- 系统用户管理:管理注册用户的账号信息,包括权限设置、账号禁用等。
- 医生信息管理:添加、编辑、删除医生信息,确保医生信息的准确性和完整性。
- 科室分类管理:对医生所属科室进行管理和分类,方便用户查找和选择医生。
- 挂号信息管理:管理用户的挂号信息,包括审核挂号、取消挂号等操作。
- 诊断信息管理:管理用户的诊断信息和医嘱记录,保障数据的安全和隐私。
- 开药信息管理:管理医生开具的处方信息,确保用药安全和合理性。
- 系统管理:管理员可以对系统前台展示的轮播图以及公告栏进行增删改查,方便用户进行查看。
- 资源管理:管理医院新闻和健康资讯内容,包括发布、编辑、删除等操作。
(三)医生用户功能模块:
- 登录:医生用户可以通过个人账号登录系统。
- 后台首页:展示医生的工作概况和重要信息。
- 医生信息管理:医生可以更新个人资料、排班信息等。
- 挂号信息管理:查看、处理患者的挂号挂号情况。
- 诊断信息管理:记录、管理患者的诊断结果和医嘱信息。
2.2.2 非功能性分析
智能问诊导诊平台的非功能性需求比如智能问诊导诊平台的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:
表2-1智能问诊导诊平台非功能需求表
|------|-------------------------------------------|
| 安全性 | 主要指智能问诊导诊平台数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
| 可靠性 | 可靠性是指智能问诊导诊平台能够安装用户的指示进行操作,经过测试,可靠性90%以上。 |
| 性能 | 性能是影响智能问诊导诊平台占据市场的必要条件,所以性能最好要佳才好。 |
| 可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
| 易用性 | 用户只要跟着智能问诊导诊平台的页面展示内容进行操作,就可以了。 |
| 可维护性 | 智能问诊导诊平台开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
2 . 3 系统操作流程
2 . 3 .1用户登录流程
对于系统的安全性的第一关,就是用户想要进入系统,必须通过登录窗口,输入自己的登录信息才可以进行登录,用户输入的信息准确无误后才可以进入到操作系统界面,进行功能模块的相对应操作,如果用户输入的信息不正确,则窗口出现提示框,用户登录失败,返回到第一步进行重新输入,如图2-2所示。
图2-2登录操作流程图
2.3 .2信息添加流程
对于智能问诊导诊平台,需要随时添加所需要的数据信息,对于用户添加信息,需要根据添加界面,根据选框的内容进行填写所要添加的数据信息,信息输入完成后判断数据信息是否符合要求,符合要求则添加完成,用户所添加的信息不符合要求,则需要返回到第一步,重新输入数据信息,再进行判断操作,如图2-3所示。
图2-3信息添加流程图
2 . 3 .3信息删除流程
不管是哪个用户角色进入到不通的系统操作界面,都可以进行不同的信息内容的操作功能,对用系统数据信息的删除,用户一旦将信息删除,那么该删除的数据信息将无法恢复,所以用户在对数据删除事,一定判断删除的内容是否是确定要删除的,确定无误后选择确定删除操作,如图2-4所示。
图2-4信息删除流程图
2.4 系统用例分析
通过2.2功能的分析,得出了智能问诊导诊平台的用例图:
注册用户角色用例如图2-5所示。
图2-5智能问诊导诊平台注册用户角色用例图
医生用户角色用例如图2-6所示。
图2-6智能问诊导诊平台医生用户角色用例图
后台管理上的管理员是维护整个智能问诊导诊平台中所有数据信息的。管理员角色用例如图2-7所示。
图2-7智能问诊导诊平台管理员角色用例图
第 三 章 系统设计与实现
3 .1系统架构设计
本智能问诊导诊平台从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。
图3-1 智能问诊导诊平台架构设计图
表现层(UI):又称UI层,主要完成本智能问诊导诊平台的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用本智能问诊导诊平台时的舒适度。UI的界面设计也要适应不同版本的智能问诊导诊平台以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。
业务逻辑层(BLL):主要完成本智能问诊导诊平台的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。
数据层(DL):由于本智能问诊导诊平台的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成本智能问诊导诊平台的数据存储和管理功能。
3 .2开发流程设计
智能问诊导诊平台的开发对管理模块和系统使用的数据库进行分析,编写代开发,规划和操作是构建信息管理应用程序的必要三步曲,它决定了系统是否能够真正实现预设功能以及是否可以在成功设计后实施。在开发过程中,每个阶段必须严格按照线性顺序进行开发,并且在相应阶段生成的每个工作都可以通过技术进行验证和检查。确保一个阶段完成后是正确的,不会造成下一阶段拖拽现象,使系统完成设计功能后得到保证。
从智能问诊导诊平台的成功开发经验来看,上述方法效果最为明显,最大程度地降低了系统开发的复杂性。如图3-2所示。
图3-2开发系统流程图
3 .3数据库设计
数据库是信息系统的基础和核心。数据库设计的好坏直接影响到信息系统开发的成败。创建数据库表首先确定实体的属性和实体之间的关系。根据关系创建一个数据表。
3 .3.1实体ER图
数据库是整个软件编程中最重要的一个步骤,对于数据库问题主要是判定数据库的数量和结构公式的创建。展示系统使用的是Mysql进行对数据库进行管理,进行保证数据的安全性、稳定性等。
概念模型的设计是为了抽象真实世界的信息,并对信息世界进行建模。它是数据库设计的强大工具。数据库概念模型设计可以通过E-R图描述现实世界的概念模型。系统的E-R图显示了系统中实体之间的链接。而且Mysql数据库是自我保护能力比较强的数据库,下图主要是数据库实体的E-R图如图3-3所示:
图3-3实体的E-R图
这些功能可以充分满足智能问诊导诊平台的需求。此系统功能较为全面,系统功能结构图如3-4所示。
图3-4系统功能结构图
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: |
表department_classification (科室分类)
|----|------------------------------|-----------|----|-----|------|----|-------------------|--------|
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | department_classification_id | int | 10 | 0 | N | Y | | 科室分类ID |
| 2 | department_name | 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 | 更新时间 |
表diagnostic_information (诊断信息)
|----|---------------------------|-----------|------------|-----|------|----|-------------------|--------|
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | diagnostic_information_id | int | 10 | 0 | N | Y | | 诊断信息ID |
| 2 | registration_code | varchar | 64 | 0 | N | N | | 挂号编码 |
| 3 | registered_users | int | 10 | 0 | Y | N | 0 | 注册用户 |
| 4 | user_name | varchar | 64 | 0 | Y | N | | 用户姓名 |
| 5 | doctor_users | int | 10 | 0 | Y | N | 0 | 医生用户 |
| 6 | doctors_name | varchar | 64 | 0 | Y | N | | 医生姓名 |
| 7 | doctors_department | varchar | 64 | 0 | Y | N | | 医生科室 |
| 8 | diagnosis_time | datetime | 19 | 0 | Y | N | | 诊断时间 |
| 9 | diagnostic_details | longtext | 2147483647 | 0 | Y | N | | 诊断详情 |
| 10 | prescription_certificate | varchar | 255 | 0 | Y | N | | 开药证明 |
| 11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表doctor_information (医生信息)
|----|------------------------|-----------|------------|-----|------|----|-------------------|--------|
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | doctor_information_id | int | 10 | 0 | N | Y | | 医生信息ID |
| 2 | doctor_users | int | 10 | 0 | Y | N | 0 | 医生用户 |
| 3 | doctors_name | varchar | 64 | 0 | Y | N | | 医生姓名 |
| 4 | doctors_id | varchar | 64 | 0 | N | N | | 医生工号 |
| 5 | doctors_photo | varchar | 255 | 0 | Y | N | | 医生相片 |
| 6 | doctors_title | varchar | 64 | 0 | Y | N | | 医生职称 |
| 7 | doctors_department | varchar | 64 | 0 | Y | N | | 医生科室 |
| 8 | introduction_by_doctor | longtext | 2147483647 | 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 | 更新时间 |
表doctor_users (医生用户)
|----|--------------------|-----------|----|-----|------|----|-------------------|--------|
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | doctor_users_id | int | 10 | 0 | N | Y | | 医生用户ID |
| 2 | doctors_name | varchar | 64 | 0 | Y | N | | 医生姓名 |
| 3 | doctors_id | varchar | 64 | 0 | Y | N | | 医生工号 |
| 4 | doctors_title | varchar | 64 | 0 | Y | N | | 医生职称 |
| 5 | doctors_department | 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 | 更新时间 |
表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: |
表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已取消 |
表prescription_information (开药信息)
|----|-----------------------------|-----------|------------|-----|------|----|-------------------|-----------------|
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | prescription_information_id | int | 10 | 0 | N | Y | | 开药信息ID |
| 2 | registration_code | varchar | 64 | 0 | N | N | | 挂号编码 |
| 3 | registered_users | int | 10 | 0 | Y | N | 0 | 注册用户 |
| 4 | user_name | varchar | 64 | 0 | Y | N | | 用户姓名 |
| 5 | doctors_name | varchar | 64 | 0 | Y | N | | 医生姓名 |
| 6 | doctors_department | varchar | 64 | 0 | Y | N | | 医生科室 |
| 7 | diagnostic_details | longtext | 2147483647 | 0 | Y | N | | 诊断详情 |
| 8 | prescription_certificate | varchar | 255 | 0 | Y | N | | 开药证明 |
| 9 | medication_notes | text | 65535 | 0 | Y | N | | 开药备注 |
| 10 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
| 11 | pay_type | varchar | 16 | 0 | Y | N | | 支付类型: 微信、支付宝、网银 |
| 12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表registered_users (注册用户)
|----|---------------------|-----------|----|-----|------|----|-------------------|--------|
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | registered_users_id | int | 10 | 0 | N | Y | | 注册用户ID |
| 2 | user_name | varchar | 64 | 0 | Y | N | | 用户姓名 |
| 3 | mobile_phone_number | varchar | 16 | 0 | Y | N | | 手机号码 |
| 4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
| 5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
| 6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表registration_information (挂号信息)
|----|-----------------------------|-----------|-------|-----|------|----|-------------------|--------|
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | registration_information_id | int | 10 | 0 | N | Y | | 挂号信息ID |
| 2 | registration_code | varchar | 64 | 0 | Y | N | | 挂号编码 |
| 3 | registered_users | int | 10 | 0 | Y | N | 0 | 注册用户 |
| 4 | user_name | varchar | 64 | 0 | Y | N | | 用户姓名 |
| 5 | mobile_phone_number | varchar | 16 | 0 | Y | N | | 手机号码 |
| 6 | doctor_users | int | 10 | 0 | Y | N | 0 | 医生用户 |
| 7 | doctors_name | varchar | 64 | 0 | Y | N | | 医生姓名 |
| 8 | doctors_title | varchar | 64 | 0 | Y | N | | 医生职称 |
| 9 | doctors_department | varchar | 64 | 0 | Y | N | | 医生科室 |
| 10 | appointment_time | datetime | 19 | 0 | Y | N | | 挂号时间 |
| 11 | appointment_remarks | text | 65535 | 0 | Y | N | | 挂号备注 |
| 12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表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 | 更新时间: |
表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 .1 用户端:注册用户 功能模块
用户登录,用户通过输入账号和密码,选择角色并点击登录进行系统登录操作,如下图所示。
图4-1用户登录界面图
登录的关键代码如下:
public function login()
{
if (Request::isPost()) {
$request = Request::param();
$result = this-\>validate(request, $this->validate);
if (true !== $result) {
$data['error'] = 30000;
$data['message'] = $result;
} else {
request\['password'\] = md5(request['password']);
$result = this-\>model-\>login(request, $this->table);
$data = $result;
}
} else {
$data['error'] = 30000;
$data['message'] = "field的值不能为空!";
}
return json_encode($data);
}
public function login(request=\[\],table_name = ''){
$username = $request['username'];
$password = $request['password'];
$bol = this-\>where(\['username'=\>username])->find();
if ($bol){
password = md5(password);
if (request\['password'\]==bol['password']) {
//添加token信息
$access_token['create_time'] = date('Y-m-d H:i:s');
$access_token['update_time'] = date('Y-m-d H:i:s');
access_token\['info'\] = json_encode(bol);
// $access_token['info'] = $bol;
$access_token['token'] = md5(date('Y-m-d H:i:s'));
bol_token = Db::name('AccessToken')-\>insert(access_token);
if ($bol_token){
$data['obj'] = $bol;
$data['obj']['token'] = $access_token['token'];
return ['result' => $data];
}else{
return ['error' => ['code' => 5000, 'message' => '登录失败,token生成失败']];
}
} else {
return ['error' => ['code' => 5000, 'message' => '登录失败,密码不正确']];
}
}else{
return ['error' => ['code' => 5000, 'message' => '登录失败,账号不存在']];
}
}
注册,通过填写密码、昵称、邮箱、性别、姓名、邮箱、电话等信息,输入完成后选择提交即可注册成功,如下图所示。
图4-2注册界面图
注册的关键代码如下:
public function register()
{
if (Request::isPost()) {
$request = Request::param();
request\['create_time'\] = isset(request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');
request\['update_time'\] = isset(request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');
$result = this-\>validate(request, $this->validate);
if (true !== $result) {
$data['error'] = 30000;
$data['message'] = $result;
} else {
request\['password'\] = md5(request['password']);
$result = this-\>model-\>register(request, $this->table);
$data = $result;
}
} else {
$data['error'] = 30000;
$data['message'] = "field的值不能为空!";
}
return json_encode($data);
}
public function register(request=\[\],table_name = ''){
$username = $request['username'];
$bol = this-\>where(\['username'=\>username])->find();
if (!$bol){
result = self::allowField(true)-\>save(request);
if ($result) {
return ['result' => 1];
} else {
return ['error' => ['code' => 3000, 'message' => '注册失败']];
}
}else{
return ['error' => ['code' => 3000, 'message' => '注册失败,账号已存在']];
}
}
前台首页,注册用户进入智能问诊导诊平台,可以对首页、注册登录、医院新闻、医生信息、我的(基本信息、收藏、挂号信息、诊断信息、开药信息)功能模块进行相对应操作,如下图所示。
图4-3前台首页界面图
医生信息,可以查看问诊导诊平台提供的医生列表,包括医生相片、医生介绍、医生名称、医生类型、等信息。还可以进行挂号挂号、点赞、评论、收藏。如下图所示。
图4-4医生信息界面图
挂号信息,可以对问诊导诊平台提供的医生列表进行挂号,还可以查看医生用户的诊断信息。如下图所示。
图4-5挂号信息界面图
4 .2 管理端:医生用户 功能模块
挂号信息管理,可以对已挂号注册用户进行诊断,还可以查看挂号的状态。如下图所示。
图4-6挂号信息管理界面图
4 . 3 管理端:管理员 功能模块
管理员进入到操作界面,通过登录窗口进行在线填写自己的用户名、密码、角色进行登录,登录成功后进入到系统操作界面进行相应信息的获取,如下图所示。
图4-7管理员登录主界面图
管理员登陆系统后,可以对后台首页、系统用户、医生信息管理、科室分类管理、挂号信息管理、诊断信息管理、开药信息管理、系统管理(轮播图管理)、资源管理(医院新闻)等功能模块进行相对应操作,如下图所示。
图4-8管理员功能界面图
系统用户,在系统用户页面,管理员可以对系统中所有的用户角色进行管控,包含了管理员、医生用户和注册用户这三种角色,如果需要添加新的用户,点击页面中的"添加"按钮根据提示输入上用户信息,点击"提交"以后在对应的用户界面就可以查看到了,可以点击用户后面的"删除"按钮直接删除某一用户。如下图所示。
图4-9系统用户界面图
添加的关键代码如下:
public function add()
{
if (Request::isPost()) {
$request = Request::param();
request\['create_time'\] = isset(request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');
request\['update_time'\] = isset(request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');
$result = this-\>validate(request, $this->validate);
if (true !== $result) {
// 验证失败 输出错误信息
$data['error'] = 30000;
$data['message'] = $result;
} else {
if($this->table == 'user'){
request\['password'\] = md5(request['password']);
}
$res = this-\>add_before(request, $this->table, $this->table_id);
if($res['code'] == 200){
$result = this-\>model-\>add(request, $this->table, $this->table_id);
this-\>add_after(this->table);
$data = $result;
}else{
$data['error'] = $res;
}
}
} else {
$data['error']['code'] = 30000;
$data['error']['message'] = "field的值不能为空!";
}
return json_encode($data);
}
删除的关键代码如下:
public function del()
{
$request = Request::param();
$result = this-\>model-\>del_data(request, $this->table, $this->table_id);
$data = $result;
return json_encode($data);
}
医生信息概况管理,管理问诊导诊平台的医生用户、医生姓名、医生工号、医生相片、医生职称、医生科室、创建时间等。添加医生信息的相片、介绍等相关资料,还可以查看用户对医生信息的评价。如下图所示。
图4-10医生信息概况管理界面图
图4-11医生信息概况添加界面图
科室分类管理,管理科室分类的列表和添加信息。可以更新科室分类的相关信息等。并可根据需要进行查询或删除等操作,还可以添加新的科室分类。如下图所示。
图4-12科室分类管理界面图
图4-13科室分类添加界面图
系统管理,在系统管理页面管理员可以对系统前台展示的轮播图进行增删改查,方便用户进行查看。如下图所示。
图4-14系统管理界面图
轮播图上传的关键代码如下:
public function upload()
{
$month = date('Ym', time());
$data = 'file';
$path = 'upload/file/' . $month . "/";//上传文件保存位置
$allow_ext = explode(",", "jpg,jpeg,png,jfif,bmp,gif,ico,xls,xlsx,AVI,mov,rmvb,rm,FLV,mp4,3GP");
if ($_FILES) {
$file = _FILES\[data];
$rst = [];
if (!empty($file['name'])) {
$file_type = explode('.', $file['name']);
ext = end(file_type); //获取文件的格式
ext = strtolower(ext);
if (!in_array($ext, $allow_ext)) {
$rst['error']['code'] = 30000;
$rst['message'] = '只能上传jpg,jpeg,png,jfif,bmp,gif,ico,xls,xlsx,AVI,mov,rmvb,rm,FLV,mp4,3GP类型文件';
} else {
if (!is_dir($path))
{
mkdir($path, 0777, true);
};
$name = date('YmdHis') . '_' . rand(10000, 99999) . '.' . $ext;
save_rst = move_uploaded_file(file['tmp_name'], $path . $name);
if ($save_rst !== false) {
rst\['result'\]\['url'\] = 'http://'._SERVER['HTTP_HOST'].'/'.$path . $name;
} else {
$rst['error']['code'] = 30000;
$rst['error']['message'] = '文件上传失败';
}
}
} else {
$rst['error']['code'] = 30000;
$rst['error']['message'] = '未选择文件';
}
} else {
$rst['error']['code'] = 30000;
$rst['error']['message'] = '未获取到文件';
}
return json_encode($rst);
}
资源管理,可以查看到系统中所有医院新闻,支持通过标题对进行查询,添加、删除等操作。资源管理界面如下图所示。
图4-15资源管理界面图
系统的测试
5.1系统测试的目的
系统开发到了最后一个阶段那就是系统测试,系统测试对软件的开发其实是非常有必要的。因为没什么系统一经开发出来就可能会尽善尽美,再厉害的系统开发工程师也会在系统开发的时候出现纰漏,系统测试能够较好的改正一些错误,为后期系统的维护性提供很好的支持。通过系统测试,开发人员也可以建立自己对系统的信心,为后期的系统版本的跟新提供支持。
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 系统测试结果
通过编写智能问诊导诊平台的测试用例,已经检测完毕用户登录功能测试、医生信息查看功能测试、添加科室分类分类、医生信息搜索、密码修改功能测试,通过这些测试为智能问诊导诊平台的后期推广运营提供了强力的技术支撑
结 论
在这个设计中,我花了大量的时间去理解系统开发中使用的知识,经过这段时间的努力工作最终完成了系统设计。通过这一阶段的学习,我发现了自己的不足,充分掌握了必要的应用技能,进一步的学习使我充实了自己的知识基础,完成了这个艰巨的任务。当遇到问题时,我很及时的寻求老师的帮助,通过专业的网站和论坛来解决,他们的帮助让我一步一步的成功克服了困难的问题。系统设计过程不容易,你需要不断充实自己,有勇气克服困难。系统开发的一些功能还不完善,需要继续改善后,通过用户体验来修改设计完美的系统,让用户得到更好的体验,我觉得很高兴,因为这是我第一次通过自己的努力实现这个系统,但绝不是我的最后一个,在未来我将努力实现更多的优秀的系统。
在一些编程语言的系统实现中,对词汇表不太熟悉,导致了开发的困难,但是我通过了合适的字典软件来解决这个大问题。由此,我学会了自己的英语缺陷。在那之后,我不断地提高自己的英语知识,这样我就不会有任何未来的工作和生活。毕业设计过程我感觉很深刻,从一开始就不熟悉开发技术,一步一步的使用,接触到文献和信息,不难理解,系统是一次又一次的实现,系统本身对于在线学习是有用的。我从这个设计中获益良多,论文的编写需要有自己的意愿去实现一点,学习生活中所有的问题的勇气,学习的过程就是学习的过程。毕业设计,我学会了将理论知识应用于实践。让我知道该怎么做,我们必须认真对待。勇于克服困难,相信未来,我会做得更好。
参考文献
[1]杨子骥.基于PHP的在线学习系统设计与实现[J].科技与创新,2024,(04):17-21+26.DOI:10.15913/j.cnki.kjycx.2024.04.004.
[2]王芬,刘铜华,丁雷,等.基于概率图的中医动态交互问诊与智能辨证的数学模型的探索[J].世界科学技术-中医药现代化,2023,25(10):3370-3376.
[3]Borodinova A ,Ierusalimsky V ,Balaban P .Comparison of the Transduction Capacity of AAV5 and AAV PHP.eB Serotypes in Hippocampus Astroglia[J].Neuroglia,2023,4(4):275-289.
[4]Yuxin* H ,Bringula R.Design and Implementation of the Heartful Education System Platform Based on PHP[J].International Journal of Information and Education Technology,2023,13(12):
[5]赵朝进.基于PHP技术的动态网页设计和实现[J].电脑知识与技术,2023,19(33):21-23.DOI:10.14004/j.cnki.ckt.2023.1767.
[6]唐华,胡为,刘伟,等.基于知识图谱的中医医案智能问诊系统设计与实现[J].现代计算机,2023,29(19):98-101.
[7]余骞,王培培,刘炜.面向精准交互的智能预问诊模型研究[J].计算机应用与软件,2023,40(09):65-72.
[8]周英,刘虔铭,黄轶俊,等.基于预问诊服务的患者管理流程优化与实践[J].中国数字医学,2023,18(06):61-65.
[9]陈小强,胡翰,陈燕军.基于深度学习的智能问诊系统设计与实现[J].电脑编程技巧与维护,2023,(05):119-122.DOI:10.16184/j.cnki.comprg.2023.05.025.
[10]姚心婧.智能问诊系统用户体验影响因素组态分析[D].华中师范大学,2023.DOI:10.27159/d.cnki.ghzsu.2023.000726.
[11]李梦翔,许扬,陈磊.在线智能预问诊系统构建与应用研究[J].医学信息学杂志,2022,43(11):73-77+88.
[12]张小亮,景慎旗,戴作雷,等.基于人工智能的门诊患者导诊系统建设[J].中国卫生信息管理杂志,2022,19(03):443-446.
[13]许婷婷.基于NLP的医疗知识图谱构建及智能问诊平台应用[D].东华理工大学,2022.DOI:10.27145/d.cnki.ghddc.2022.000025.
[14]Ziyu L ,Ying L ,Lixia Z , et al.Construction of intelligent query system for metro electromechanical equipment faults based on the knowledge graph[J].Journal of Intelligent Fuzzy Systems,2021,41(3):4351-4368.
[15]杜曾贞,唐东昕,解丹.智能问诊中基于深度神经网络的反问生成方法[J].计算机应用,2022,42(03):867-873.
[16]Li C .Implementation and Analysis of Intelligent Inquiry Teaching Model in Primary School English Teaching[J].Science Insights Education Frontiers,2021,8(S1):
[17]刘银芝,苗华栋,黄夏彬,等.基于人工智能的患者智能问诊服务应用平台[J].软件,2021,42(01):113-116.
[18]张喜红,王玉香.基于微信公众号的医学检验仪器故障智能问诊系统[J].江汉大学学报(自然科学版),2020,48(03):69-76.DOI:10.16389/j.cnki.cn42-1737/n.2020.03.011.
[19]Liu X ,Zhou Y ,Zongrun W .Can the development of a patient's condition be predicted through intelligent inquiry under the e-health business mode? Sequential feature map-based disease risk prediction upon features selected from cognitive diagnosis big data[J].International Journal of Information Management,2020,50463-486.
[20]穆雨涵.浅谈智能问诊的发展与应用[J].中国新通信,2019,21(02):8-9.
致 谢
智能问诊导诊平台的完成,如何实现的更好,其中付出的努力是很大的,这段时光将会终身难忘。
智能问诊导诊平台的设计可以顺利完成,首先,我要感谢我的指导老师,他在我遇到设计问题时及时帮助了我,并在我对设计感到困惑时给了我充分的指导。在他的帮助下,我可以完成高质量的毕业设计。在智能问诊导诊平台的设计和开发中,指导老师提出了许多实用的意见和建议,并为我提供了大量相关的研究资料,使我对设计有了更深入的了解。只有在老师的指导下,才能在毕业设计中取得成功。在此,我要向指导老师表示深深的谢意。
在此,我还要感谢我的同学们,他们为我的设计提供了许多参考意见,并与我讨论了设计中的问题,从而使我的设计一步一步走向成熟。
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~