1、医院管理系统病历管理系统的设计与实现摘 要病历管理系统是医院管理系统的重要组成,该系统的开发主要包括后台数据库的建立以及前台应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库,而对于后者则要求具有齐全完善的应用程序功能,友好人性化的操作界面。该系统采用现代的办公自动化理念,面向中小型医院,实现无纸化办公,确保医疗单位在病历保管实现高效办公,规范管理。本论文主要介绍了病理管理系统的设计开发与实现的全部过程。并运用功能结构图、数据库关系图和 E-R 图等对核心模块的设计过程进行了详细的说明。病历管理系统整体基于 B/S(浏览器/服务器)模式,后台数据库选用 SQL
2、 Server 2000,使用 ASP 嵌入 HTML 语言来设计实现。实现了病历在保管中的周期过程,完成了从患者的注册到患者的出院等一系列病历流程。简化了繁琐的手工操作,规范化整个病历处理流程,使得病历的流转更方便快捷。关键词:病历管理;B/S 模式;病历流程Hospital information systemDesign and Implementation of Medical records management SystemAbstractMedical records management system is an important component of hospital
3、management system, development of the system mainly consists of two aspects, the establishment of background database and the foreground application. Regarding the former, requires to establishing a database with consistency, integrity, and security. As for the latter demanded Complete a comprehensi
4、ve application functions, and the human friendly interface. The system uses modern office automation concept, oriented small and medium-sized hospitals, to achieve paperless office. Ensure efficient office, and standardize management in medical records of hospital.This paper introduces the entire pr
5、ocess of design and implementation of the medical records management System . And describing the design process of the core module in detail , by using of functional chart, database diagram and E-R map. Medical records management system as a whole based on the B / S (browser / server) mode, backgrou
6、nd database use SQL Server 2000, to achieve by ASP embedded HTML. Achieving records in the custody of the cycle, from the patients registration to leaving hospital. Simplified the cumbersome manual operation, standardized medical records in the whole process, making the transfer of medical records m
7、ore efficient and convenient. Key words: Medical records management,;B/S model,;Flow chart目 录论文总页数:24 页1 引言 .11.1 课题背景 .11.2 国内外研究现状 .11.3 本课题研究的意义 .12 系统开发环境与技术的分析 .22.1 系统需要解决的主要问题 .22.2 系统运行环境 .22.3 相关技术介绍 .23 病历管理系统设计分析 .33.1 病历管理系统概述 .33.1.1 病历管理流程图 .43.2 数据库设计 .43.2.1 病历管理系统 E-R 图 .43.2.2 病历管理
8、系统数据库各表详细设计 .53.3 数据库的连接 .84 病历管理系统的实现 .84.1 管理员管理模块 .84.1.1 用户登陆 .84.1.2 管理员添加用户 .104.1.3 管理员删除用户 .124.2 患者管理模块 .124.2.1 患者基本信息的录入 .124.2.2 患者管理的删除和修改 .144.3 病历管理 .164.3.1 病历的添加 .164.3.2 病历的管理 .174.3.3 病历的删除 .20结 论 .21参考文献 .21致 谢 .23声 明 .24第 1 页 共 24 页1 引言1.1 课题背景近几年,随着医院的规模不断扩大,用原来的只靠人管理病历的方法已不合时宜
9、。目前我国医院的信息处理基本上还停留在手工方式,劳动强度大且工作效率低,医务人员和管理人员的大量时间都消耗在事务性工作上;病案、临床检验、病理检查等许多宝贵的数据资料的检索十分费事甚至难以实现;对这些资料深入的统计分析手工方式无法进行,不能充分为医学科研利用。随着计算机应用日益广泛;各行各业对生产管理的自动化、信息化、系统化的要求也不断提高;因而,降低劳动强度、提高劳动效率也就必然促使了医院中电子病历的使用。1.2 国内外研究现状电子病历是一个很复杂的项目,国际上有很多国家都要建健康档案,就是想把病历电子化。美国在新奥尔良由于飓风影响导致了大致有 50、60 万人的医学档案,这些病历都是由纸质
10、的,在社区的诊所或者区域的医院保存,这些人的医学档案丢失,包括当地的州政府认为这是一个巨大的事故。从这件事反过来认识到建立病历电子化的紧迫性和重要性,因为电子病历的存放、利用会更加安全。联邦政府也成立了建立电子病历的委员会,提出了三个基本的原则。第一,要分级保密,可能有些是及其保密的,有些可以为公众共享,这是关于安全私密性的原则。第二,更新的保真性,建立电子病历的静态环境以后会有些变化,包括临床诊断和治疗在这个电子病历应该有记录,至少应该知道是谁诊断的,是什么医生在什么场合下做的修改。 第三,必须具有相当方便容易让人访问,不能有一些政策的堡垒,只要是经过授权的,无论是职业的医师、有关方面需要访
11、问的话应该能够得到这个病历。1.3 本课题研究的意义电子病历将提高医院各项工作的效率和质量,促进医学科研、教学;减轻各类事务性工作的劳动强度,使他们腾出更多的精力和时间来服务于病人。电子病历与纸病历相比,最显著的优点就是对信息数据的共享和反复利用。病人看病不需要携带病历,只需提供自己的姓名、病历号或其他信息,医生通过计算机即可得到该病人所有信息。本系统以 B/S(Browser/Server)模式作为基本结构,所有程序和数据库存放在服务器上,浏览器端只需安装操作系统和浏览器即可,系统由用户浏览器、Web 服务器二个层次组成,体现了其开发维护简单性的特点。第 2 页 共 24 页2 系统开发环境
12、与技术的分析2.1 系统需要解决的主要问题 该管理系统面向的主要对象是医院,所以系统管理方面,应该有添加不同等级的管理人员和医务人员并针对不同的用户设置不同的权限,密码管理员能添加医务人员并修改添加人员的密码,同时管理人员只能修改自己的密码。在病历管理页面中病历管理员可以查看所有医务人员的病历录入信息,但是不能修改其中的录入信息。普通医务人员可以通过管理员分配的用户名和密码登录系统,由于权限的设置他们可以看见管理设置栏目但是无法进行操作。医生录入的病历信息只能由自己所看见,并且可以修改,在列表中是无法看见其他医生所录入的病历信息,很好的保证了病人的隐私权利。2.2 系统运行环境为了保证系统运行
13、的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛运行于国际互联网即英特网,也可适用于内部的局域网。其运行要求如下:服务器端配置硬件环境:CPU:Inter 奔腾 2.0GHZ 以上内存:256MB 以上硬盘:20G 以上软件环境:Windows 2000 Server SP4(含 IIS 5.1),Microsoft SQL Server客户端配置硬件环境:CPU:Inter 赛扬 2.0GHZ 以上内存:128MB 以上硬盘:1G 以上软件环境:Windows 2000/NT/XP/2003 ,IE6.02.3 相关技术介绍ASP:全称是 Activ
14、e server pages,是微软推出的应用与 Web 应用程序开发的技术 ,被描述为“一个服务器的脚本环境,在这里可以生成和运行动态的、交互的、高性能的 Web 服务应用程序” ,他不是一种编程语言,也不是一种开发工具,而是一种强大的技术框架。JavaScript:是一种嵌入在 HTML 文件中的脚本语言,它是基于对象和事件驱动的,能对诸如鼠标单击、表单输入、页面浏览等用户事件做出反应并进行第 3 页 共 24 页处理。SQL(Structured Query Language): 结构化查询语言,是关系数据库的标准语言,通过几个命令,就可以实现定义、查询、更新和控制功能。在 ASP 中对
15、后台数据库进行查询、添加、删除和更新等操作所采用的就是 SQL 语言。数据查询基本命令是 SELECT,SELECT 语句用于对数据库进行查询并返回符合查询条件的数据。在查询语句中使用 SQL 库函数,可以实现在查询的过程中同时对某属性上的值进行统计分析。在 ASP 中常用的就是表单数据的传输和接收,表单数据的传输有 POST 与GET 两种方法,比较常用的是 POST,例如常用表单头部为:这里的 method 说明了传输数据的方法,当表单提交时可以用或来获取数据;若把传输 ASP 的方法改成 GET,那只需要将 method 改成 GET 即可,这时除了用上面的两种方法接受数据时,也可以接受
16、 GET 方法传输的数据。POST 和 GET 两者最大的差异在于,POST 方法的数据传输较为隐蔽,不会将传输传递的信息显示在浏览的网址后,而 GET 方法则会将传递的信息显示在浏览的网址后。还较常用的有 Session 对象,该对象是建立 WEB 服务器同客户端的联系,并维持这一联系,其实是一个管理会话的对象,不仅可以保持管理会话,而且在此会话中可以为此次会话存储特定用户会话所需的属于自己的个性化信息,当用户在应用程序的 Web 页面跳转时,Session 对象中的所有这些变量不会丢失直到会话过期或被放弃后,但是如果浏览器的 Cookie 被禁用,将不会发生作用。3 病历管理系统设计分析3
17、.1 病历管理系统概述病历管理系统主要完成患者的信息输入和病历的查看等相关操作,并实现医生对患者信息的快速查看。本设计主要完成了四个方面的内容,其作用如下:1)系统管理。在本部分,根据管理员的权限的不同,不同的管理员可以执行不同的任务,病历管理员可以修改病例,而密码管理员只能修改用户的密码,并可以对其个人资料进行修改和操作,进行权限的设置,主要目的是为了是权利分散化。2)患者个人信息管理。医生首先看到的是已存在的且是该医生诊断过的患者信息,并可以查看,也可以进行修改当天的患者信息但是不能删除。医生通第 4 页 共 24 页过这样的方式确定在以前的诊断中有无该患者,当录入完成后该病人的信息则进入
18、病人信息库以供医生对其进一步的诊断。3) 患者病历管理。当患者的个人信息进库后,即可以进行此步的操作,由医生详细填入该病人的病情,并根据病人以前的病史作出自己的判断并保存在服务器数据库,在完成录入后,会自动跳往病历管理首页,并显现出已被自己诊断过的病人。同样,医生在此步骤中不具有删除权限。3.1.1 病历管理流程图病历管理流程图如图 3-1 所示。图 3-1 病历管理流程图3.2 数据库设计3.2.1 病历管理系统 E-R 图系 统 登 陆 首 页系 统 管 理 患 者 管 理 病 历 管 理系 统 管 理 员 系 统 用 户否管 理 员 管 理 添 加 用 户 密 码 修 改 患 者 管 理
19、 患 者 添 加 病 历 管 理 病 历 添 加患 者 删 除是否系 统 管 理 员是否删 除 病 历 恢 复 病 历第 5 页 共 24 页图 3-2 病历管理系统的 E-R 图E-R(Eneity-Relationship Approach)图是最常用的概念模型表示方法,也是数据库的核心和基础,它是按用户的观点来对数据和信息建模,依据概念模型设计应具的特点,真实性、易理解性、易修改性、易转换性。如图 3-3 所示。3.2.2 病历管理系统数据库各表详细设计对于病历管理系统,要应用到的数据库表有:Disease 患者病历表Manage_user 在职人员信息表User 患者个人信息表Zhiw
20、ei 医院职位信息各表详细信息如下:表 3-1 患者病历表字段名 数据类型 长度 是否允许为空 字段描述Id int 4 否 自动编号 ID(主键)Username nvarchar 10 否 姓名Riqi nvarchar 50 是 住院日期医 生 患 者管 理 员系 统 管 理 员信 息病 历信 息 年 龄性 别姓 名 用 户 名性 别权 限 年 龄m1nnln 删 除 病 历恢 复 病 历 11第 6 页 共 24 页Jibing nvarchar 50 是 诊断疾病Chuyuan nvarchar 10 是 出院结果zid int 4 是 住院号bid int 4 是 病床号zhili
21、ao ntext 16 是 治疗经过zhusu nvarchar 50 是 主诉xbs ntext 16 是 现病史jws ntext 16 是 既往史xthg ntext 16 是 系统回顾hunyins nvarchar 50 是 婚姻史tgjc ntext 16 是 体格检查fzjc ntext 16 是 辅助检查note ntext 16 是 其他author nvarchar 20 否 医生 IDShanchu Int 4 是 删除确认列(1 为删除)在患者病历表中保存的是在所有在医院中看病的患者患病信息,其中用户编号是用户在病历中的唯一标识,是不重复的,同时用户名在该系统中也是不能
22、重复的,这样在病历比较多的情况下仍然能通过编号迅速的查找到病历信息,并且将编号指定为主健。同时设置了用户名和医生 ID 不能为空,这是因为这些是病历当中最关键的部分,是病历存在的关键。 Shanchu 字段名是不会在该系统中显示出来的。表 3-2 在职人员信息表字段名 数据类型 长度 是否允许为空 字段描述ID int 4 否 自动编号(主键)M_username varchar 50 是 登陆名M_password varchar 50 是 密码M_realname varchar 50 是 真实姓名M_sex varchar 50 是 性别(1 为男性)M_tel varchar 50 是
23、 联系电话M_email varchar 50 是 电子邮件M_address varchar 50 是 住址M_zip varchar 50 是 邮编M_purview int 4 是 权限在职人员信息表中保存有本医院所有在职员工的基本信息,用户编号设置第 7 页 共 24 页为主健。在该表中保存的有在职人员的个人基本信息和所拥有的权限。表 3-3 患者个人信息表字段名 数据类型 长度 是否允许为空 字段描述id int 4 否 自动编号(主键)Username nvarchar 20 是 用户名Password int 4 是 密码cname nvarchar 10 是 姓名Age Int
24、 4 是 年龄Sex Int 4 是 性别zhiye Nvarchar 50 是 职业Hunyin Int 4 是 婚姻Minzu Nvarchar 5 是 民族Jiguan Nvarchar 10 是 籍贯Address Nvarchar 50 是 现住址Phone Nvarchar 20 是 联系电话guomin Nvarchar 80 是 过敏史shenfenzheng varchar 50 否 身份证Dis Nvarchar 50 是 重要疾病updatetime Datetime 8 是 日期Note Ntext 16 是 其他author nvarchar 20 是 输入病历的医生编号患者个人信息表是这个系统中的一个很关键的信息数据库表,因为病历的所有信息均是围绕着这张表展开,除了用户编号外,还有很关键的用户的身份证信息是不能为空的,因为用户真实姓名如果相同,只有用身份证确认病历的归属。Author 字段名是不会在该系统中显示出来。表 3-4 医院职位信息字段名 数据类型 长度 是否允许为空 字段描述id Int 4 否 自动编号(主键)Daima Int 4 是 职位代码shuoming varchar 50 是 职位说明该表主要说明系统中各登陆人员的级别以及所处的职位。同样设置 Id 为主健。