HIS医疗管理系统设计.docx
《HIS医疗管理系统设计.docx》由会员分享,可在线阅读,更多相关《HIS医疗管理系统设计.docx(32页珍藏版)》请在冰豆网上搜索。
HIS医疗管理系统设计
HIS医疗管理系统
1.绪论
系统开发背景
门诊医疗是医院管理的门面,流量大,手续较繁锁,在手工方式下,医护人员要做大量不必要的重复工作、效率低、准确性差、不方便管理,影响工作效率,造成了很多就诊病人得不到合理有效的快捷就诊服务,甚至影响医疗质量,为此,越来越多的医院加快了信息化建设的步伐,系统目前运行状况良好,有效地优化服务和工作环境、使病员和医生情绪得以放松,提高了服务效率和质量、树立了医院的良好形象,使门诊工作可以高效有序的运转,提高了医院的经济效益,促进医院的发展。
开发工具:
C#VS2013SQL2008(MySQL)
开发者:
XXXXXXX
简述
系统采用流行的C/S结构模式。
系统的分析设计采用面向对象的技术,用Visio等工具进行辅助设计。
系统的基本构成
门诊部医疗信息管理系统主要是对医院门诊部挂号和收费,药房以及医生就诊进行管理。
主要功能模块:
导医服务模块
医师服务模块
药房服务模块
门诊统计模块
基本设置模块
首先导医服务作为医院面对病人的第一个门面,主要是针对给病人登记:
登记病人的一些基本信息;病人预约:
预约医生,科室,时间;病人挂号,前台交费;药品退费:
某些不需要的要进行退款;欠费催款;评价管理:
对就诊的医生进行评价。
医师服务的主要功能是通过病人的先主诉病情,然后对病人进行诊治,给病人进行检查,可以查询病人的历史信息;给病人开处方,添加病人检查和检验的信息,对病人的处方进行退药,打印诊断书,打印医令。
对于药房服务主要功能是对医院的药品进行入出库进行管理,对库存中的药品进行盘点和审核和对药品的增加和修改,对医生的开的药方进行确认并发放,对那些已经退掉的药重新入库。
门诊统计对一天的门诊量和费用的统计,也可以按照科室来进行查询。
基本设置主要是对检验信息设置,检查信息的设置,对科室的增删改差,
员工的值班设置。
以及会员卡的设置。
2.需求分析
门诊医疗简介
门诊病人来院后,首先挂号,然后到医生处就诊,医生可能会开具检查单、化验单,病人交费后进行相关的检查和化验,其结果能支持医生判断病情,此时,医生开出治疗单、处方等,病人交费后接受相应处理。
(1)挂号
预约挂号、来医院挂号、急症、医疗卡服务、就诊卡的设计与管理、所挂科目、科室的位置、挂号收费、登记。
(2)就诊(包括检查)
根据具体的症状进行检查、就诊,并开出处方。
(3)收费
①根据检查的项目及医生所开处方的具体药品,和划价系统中的具体金额进行收费。
②支持多种收费方式、收费标准、收费项目、付款比例适应医院对不同病人的服务要求
③提供与门诊收费相关的各类报表
④提供门诊医疗统计、门诊科室及工作人员部分核算数据和工作量统计。
⑤结帐方法灵活安全。
(4)发药
①药房根据处方,检查药房内是否有足够的药方上需要的药,是否需要去药房去取以补足货源。
②可以根据药品的限期及库存下限来来进行缺药、失效预告、对药品进行数量、金额双重控制。
③核对已收费处方无误后予以配药、发药处理。
④支持病人处方的退药处理,并增加门诊药房库存。
(5)药品管理
①各药房以药库为中心,请领药品、入库、调价。
②发药后减去门诊药房库存。
主要业务数据流程分析
门诊挂号
病人首先可以预约挂号;到医院挂号后,病人有没有磁卡,有先读取磁卡的信息;为病人选择科室,病人选择选择医生的级别,医院为该病人指派医生,对该病人收取挂号费用,登记挂号信息。
如图2-1所示:
门诊就医
病人挂号到指定医生就诊,医生询问病人是否是复诊或者初诊(复诊的话查询病人的历史就诊信息);病人向医生叙述病情,医生记录病情和病历;医生对病人阐述的病情给与诊断,诊断然后给病人开药(配置禁忌检查,询问病人同意否,同意的话给病人写电子病历);需要做化验、检查,给该病人开申请单,病人拿着医生开出的药品单;化验、手术、检查、、住院申请单到收费处缴费,缴完费用后到拿着单据到门诊药房取药;化验室、检查室做化验和检验;如图2-2所示:
门诊收费
门诊收费是对病人在门诊就医时所有的费用都在此处缴纳。
接受病人的交费单据,对病人费用进行收费。
收费后打印发票,给病人一张收费单据。
费用每日结算后打入财务科。
如图2-3所示:
门诊药房发药
药房根据处方,检查药房内是否有足够的药房上需要的药,是否需要去药房去补足货源;根据药品的限期及库存下限来进行缺药、失效预告、对药品进行数量、金额双重控制;核对已收费处方无误后给与病人配药、发药处理。
如图2-4所示:
门诊药房管理
对门诊药房的药品出入库进行操作登记。
对门诊挂号的病人需要用药时,需要医生开出的处方单取药,如需退药,需要申请,说明退药的原因,在得到审核通过后方可进行退药操作。
保证药品的及时供应,不耽误病人的病情,通过对各种药品的入库及出库情况进行详细的登记,保证不断药,药品的质量安全。
如图2-5所示:
功能用例模型
整体E-R图
一个病人只有一张病历且一张病历只能属于一个病人;一个病人一次(由时间确定)只有一张挂号单,一张挂号单只能属于一个病人;一个病人由一个医师进行诊断和开处方(处理简单),一个医师可以接诊很多病人和为其开处方;一个病人只有一张处方,一张处方只能属于一个病人;一个病人可以进行多项检查,一项检查也可以进行诊断多个病人;一个病人可以有多个收费项目和收据,但一项收费项目或收据只能对应一个病人;收费项目和收据是多对多关系;一份处方可以对应多种药品,一种药品可以包含在多份处方里;药房对其他各实体的一对多的联系;整体E-R图如图2-7所示:
3.系统设计
系统模块结构设计
医院门诊医疗管理可以分为:
门诊挂号管理模块,门诊收费管理模块,药房管理模块,门诊医生模块四大部分。
结构图如图3-1所示:
图3-1系统模块结构图
各模块的基本功能如下:
(1)门诊挂号管理基本功能。
①门诊挂号
门诊挂号:
病人进行挂号收费处理。
输入病人的信息:
姓名、性别、年龄;挂号类别、挂号科室;挂号的金额,是否优惠。
点击确定,保存该病人挂号的信息。
挂号修改:
挂号员对病人挂号的信息进行修改收费;输入病人的挂号编号,对病人的挂号信息进行修改后,点击修改,进行收费结算。
挂号预约:
病人预先进行网络或者电话预交挂号。
输入预约病人的信息:
预就诊日期、预约科室、预约医生、病人姓名、性别、出生日期、病情说明、预约人、联系方式、预约方式;点击预约保存预约病人的信息。
挂号日结:
对门诊每一天挂号的费用进行结算。
②查询
挂号查询:
按照挂号日期、挂号编码、挂号有效期、姓名、性别、年龄;病人类型、挂号类别、挂号科室,挂号员、等对病人挂号的信息进行查询。
预约查询:
通过查询列的分类对预约的病人进行查询。
交款查询:
通过查询列中的分类、条件值、查询的起止日期对病人的交款费用查询。
(2)门诊收费管理基本功能。
①收费
门诊收费:
对医生给与病人开出的处方给与收费。
输入挂号编码,显示挂号病人的信息以及处方的项目、数量、应收、实收、执行科室;点击收费对该处方单进行收费。
退费申请:
对已收取的费用进行退费申请。
输入发票号,显示要申请退费的病人信息,输入退费的原因,保存病人申请退费的信息。
退费处理:
对已经过审核的退费申请单进行退费。
处方退费:
对已收取的处方费用进行退费。
打印费用清单:
对病人消费的费用清单进行打印。
输入起止日期、收费号或者病人姓名。
点击‘查询打印’就可以查询到该病人这段时间内所有的费用清单。
进行费用清单打印。
收费日结:
对一天的收费进行结算。
②收费查询
未收费处方查询:
按照查询列中的分类、条件值、查询的起止日期对病人未收费处方信息进行查询。
收费查询:
按照查询列中的分类、条件值、查询的起止日期对病人收费处方信息进行查询。
退费查询:
按照查询列中的分类、条件值、查询的起止日期对病人退费的信息进行查询。
③统计
收费日结明细报表:
对门诊收费日结明细报表进行统计和导出数据库。
(3)药房管理基本功能。
①出入库管理
请领计划:
药房向药库进行领药处理。
选择发药库房,在请领药品中输入要请领的药品信息,请领完需要的药品后点击保存。
入库审核:
对入库的药品数据进行审核。
从‘提取’中提取需要审核的入库药品的单据,点击审核进行入库审核。
出库开单:
对药库中出库的药品信息输入系统中。
②盘点
库存查询:
对药库中的库存药品进行查询;选择要查询的库房、药品类别、药品的拼音码,对库存的药品进行查询。
库存盘点:
对库存中的药品进行盘点。
在‘提取’中选择要盘存的药品,点击保存,保存盘存的药品数据。
然后在‘新建’中添加没有库存的药品。
盘存审核:
对库存药品的盘点进行审核。
在‘提取’中选择要审核的盘存号,单击‘审核’对盘存单据审核。
盘存报表打印:
对盘存的报表进行打印。
选择查询条件、盘存号和打印单据的显示方式;对盘存报表进行打印。
③查询
入库查询:
对入库的药品进行查询。
选择审核时间、药品库房、出库方式、单据号、供货单位、药品名称对入库的药品进行查询。
盘存查询:
对药库的药品进行查询。
选择查询的条件:
库房、药品类别、药品拼音码;对药库的药品进行查询和导出。
门诊取药查询:
对门诊取药的药品信息进行查询。
按照查询列中的分类、条件值、查询的起止日期对门诊取药的信息进行查询。
门诊退药查询:
对门诊退药的信息进行查询。
按照查询列中的分类、条件值、查询的起止日期对门诊退药的信息进行查询
合理用药咨询:
对药物合理用量的咨询。
④统计
药品日用量报表:
要药房药品日用量报表进行统计和导出数据库。
⑤取药管理
处方审核:
对医生开出的药品处方进行审核。
点击处方信息中要审核的挂号ID或者处方号。
对该处方进行审核。
门诊取药:
进过药房的人对处方单据进行审核后,门诊把药发给病人。
门诊退药:
病人有某种原因需要退药,可以通过该本门进行退药。
门诊摆药:
药房发药后,病人通过此部门把需要的药品配好后放可取走。
门诊换药:
病人对医生开出的药品要求换药申请。
输入要求换药的病人挂号编码,录入要求换入出和换出的药品,点击‘换药’进行申请。
换药审核:
对病人要求换出换入的药品单据进行审核。
(4)门诊医生基本功能。
①医生工作站
医生对待诊的病人先进行病案登记;让病人主诉下病人,主诉完后对该病人进行诊治,对该病人开医嘱,然后进行医嘱保存。
诊断完后病情后认为病人需要做检验、检查;可以询问病人是否需要,病人需要的话,给病人开检查、检验
②退改处方
退改审核(未取药):
对未取药的审核单进行退改。
选择申请单号,输入退费的原因,然后进行审核。
医生处理退改处方:
主治医生处理已取药的退改处方。
③病人历史信息查询
综合医嘱信息查询:
查询综合医嘱信息。
选择查询条件:
编号查询、病案号查询、病人姓名查询,查询的起止日期,对病人医嘱进行查询。
综合病历查询:
查询病人的综合病历信息。
选择查询条件:
挂号单号、查询的起止日期,对病人病历进行查询。
综合病案查询:
查询病人的综合病案信息。
选择查询条件:
病案号、姓名,对病人病案进行查询。
数据库设计
以下是系统设计所用的主要数据表结构
1、病人信息表
表3-1病人信息表patient
代码
名称
数据类型及长度
是否为空
patientno
病人编号
Int
Null
Name
病人姓名
nvarchar(20)
Null
Sex
性别
nvarchar(20)
Notnull
birthday
出生日期
nvarchar(20)
Notnull
sidno
身份证号
nvarchar(20)
Notnull
sidtype
证件类型
nvarchar(20)
Notnull
Cellphone
电话号码
nvarchar(20)
Notnull
Homeaddress
家庭住址
nvarchar(20)
Notnull
E_mail
邮箱
nvarchar(50)
Notnull
Cardtype
卡类型
nvarchar(10)
Notnull
Cardno
卡号
Int
Notnull
2、药品信息表
表3-2药品信息表Medica
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Primarykey
Unit
单位
varchar(50)
Null
Price
价格
numeric(18,4)
Null
Style
规格
varchar(50)
Null
Class
药品类别
varchar(30)
Null
Better
主治功能
varchar(100)
Null
Factory
生产厂家
varchar(50)
Null
Num
剩余数量
Int
Null
Ableuse
是否可用
Bit
Null
Note
备注
varchar(50)
Null
3、用户信息表
表3-3用户信息表employee
代码
名称
数据类型
是否为空
Id
编号
Int
Primarykey
Name
用户名
nvarchar(20)
Notnull
Password
密码
nvarchar(10)
Notnull
Discipline
部门
nvarchar(10)
Null
Cellphone
联系电话
nvarchar(20)
Null
Introduction
描述
nvarchar(100)
Null
Worktype
职务
nvarchar(10)
Null
4、检查信息表
表3-4检查信息表Items
代码
名称
数据类型
是否为空
Id
编号
Int
Primarykey
Name
检查名称
nvarchar(50)
Null
Chinese
拼音名
nvarchar(50)
Null
Price
价格
numeric(18,0)
Null
Note
备注
nvarchar(50)
Null
5、检验信息表
表3-5检验信息表CheckItem
代码
名称
数据类型
是否为空
Id
编号
Int
Primarykey
Itemname
检验名称
varchar(30)
Notnull
Itemnum
检验编号
varchar(30)
Null
Price
价格
varchar(10)
Null
Unit
单位
varchar(20)
Null
Result
检验结果
varchar(30)
Null
Dept
检验科室
varchar(30)
Null
Note
备注
varchar(100)
Null
6、科室表
表3-6检验信息表department
代码
名称
数据类型
是否为空
Id
编号
Int
Primarykey
Name
科室名称
Varchar(20)
null
description
科室描述
Varchar(20)
Null
7、表
表3-7表appointment
代码
名称
数据类型及长度
是否为空
Apponitmentid
门诊号/票号
Int
Notnull
Patientname
病人名字
Int
Null
Patientno
病历号
Int
Null
Doctor
医生编号
nvarchar(10)
Null
Discipline
科室编号
nvarchar(10)
Null
Thisdate
当前日期
char(10)
Null
Thistime
当前时间
Char(5)
Null
Reg_name
挂号名称
nvarchar(10)
null
Reg_fee
挂号费
numeric(5,2)
null
Reg_done
是否挂号
bit
Null
Dia_name
治疗名称
char(10)
Null
Dia_fee
治疗费用
numeric(18,0)
null
Payment
是否缴费
Int
Null
Symptom
病例
nvarchar(500)
Null
Note
医嘱
nvarchar(500)
Null
Appointment_done
是否预约
bit
Null
8、退药表
表3-8退药表BackMedica
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Primarykey
Payno
支付编号
char(10)
Null
Binren
病人姓名
char(10)
Null
Patientno
病人编号
char(10)
Null
Doc
医生
char(10)
Null
Part
部门
char(10)
Null
Currentdate
当前日期
datetime
Null
Name
药名
nvarchar(50)
Null
Price
价格
numeric(18,2)
Null
Note
备注
nvarchar(50)
Null
Amount
总额
decimal(18,2)
Null
Instore
是否入库
nchar(10)
Null
Reason
退药理由
nvarchar(50)
Null
9、会员卡表
表3-9会员卡表Card
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Primarykey
Name
卡名称
nvarchar(50)
Null
Basdiscount
折扣
char(10)
Null
Note
备注
nvarchar(50)
Null
10、表
表3-10表dict_reg
代码
名称
数据类型及长度
是否为空
Name
挂号名称
nvarchar(10)
Notnull
Price
价钱
numeric(6,2)
Null
Id
编号
Int
Notnull
11、表
表3-11表doc_score
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Notnull
Patient
病人名字
nvarchar(50)
Notnull
Prescription
评价
nvarchar(50)
Notnull
Score
得分
Int
Notnull
Scoredate
时间
smalldatetime
Notnull
Doctor
医生
nvarchar(50)
Null
12、表
表3-12表PayRecord
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Primarykey
Piaohao
票号
char(10)
Null
Binlihao
病历号
char(10)
Null
Name
病人名字
char(10)
Null
Doctor
医生
char(10)
Null
Dept
科室
nvarchar(50)
Null
Cardid
卡号
char(10)
Null
Medicalpay
药费
numeric(18,0)
Null
Checkpay
检查费
numeric(18,0)
Null
Patientpay
门诊费
numeric(18,0)
Null
Registerpay
挂号费
numeric(18,0)
Null
Currentdate
时间
datetime
Null
Paymentmenthod
卡类型
nvarchar(50)
Null
paytreatfee
费用
numeric(18,0)
Null
13、表
表3-13表UseCheck
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Notnull
payno
门诊号
char(10)
Null
BinRen
病人
char(10)
Null
doc
医生
char(10)
Null
Part
科室
nvarchar(50)
Null
ItemName
检验名称
nvarchar(50)
Null
patientno
病历号
char(10)
Null
Unit
单位
nvarchar(50)
Null
Price
价钱
nvarchar(50)
Null
Result
结果
nvarchar(50)
Null
Note
备注
nvarchar(50)
Null
CurrentDate
时间
datetime
Null
14、表
表3-14表UseFee
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Primarykey
payno
门诊号
char(10)
Null
BinRen
病人
char(10)
Null
patientno
病历号
char(10)
Null
doc
医生
char(10)
Null
Part
科室
nvarchar(50)
Null
CurrentDate
时间
datetime
Null
Name
检查名称
nvarchar(50)
Null
Price
价钱
numeric(18,0)
Null
Note
备注
nvarchar(50)
Null
15、表
表3-15表UseMedica
代码
名称
数据类型及长度
是否为空
Id
编号
Int
Primarykey
payno
门诊号
Int
Notnull
BinRen
病人
char(10)
Null
doc
医生
char(10)
Null
Part
科室
char(10)
Null
Name
药名
nvarchar(50)
Null
Num
数量
Int
Null
Price
价钱
numeric(18,0)
Null
Amount
总额
numeric(18,0)
Null
Unit
单位
char(10)
Null
patientno
病历号
int
Null
CurrentDate
时间
datetime
Null
AmendCount
总额
int
Null
类图
1.预约/挂号
2.病人
3.员工
折扣卡类图:
检查类图
检验类图:
药品管理类图:
退药管理类图:
用药类图:
药品检验类图:
设计模式:
简单三层模式
整个系统框架用了简单三层模式分为UI层,逻辑业务层,数据访问层
优点:
1.开发人员可以只关