第一,研究分析当下主流的nodejs技术,结合医院日常管理方式,进行医院综合管理系统的数据库设计,设计医院综合管理系统功能,并对每个模块进行说明。
第二,陈列说明该系统实现所采用的架构、系统搭建采用的服务器、系统开发环境和使用的工具,以及系统后台采用的数据库。
最后,对系统进行全面测试,主要包括功能测试、查询性能测试、安全性能测试。
分析系统存在的不足以及将来改进的方向。
前端技术:nodejs+vue+elementui,
Express 框架于Node运行环境的Web框架,
语言 node.js
框架:Express
前端:Vue.js
数据库:mysql
数据库工具:Navicat
开发软件:VScode
视图层其实质就是vue页面,通过编写vue页面从而展示在浏览器中,编写完成的vue页面要能够和控制器类进行交互,从而使得用户在点击网页进行操作时能够正常。
代码结构讲解
1、 node_modules文件夹(有npn install产生)
这文件夹就是在创建完项目后,cd到项目目录执行npm install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
伴随着我国社会的发展,人民生活质量日益提高。于是对医院综合管理进行规范而严格是十分有必要的,所以许许多多的信息管理系统应运而生。此时单靠人力应对这些事务就显得有些力不从心了。所以本论文将设计一套医院综合管理系统,帮助医院进行预约挂号、取消挂号、病历信息、预约时段、收费信息等繁琐又重复的工作,提高工作效率的同时,也减轻了管理者的压力。
本论文的主要内容包括:目 录
摘 要 Ⅰ
Abstract Ⅱ
1 绪 论 1
1.1研究背景 1
1.2 研究意义 2
1.3 研究现状 2
1.4本文组织结构 3
2 技术介绍 4
2.1express框架 4
2.2 nodejs语言 5
2.3 Mysql的特点 6
2.5本章小结 6
3需求分析 7
3.1可行性分析 7
3.1.1经济可行性 7
3.1.2技术可行性 8
3.1.3运营可行性 8
3.1.4法律可行性 8
3.2系统需求分析 8
3.2.1 性能需求 9
3.2.2 安全性需求 9
3.2.3 功能需求 10
3.3本章小结 10
4系统设计 11
4.1系统结构设计 11
4.2系统功能模块设计 11
4.3 数据库设计 12
4.3.1 概念模型设计 12
4.3.2 数据库表结构 12
4.4本章小结 14
5 系统实现 15
5.1系统开发环境以及运行环境 15
5.1.1 系统开发环境 15
5.1.2 系统运行环境 15
5.2医院综合管理系统的主要功能模块实现 15
5.2.1前台功能模块 15
5.2.2管理员功能模块 16
5.2.3医生功能模块 16
5.2.4用户功能模块 16
5.2.5本章小结 18
6系统测试 19
6.1 系统测试目的 19
6.2 系统测试环境 19
6.3系统测试用例 19
6.4本章小结 20
结 论 21
参考文献 22
致 谢 23
1 绪 论
1.1研究背景
信息技术的集成化和信息网络化的不断发展,人类开始步入信息化时代,信息技术作为一种资源成为医院战略不可分割的一部分,在当今社会,人们的生活节奏逐渐加快,人们对经济的要求逐渐降低,越来越多的人开始追求简单、快捷的方式。以现在计算机的技术的应用,使计算机成为人们使用现代发达技术的桥梁[1]。计算机可以有效的解决信息,十分方便的获取信息,从而提高工作的效率。
1.2 研究意义
现如今科技的卓越发展,时代环境的大变革。人们生活变得越来越多元化,这种多元化很大程度上由互联网科技发展引起,日新月异的互联网让我们实现了众多的不可能。利用网络进行信息管理改革已经成为了人们追捧的一种趋势[2]。“医院综合管理系统”是运用nodejs语言,express框架,以Mysql数据库为基础而来发出来的。为保证我国经济的持续性发展,必须要让互联网信息时代在我国日益壮大,蓬勃发展,一个好的医院综合管理系统,方便用户通过注册登录到网站查看预约挂号、取消挂号、病历信息、收费信息,修改个人信息等,医生查看预约挂号、取消挂号、病历信息等,管理员对信息进行维护与管理,还能帮助管理者从琐碎冗杂的日常管理事务中解放出来,更专心投入在其它事务上,因而能更好的履行它自身的社会责任,这个医院综合管理系统也就间接地为美好社会的创建出了一份力[3]。所以医院综合管理系统的设计和实现是必要的也是很有意义的。
并且,在对国外医院综合管理系统发展现状的了解中,发现国外医院综合管理系统一大多是一种门户的建设,除日常的办公业务外,与物流和资金流关系紧密的许多业务也都被设计为功能模块加入系统中[4]。在这一点上,我国完全没有落后,通过采用集成了这些功能的系统,帮助医院各项业务的工作效率都得到了极大提高,从而持续地为用户带来更多经济收益。
3.1.4法律可行性
该医院综合管理系统是面向大众开源化和不收取任何费用的。它的主要目的是帮助人们解决高重复手工问题。完全符合法律可行性要求,系统内部权限划分不会导致内部用户泄露系统机密。对于用户信息,系统有保护措施,用户密码在数据库中加密,并有严格的自我控制[13]。
3.2系统需求分析
3.2.1 性能需求
医院综合管理系统设计的目的在于帮助医院的管理者能够更加高效轻松地进行日常的管理工作,所以作为一个工具,该系统应该被设计得易于上手使用,整个系统界面需要简洁明了、清晰易懂,而且一定要为用户提供必要的提示信息,比如在登录时用户密码或者用户名输入错误时要给予提示。总之一定要从使用者的角度出发,去设计用户操作界面[14]。
3.2.2 安全性需求
首先要保证服务器不受攻击,数据库不能曝露在互联中。对使用系统的不同用户赋予相应的权限,用户只能进行自己权限允许范围内的操作。数据库中进行多用户管理,对用户的敏感信息如身份证信息,只有最高权限的数据库管理员用户可查询,其他用户无权限查看。
3.2.3功能需求
本医院综合管理系统是为了提高用户查阅信息的效率和管理人员管理信息的工作效率,可以快速存储大量数据,还有信息检索功能,这大大的满足了用户、医生和管理员这三者的需求。操作简单易懂,合理分析各个模块的功能,尽可能优化界面,让用户、医生和管理员能使用环境更好的系统。
对比要实现的功能来分析出用户的需求,可以让用户在线对其进行查看预约挂号、取消挂号、病历信息等信息,这不仅满足了用户的需求,还大大的节省了时间。医生只能自己权限内操作功能,因此,管理员对信息进行添加、修改、删除、查看,可以提高管理员的工作效率。
1.4本文组织结构
本论文将详细阐述医院综合管理系统的开发背景、应用可行性以及系统实现所具有的现实意义,在对医院综合管理系统进行详细的需求分析后,会根据需求分析的结果再结合实际情况为系统的实现选取合适的技术和架构,之后在上述分析论述的基础上进行系统设计,最后完成系统实现和测试。
本文共分为七章,分别是:
第一章绪论,在这一章中对医院综合管理系统的研究背景和意义进行介绍,同时浅述了信息管理系统的发展,明确了医院综合管理系统的实现的目的和方向[5]。
第二章技术介绍,在本章中列举介绍了系统实现采用到的所有技术,包括一些主流的框架技术。
第三章需求分析,这一章对医院综合管理系统的需求进行了全面详细的分析,从系统实现的应用可行性、技术可行性,再到系统的功能、性能、安全性需求都做了说明分析,最后描述了系统的业务流程对需求分析进行补充。
第四章系统设计,这一章中包含了系统实现选取的架构模式,以及组成系统的各个功能模块。
第五章系统实现,本章是在经过前面几章的分析后,将医院综合管理系统开发实现,章节内容包括系统开发环境、运行环境和具体的功能模块实现。
第六章系统测试,模拟系统的实际应用环境,对编写完成的程序进行测试。在本章中列举了测试用例和测试结果。
第七章总结,对医院综合管理系统的整个设计和实现过程进行总结[6]。
在表现层,主要负责处理从客户端接收到的请求,根据请求内容进行处理后向客户端响应结果。在业务层中,囊括了整个系统的核心业务逻辑,它位于数据访问层之上表现层之下,表现层的请求发送至业务层,业务层将根据编写好的业务逻辑与数据层进行交互。但是每个层之间是不具有必然联系的,表现层的请求发送至业务层,业务层在接受到后可以不进行处理,这并不会导致整个系统出现错误。所以只要层与层之间交互的接口不发生变化,某一层的变更并不会对其它层产生影响。所以这种架构的系统实际上很易于扩充,只要表现层有新的请求发送给业务层,业务层只要有相应的处理逻辑就好了,所以业务逻辑层的设计是十分重要的。而在持久层,主要进行的就是数据的存取,也就是和数据库打交道。
以上这种对程序进行分层的方式,可以使开发者专注于结构中的某一层,每一层要进行的工作十分明确,降低了耦合性,这种标准化的开发方式,有利于程序的复用,也极大地降低了之后对系统功能扩充和维护的成本。
4.3.2 数据库表结构
本论文中的医院综合管理系统采用MySQL数据库,系统中的所有对象以及对象的所有属性都将在下列表格中展现。
表4-1:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-2:病历信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
xingming varchar 200 姓名
jiuzhenkeshi varchar 200 就诊科室
zhenduanshijian datetime 诊断时间
zhusubingzheng longtext 4294967295 主诉病症
zhenjiejieguo longtext 4294967295 诊结结果
chufangneirong longtext 4294967295 处方内容
zhiliaoyijian longtext 4294967295 治疗意见
yishenggonghao varchar 200 医生工号
yishengxingming varchar 200 医生姓名
表4-3:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-4:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-5:收费信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
xingming varchar 200 姓名
feiyongleixing varchar 200 费用类型
feiyongjine int 费用金额
feiyongmingxi longtext 4294967295 费用明细
fabushijian datetime 发布时间
ispay varchar 200 是否支付 未支付
表4-6:取消挂号
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yishenggonghao varchar 200 医生工号
yishengxingming varchar 200 医生姓名
keshi varchar 200 科室
yuyueshiduan varchar 200 预约时段
quxiaoshijian datetime 取消时间
quxiaoyuanyin varchar 200 取消原因
zhanghao varchar 200 账号
xingming varchar 200 姓名
shouji varchar 200 手机
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-7:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-8:预约时段
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yuyueshiduan varchar 200 预约时段
piaoshu int 票数
表4-9:留言板
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 留言人id
username varchar 200 用户名
avatarurl longtext 4294967295 头像
content longtext 4294967295 留言内容
cpicture longtext 4294967295 留言图片
reply longtext 4294967295 回复内容
rpicture longtext 4294967295 回复图片
表4-10:预约挂号
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yishenggonghao varchar 200 医生工号
yishengxingming varchar 200 医生姓名
keshi varchar 200 科室
yuyueshiduan varchar 200 预约时段
piaoshu varchar 200 票数
yuyueshijian datetime 预约时间
bingzhengmiaoshu varchar 200 病症描述
zhanghao varchar 200 账号
xingming varchar 200 姓名
shouji varchar 200 手机
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-11:科室信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
keshimingcheng varchar 200 科室名称
表4-12:费用类型
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
feiyongleixing varchar 200 费用类型
表4-13:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
mima varchar 200 密码
xingming varchar 200 姓名
xingbie varchar 200 性别
nianling float 年龄
shouji varchar 200 手机
touxiang longtext 4294967295 头像
表4-14:医生评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容
表4-15:医生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yishenggonghao varchar 200 医生工号
mima varchar 200 密码
yishengxingming varchar 200 医生姓名
xingbie varchar 200 性别
keshi varchar 200 科室
zhicheng varchar 200 职称
shanzhanglingyu varchar 200 擅长领域
lianxidianhua varchar 200 联系电话
yuyueshiduan varchar 200 预约时段
piaoshu int 票数
keshijianjie longtext 4294967295 科室简介
yishengjianjie longtext 4294967295 医生简介
touxiang longtext 4294967295 头像
thumbsupnum int 赞 0
crazilynum int 踩 0
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-16:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
4.4本章小结
本章主要是对医院综合管理系统进行设计,详细的说明了该系统实现所采用的架构、系统中所有的功能模块,并以表格的形式展现了系统持久层中的所有实体和实体的所有属性。明确的功能说明和详尽的数据陈列,方便将系统业务和数据联系起来,为后面的程序开发提供方便。
5 系统实现
在上一章中,本论文中的医院综合管理系统进行了全面的系统设计。接下来第五章对本医院综合管理系统的实现过程进行说明,包括对该医院综合管理系统所需的开发环境、运行环境的说明以及对上一章中提到的各种内容的实现。
6系统测试
系统测试是针对整个产品系统进行的测试,通过测试验证整个系统是否正确满足了前面需求分析篇章中的所有需求,测试系统的性能和功能是否与预想的一致,进而提高系统的稳定性和可靠性[15]。同时,通过合理的测试可以发现系统中存在的问题,以防止系统在正式投入使用后出现故障,影响系统使用者工作的顺利进行。系统测试的的主要方法有白盒测试和黑盒测试,本章节将采用黑盒测试法,从系统的功能和性能两方面入手进行测试。
6.1 系统测试目的
在一个可靠的软件系统开发过程中,系统测试是其中重要的一环,有时在一套大型的软件系统中一个小故障就可能带来严重后果。虽然不存在完全没有问题的软件,但是可以通过全面系统的测试尽可能的发现漏洞,并在系统投入使用前修复漏洞,尽可能减小在实际使用中系统发生故障的概率[16]。
6.3系统测试用例
1.页面跳转测试
目的测试是测试系统的不同功能页面间能否正常准确跳转,测试结果如下表。
表6-2首页跳转表
编号 操作 预期结果 测试结果
1 点击用户管理 跳转相应用户管理界面 成功跳转管理界面
2 点击登录 跳转至初始界面 成功跳转初始界面
3 点击注册 跳转到注册界面 成功跳转注册界面
2.用户登录功能测试
测试登录注册功能的正确性以及用户错误登录时的系统反馈,测试结果如下表所示。
表6-3 注册登陆页面测试表
编号 操作 预期结果 测试结果
1 点击注册,输入新的用户名密码 注册成功 注册成功
2 使用注册成功的用户名进行登录 登陆成功 登录成功
3 使用错误用户名登录 显示账号或密码错误 提示“账号或密码错误”
4 用户名为空进行登录 显示用户名不能为空 提示“用户名不能为空”
6.4本章小结
本章旨在进一步的完善系统,为此进行了系统测试,通过测试验证了系统运行的正确性和可靠性,根据测试结果也进一步完善了医院综合管理系统的功能。
结 论
本文对医院综合管理系统的实现进行了分析设计,并给予分析设计的内容实现了医院综合管理系统。在论文开端,通过对现实背景的分析论述,证明了医院综合管理系统的应用可行性和现实意义。之后我们对系统实现所采用的技术进行研究说明,然后结合医院日常管理工作的实际情况,提出了系统实现要满足的需求,并详细叙述了这些需求的具体内容以及将要应用系统的不同使用者的业务流程,这些是医院综合管理系统能够正确实现功能的基本前提和依据,后续的设计与实现都将围绕需求中的内容展开。接着开始进行系统设计,首先进行系统架构设计,采用了当下主流的将整个系统分层,方便了系统的开发,降低了系统功能扩充的维护成本。然后,对数据库进行设计,将所有数据表列出。最后,我们将医院综合管理系统实现,并进行测试。
在整个系统的设计与实现过程中,除了应用在学校中学到的知识外还学习了新的技术,使我在整合已有知识的同时,拓宽了自己的知识面,增加了自己的技能点。这个过程必然不是一帆风顺的,其中有许多同学和老师的帮助,所以这次毕业设计是十分愉快的一次经历。
致 谢
毕业设计是我在大学校园中的最后一项内容了,毕业设计结束的那天也意味着我的大学生活的结束,所以在做毕业设计的时候我的内心十分复杂,因为大学生活对我来说是十分幸福的一段时光。在大学我遇到了很好的老师和同学,他们身上有很多吸引我值得我学习的特质,在和他们的相处中我也在不断完善自己,所以只是和他们相遇相识就已经让我很开心很感谢了。包括在完成毕业论文的过程中,老师也十分耐心的给予同学们耐心的指导,在我们不自信和受挫的时候也一直鼓励我们、相信我们,在毕业论文的写作遇到瓶颈的时候,还有很好的同学彼此沟通,又或者是一起去打球,往往使我感到放松并且产生新的思路。毕业后的分离总是难免的,但老师同学们带给我的成长是无法磨灭的,所以真心地感恩遇到过的这些优秀的人,我相信他们未来的生活必将精彩,我也由衷的祝福他们,我将继续努力,希望有一天能再见到他们,我能成为更优秀的自己,开心的和他们打招呼,在一起怀念大学的美好时光。