医学信息学课程设计医院门诊信息系统.docx
《医学信息学课程设计医院门诊信息系统.docx》由会员分享,可在线阅读,更多相关《医学信息学课程设计医院门诊信息系统.docx(23页珍藏版)》请在冰豆网上搜索。
医学信息学课程设计医院门诊信息系统
第一章系统概述………………………………………………………2
第二章系统分析……………………………………………………………3
2.1:
需求分析………………………………………………………………3
2.2:
业务流程分析…………………………………………………………3
2.3:
数据流程分析…………………………………………………………5
2.4:
数据字典………………………………………………………………6
第三章系统设计………………………………………………………………8
3.1:
功能结构图设计………………………………………………………9
3.2:
输出设计………………………………………………………………11
3.3:
数据库结构设计………………………………………………………11
3.4:
输入设计………………………………………………………………14
3.5:
代码设计………………………………………………………………14
第四章系统实施………………………………………………………………19
4.1:
登录工作台操作………………………………………………………19
4.2:
登陆数据库……………………………………………………………19
第五章心得与体会……………………………………………………………20
第六章参考文献………………………………………………………………20
第一章系统概述
郑州大学第一附属医院是国内为数不多的形成规模的集教学、科研、医疗、预防、保健、康复为一体,具有较强救治能力和国际交流能力及较高科研水平的现代化综合性医院之一。
医院实际开放床位3792张,目标床位4636张,日门诊量6000人次左右。
如此一个综合性医院,信息数据相当的多,所以必须高效地管理,现在医院用的一流的HIS系统,配套oracle数据库和另外几个附加的软件一起管理医院所有数据。
医院信息系统(英文缩写为HIS,英文全称为HospitalInformationSystem)是指利用计算机软硬件技术、网络通讯技术等现代化手段,对医院及其所属各部门对人流、物流、财流进行综合管理,对在医疗活动各阶段中产生的数据进行采集、存贮、处理、提取、传输、汇总、加工生成各种信息,从而为医院的整体运行提供全面的、自动化的管理及各种服务的信息系统。
医院信息系统是现代化医院建设中不可缺少的基础设施与支撑环境。
HIS将计算机技术和医院的管理特点、管理思想、医院各部门业务特点、业务经验有机地结合起来,用数据库方式管理、储存信息,利用计算机网络加速信息流通和传递速度,对医院发展和医院改革具有重要意义。
第二章系统分析
系统分析是系统开发的重要阶段。
系统分析的目的是要回答新系统将要“做什么”这个关键性问题。
在这个阶段要集中精力,认真分析用户需求,用科学的方法来表达新系统的逻辑方案,建立新系统的逻辑模型。
系统分析工作开始与用户提出新系统的要求,进行初步调查与可行性分析后,确认新系统开发为可行即可进行详细调查与分析,提出新系统逻辑模型,最后写出系统分析报告。
2.1:
需求分析
一所医院的主要构成分为两个部分,一是门诊部门,二是住院部门,医院的所有日常工作都是围绕着这两大部门进行的。
门诊部门各下设若干科室,如设口腔科、内科、外科、皮肤科等,各科室都有相应的医生、护士,完成所承担的医疗工作,医生又有主治医师、副主任医师、普通医师或教授、副教授、其他之分。
为了支持这门诊部门的工作,医院还设置了药库、中心药房、门诊药房、制剂室、设备科、财务科、后勤仓库、门诊收费处、门诊挂号处、问讯处、住院处、检验科室、检查科室、血库、病案室、手术室,以及为医院的日常管理而设置的行政部门等。
2.2:
业务流程分析
进行业务流程分析时,需要按照原有信息流动过程,逐个地调查分析所有环节的处理业务、处理内容、处理顺序和对处理时间的要求,弄清各个环节需要的信息、信息来源、流径去向、处理方法、计算方法、提供信息的时间和信息形态等。
业务流程分析可以用业务流程图来完成。
所谓业务流程图就是一种表明系统内各单位、人员之间的业务关系、作业顺序和管理信息流动的流程图,它用一些规定的符号及连线来表示某个具体业务处理过程。
郑州大学第一附属医院HIS医院管理系统的门诊部流程图如图所示:
2.3:
数据流程分析
数据流程是指数据在系统中产生、传输、加工处理、使用、存储的过程。
数据是信息的载体,是今后系统要处理的主要对象。
因此必须对系统调查中所搜集的数据以及统计处理数据的过程进行分析和整理。
数据与数据流程分析是今后建立数据库系统和设计功能模块处理过程的基础。
数据流程分析是把数据组织内部的流动情况抽象地独立出来,舍去了具体结构组织、信息载体、处理工具、物质、材料等,单从数据流动过程来考虑实际业务的数据处理模式。
其中数据流程图是描述系统逻辑模型的主要工具,它以少数几种符号综合地反映出信息在系统中的流动、存储和传递。
对郑大一附院HIS医院管理系统的数据流程分析,得到以下数据流程图
2.4:
数据字典
(1)数据结构:
处方信息
含义说明:
定义了病人病情及相关结果。
组成:
病人姓名、性别、日期、门诊号、处方号、病史、病况及处方。
1.数据项:
日期
含义说明:
病人就诊时间。
取值方法:
病人挂号时系统的日期和时间。
2.数据项:
门诊号
含义说明:
病人看病的类别及次序。
取值方法:
挂号时自动生成。
3.数据项:
处方号
取值范围:
000001~999999
取值方法:
由电脑自动生成
4.数据项:
病史
含义说明:
病人曾经的得病记录
5.数据项:
病况
含义说明:
病人目前的得病情况
6.数据项:
处方
含义说明:
医生根据病人的得病情况做出的诊断
取值方法:
由医生诊断获得的治疗方法及相关药品
(2)数据结构:
划价单
含义说明:
药品价格合计
组成:
项目名称、规格、数量、单价、库存数量、所属部门和合计金额。
1.数据项:
项目名称
含义说明:
唯一标识药品的数据项,不能重名。
2.数据项:
规格
含义说明:
该药品对应的型号和类别。
3.数据项:
数量
含义说明:
记录药品的多少。
4.数据项:
单价
含义说明:
该药品在计量单位下的价格。
5.数据项:
库存数量
含义说明:
描述该药品在药库中的多少。
6.数据项:
所属部门
含义说明:
该种药品所属类别。
7.数据项:
合计金额
含义说明:
病人所需付的药品费用总和。
取值方法:
合计金额=单价1*数量1+单价2*数量2
(3)数据结构:
收费单
含义说明:
病人付款凭证
组成:
项目名称、规格、数量、单价、库存数量、所属部门、所付金额。
1.数据项:
项目名称
含义说明:
唯一标识药品的数据项,不能重名。
2.数据项:
规格
含义说明:
该药品对应的型号和类别。
3.数据项:
数量
含义说明:
记录药品的多少。
4.数据项:
单价
含义说明:
该药品在计量单位下的价格。
5.数据项:
库存数量
含义说明:
描述该药品在药库中的多少。
6.数据项:
所属部门
含义说明:
该种药品所属类别。
7.数据项:
所付金额
含义说明:
病人所实付的药品费用总和。
(4)数据结构:
门诊药房售药报表
含义说明:
每隔一定时间送给药库管理系统的售药情况表。
组成:
药品编号、药品名称、规格、单价、售药数量/售药剂量
A.数据项:
药品编号
含义说明:
唯一标识该药品的关键域。
取值方法:
由药品条形码标识
B.数据项:
售药数量/售药剂量
含义说明:
某种药品一定时间内售出的数量或剂量。
类型:
数字
第三章系统设计
系统设计就是详细定义基于计算机的各种活动的解决方案。
在系统设计阶段,把系统分析过程当中得到的逻辑模型结合相应的网络技术、数据库技术等详细的描述出来,并为系统实施阶段的各种工作准备必要的技术资料和有关文件。
系统设计的基本目标就是要使所设计的系统必须满足系统逻辑模型的各项功能要求,同时尽可能地提高系统的性能。
系统设计的目标是评价和衡量系统设计方案优劣的基本标准,也是选自系统设计方案的主要依据。
评价与衡量系统设计目标实现程度的指标主要有以下方面:
系统的效率、系统的工作质量、系统的可变更性、系统的通用性、系统的可靠性。
3.1:
功能结构图设计
总体结构
门诊子系统总E-R图:
实体及相应的属性
门诊医师(医师号,科室、工作时间,姓名,专业技术职称,性别,出生日期,年龄,婚姻状况,职业,出生地,民族,身份证号,国籍,住址,电话,邮政编码,户口地址,备注)
挂号单(挂号号、挂号类别、挂号日期、挂号科室、主治医师、病人姓名)
处理方案(处理方案号、开出时间、处理方案内容、主治医师,病人姓名)
门诊病历(病历号、病人姓名、病历内容、诊断时间、主治医师)
处方(处方号、处方内容、主治医师、病人姓名、病人性别、病人年龄、附注)
收费项目(收费项目号、项目类型、相应序号、收费金额、收费人员、病人姓名)
门诊病人(病人号,姓名,性别,出生日期,年龄,婚姻状况,职业,出生地,民族,身份证号,国籍,工作单位及地址,电话,邮政编码,户口地址,联系人姓名,联系人地址,联系人关系,是否住院,联系人电话);
检验项目(检验序号、检验医师、检验时间安排、检验内容、检验分析、检验结果,检验收费情况)
检查项目(检查序号、检查医师、检查时间安排、检查内容、检查分析、检查结果、检查收费情况)
工作时间安排(工作时间、所属科室、主治医师)
3.2:
输出设计
输出方式按照实际需要设计,如门诊划价单、门诊收费单等
3.3:
数据库结构设计
表3-1用户表(user)
列名
注释
类型
长度
是否为空
是否主键
Userid
用户编码
Int
×
√
Username
用户名称
Varchar2
200
×
×
Password
密码
Varchar2
200
×
×
secrecy
安全问题
Varchar2
100
×
×
secrecyanswer
安全答案
Varchar2
200
×
×
Email
电子邮件
Varchar2
200
×
×
Credits
积分
Varchar2
200
×
×
Regetime
注册时间
Date
×
×
Regip
注册IP
Varchar2
200
×
×
logtimes
登录次数
Int
×
×
lastlogip
上次登录IP
Varchar2
200
×
×
lastlogtime
最后登陆时间
Date
×
×
Nickname
昵称
Date
×
×
表3-2角色表
列名
注释
类型
长度
是否为空
是否主键
Roleid
角色编码
Int
×
√
Rolename
角色名称
Varchar2
200
×
×
Description
描述
Varchar2
1024
×
×
Masterid
创建这个角色用户ID
Int
×
×
Mastername
创建这个角色用户名称
Varchar2
200
×
×
Createdate
创建日期
Date
×
×
表3-3资源表
列名
注释
类型
长度
是否为空
是否主键
Moduleid
资源编码
Int
×
√
Moduleme
资源名称
Varchar2
200
×
×
Description
描述
Varchar2
1024
×
×
Parentid
父节点编码
Int
×
×
Isleaf
是否叶子节点
Int
×
×
表3-4用户角色映射
列名
注释
类型
长度
是否为空
是否主键
Id
编码
Int
×
√
Userid
用户编码
Varchar2
200
×
×
Username
用户姓名
Varchar2
1024
×
×
Roleid
角色编码
Int
×
×
Rolename
角色姓名
Varchar2
200
×
×
pirororder
优先顺序
Int
×
×
表3-5角色自由映射
列名
注释
类型
长度
是否为空
是否主键
Id
编码
Int
×
√
moduleid
资源编码
Varchar2
200
×
×
modulename
资源名称
Varchar2
1024
×
×
Roleid
角色编码
Int
×
×
Rolename
角色姓名
Varchar2
200
×
×
privilege
权限
Int
×
×
extendrole
是否继承角色1继承0不继承
Int
×
×
princialtype
主体类型
varchar2
20
×
×
表3-6药材表
列名
注释
类型
长度
是否为空
是否主键
Id
药材编码
Int
×
√
Name
名称
Varchar
200
×
×
Price
价格
Varchar
1024
×
×
Press
生产地
Int
×
×
Description
描述
Varchar
200
×
×
Type
类型
Varchar
200
×
×
表3-7采购表
列名
注释
类型
长度
是否为空
是否主键
Id
挂号编码
Int
×
√
Kahao
挂号编码
Varchar
200
×
×
Cretetime
挂号时间
Createtime
×
×
Lururen
录入人
Varchar
200
×
×
Kaiyaocontent
开药内容
Varchar
200
×
×
Descripiton
描述
Varchar
2000
表3-8挂号表
列名
注释
类型
长度
是否为空
是否主键
Id
编码
Int
×
√
Name
名称
Varchar
200
×
×
Age
年龄
Varchar
1024
×
×
Birthplace
籍贯
Datetime
×
×
Keshi
科室
Varchar
200
×
×
Createtime
录入时间
Datetime
×
×
Sex
性别
Varchar
200
×
×
Descrioption
描述
Varchar
2000
×
×
Yuyue
预约
Varchar
200
×
×
3.4:
输入设计
输入的方式简单、快捷,是医院信息管理系统的基本要求,特别是门诊划价、收费的输入方式直接影响医院的工作效率。
此系统采用鼠标单击选择或直接输入的方式有许多优点。
(1)满足操作员不同的需求。
(2)无需记忆药品的价格。
(3)如发现输入处方错误可按“删除”键进行修改。
3.5:
代码设计
INCLUDE zrhcm_basicdata_modify_log.* 说明:
定义表 *
TABLES:
pernr.
NODES:
peras.
INFOTYPES:
0000,
0001,
0002,
0006,
0016,
0022,
0105,
0185,
0529,
0532,
0534.
* 说明:
定义相关变量、内表 *
TYPES:
BEGIN OF typ_tab,
stext1 LIKE hrp1000-stext, "第一层部门
objid1 TYPE hrobjid, " 第一层部门id
stext2 LIKE hrp1000-stext, "第二层部门
objid2 TYPE hrobjid, " 第二层部门id
stext3 LIKE hrp1000-stext, "第三层部门
objid3 TYPE hrobjid, " 第三层部门id
stext4 LIKE hrp1000-stext, "第四层部门
objid4 TYPE hrobjid, " 第四层部门id
stext5 LIKE hrp1000-stext, "第五层部门
objid5 TYPE hrobjid, " 第五层部门id
stext6 LIKE hrp1000-stext, "第六层部门
objid6 TYPE hrobjid, " 第六层部门id
stext7 LIKE hrp1000-stext, "第七层部门
objid7 TYPE hrobjid, " 第七层部门id
pernr LIKE p0001-pernr, "工号
ename LIKE p0001-ename, "姓名
gesch
(2) TYPE c, "性别
gbdat LIKE p0002-gbdat, "出生日期
icnum LIKE p0185-icnum,"身份证
natio LIKE t005t-landx, "国籍
gbort LIKE p0002-gbort, "籍贯
famst LIKE t502t-ftext, "婚姻状态
racky LIKE t505s-ltext, "民族
slabs LIKE t519t-stext, " 最高学历
pcode LIKE t7cn5r-ptext, "政治面貌
locat LIKE p0006-locat, "户籍地址
locat1 LIKE p0006-locat, "现住地址
phone LIKE p0105-usrid, " 手机号码
cell LIKE p0105-usrid, "固定电话
zorgeh LIKE hrp1000-stext, "直接部门
orgeh LIKE p0001-orgeh, "直属部门id
plans TYPE plans, "职位id
title LIKE hrp1000-stext, "职位
zsscj like hrp9102-zsscj, "职位层级
zzjdj like hrp9102-zzjdj, "职位等级
cttyp LIKE t547s-cttxt, "合同类别
conty LIKE t7cn2y-tytxt, "社保类型
zzsum TYPE i, "计数
END OF typ_tab.
FORM frm_sel_data .
DATA :
ls_p0001 TYPE p0001.
LOOP AT p0000 WHERE begda LE pn-endda AND endda GE pn-begda .
EXIT.
ENDLOOP.
IF sy-subrc EQ 0.
gwa_tab-pernr = pernr-pernr. "编号
gwa_tab-zzsum = 1.
LOOP AT p0001 WHERE begda LE pn-endda AND endda GE pn-begda.
gwa_tab-ename = p0001-ename. "姓名
gwa_tab-orgeh = p0001-orgeh. "直属部门id
ENDLOOP.
READ TABLE p0001 INTO ls_p0001 INDEX 1.
PERFORM frm_levelo_get USING ls_p0001-orgeh.
LOOP AT p0002 WHERE begda LE pn-endda AND endda GE pn-begda.
IF p0002-gesch = '1'. "性别
gwa_tab-gesch = '男'.
ELSEIF p0002-gesch = '2'.
gwa_tab-gesch = '女'.
ENDIF.
gwa_tab-gbdat = p0002-gbdat. "出生日期
gwa_tab-gbort = p0002-gbort. "籍贯
ENDLOOP.
LOOP AT p0006 WHERE begda LE pn-endda AND endda GE pn-begda.
CASE p0006-subty.
WHEN '2'.
gwa_tab-locat = p0006-locat. "户籍地址
WHEN '1'.
gwa_tab-locat1 = p0006-locat. "居住地址
WHEN OTHERS.
ENDCASE.
ENDLOOP.
READ TABLE p0534 INDEX 1.
READ TABLE gt_t7cn5r WITH KEY pcode = p0534-pcode.
IF sy-subrc = 0.
gwa_tab-pcode = gt_t7cn5r-ptext.
ENDIF.
READ TABLE p0185 WITH KEY ictyp = '01