收藏 分销(赏)

HIS医疗管理系统设计.doc

上传人:快乐****生活 文档编号:4527809 上传时间:2024-09-26 格式:DOC 页数:36 大小:3.24MB 下载积分:12 金币
下载 相关 举报
HIS医疗管理系统设计.doc_第1页
第1页 / 共36页
HIS医疗管理系统设计.doc_第2页
第2页 / 共36页


点击查看更多>>
资源描述
HIS医疗管理系统 目录 HIS医疗管理系统 1 1、 绪论 3 1、1 系统开发背景 3 1、2简述 4 1、3 系统得基本构成 4 2、 需求分析 6 2、1 门诊医疗简介 6 2、2 主要业务数据流程分析 7 2、2、1 门诊挂号 7 2、2、2门诊就医 8 2、2、3门诊收费 9 2、2、4 门诊药房发药 9 2、2、5 门诊药房管理 10 2、3、1 功能用例模型 10 2、3、2整体E-R图 12 3、系统设计 14 3、1系统模块结构设计 14 3、2数据库设计 18 1、 绪论 1、1 系统开发背景 门诊医疗就是医院管理得门面,流量大,手续较繁锁,在手工方式下,医护人员要做大量不必要得重复工作、效率低、准确性差、不方便管理,影响工作效率,造成了很多就诊病人得不到合理有效得快捷就诊服务,甚至影响医疗质量,为此,越来越多得医院加快了信息化建设得步伐,系统目前运行状况良好,有效地优化服务与工作环境、使病员与医生情绪得以放松,提高了服务效率与质量、树立了医院得良好形象,使门诊工作可以高效有序得运转,提高了医院得经济效益,促进医院得发展。 开发工具:C# VS2013 SQL2008(MySQL) 开发者: XXXXXXX 1、2简述 系统采用流行得C/S结构模式。系统得分析设计采用面向对象得技术,用Visio等工具进行辅助设计。 1、3 系统得基本构成 门诊部医疗信息管理系统主要就是对医院门诊部挂号与收费,药房以及医生就诊进行管理。 主要功能模块: 导医服务模块 医师服务模块 药房服务模块 门诊统计模块 基本设置模块 首先导医服务作为医院面对病人得第一个门面,主要就是针对给病人登记:登记病人得一些基本信息;病人预约:预约医生,科室,时间;病人挂号,前台交费;药品退费:某些不需要得要进行退款;欠费催款;评价管理:对就诊得医生进行评价。 医师服务得主要功能就是通过病人得先主诉病情,然后对病人进行诊治,给病人进行检查,可以查询病人得历史信息;给病人开处方,添加病人检查与检验得信息,对病人得处方进行退药,打印诊断书,打印医令。 对于药房服务主要功能就是对医院得药品进行入出库进行管理,对库存中得药品进行盘点与审核与对药品得增加与修改,对医生得开得药方进行确认并发放,对那些已经退掉得药重新入库。 门诊统计对一天得门诊量与费用得统计,也可以按照科室来进行查询。 基本设置主要就是对检验信息设置,检查信息得设置,对科室得增删改差, 员工得值班设置。以及会员卡得设置。 2、 需求分析 2、1 门诊医疗简介 门诊病人来院后,首先挂号,然后到医生处就诊,医生可能会开具检查单、化验单,病人交费后进行相关得检查与化验,其结果能支持医生判断病情,此时,医生开出治疗单、处方等,病人交费后接受相应处理。 (1)挂号 预约挂号、来医院挂号、急症、医疗卡服务、就诊卡得设计与管理、所挂科目、科室得位置、挂号收费、登记。 (2)就诊(包括检查) 根据具体得症状进行检查、就诊,并开出处方。 (3)收费 ①根据检查得项目及医生所开处方得具体药品,与划价系统中得具体金额进行收费。 ②支持多种收费方式、收费标准、收费项目、付款比例适应医院对不同病人得服务要求 ③提供与门诊收费相关得各类报表 ④提供门诊医疗统计、门诊科室及工作人员部分核算数据与工作量统计。 ⑤结帐方法灵活安全。 (4)发药 ①药房根据处方,检查药房内就是否有足够得药方上需要得药,就是否需要去药房去取以补足货源。 ②可以根据药品得限期及库存下限来来进行缺药、失效预告、对药品进行数量、金额双重控制。 ③核对已收费处方无误后予以配药、发药处理。 ④支持病人处方得退药处理,并增加门诊药房库存。 (5)药品管理 ①各药房以药库为中心,请领药品、入库、调价。 ②发药后减去门诊药房库存。 2、2 主要业务数据流程分析 2、2、1 门诊挂号 病人首先可以预约挂号;到医院挂号后,病人有没有磁卡,有先读取磁卡得信息;为病人选择科室,病人选择选择医生得级别,医院为该病人指派医生,对该病人收取挂号费用,登记挂号信息。如图2-1所示: 2、2、2门诊就医 病人挂号到指定医生就诊,医生询问病人就是否就是复诊或者初诊(复诊得话查询病人得历史就诊信息);病人向医生叙述病情,医生记录病情与病历;医生对病人阐述得病情给与诊断,诊断然后给病人开药(配置禁忌检查,询问病人同意否,同意得话给病人写电子病历);需要做化验、检查,给该病人开申请单,病人拿着医生开出得药品单;化验、手术、检查、、住院申请单到收费处缴费,缴完费用后到拿着单据到门诊药房取药;化验室、检查室做化验与检验;如图2-2所示: 2、2、3门诊收费 门诊收费就是对病人在门诊就医时所有得费用都在此处缴纳。接受病人得交费单据,对病人费用进行收费。收费后打印发票,给病人一张收费单据。费用每日结算后打入财务科。如图2-3所示: 2、2、4 门诊药房发药 药房根据处方,检查药房内就是否有足够得药房上需要得药,就是否需要去药房去补足货源;根据药品得限期及库存下限来进行缺药、失效预告、对药品进行数量、金额双重控制;核对已收费处方无误后给与病人配药、发药处理。如图2-4所示: 2、2、5 门诊药房管理 对门诊药房得药品出入库进行操作登记。对门诊挂号得病人需要用药时,需要医生开出得处方单取药,如需退药,需要申请,说明退药得原因,在得到审核通过后方可进行退药操作。保证药品得及时供应,不耽误病人得病情,通过对各种药品得入库及出库情况进行详细得登记,保证不断药,药品得质量安全。如图2-5所示: 2、3、1 功能用例模型 2、3、2整体E-R图 一个病人只有一张病历且一张病历只能属于一个病人;一个病人一次(由时间确定)只有一张挂号单,一张挂号单只能属于一个病人;一个病人由一个医师进行诊断与开处方(处理简单),一个医师可以接诊很多病人与为其开处方;一个病人只有一张处方,一张处方只能属于一个病人;一个病人可以进行多项检查,一项检查也可以进行诊断多个病人; 一个病人可以有多个收费项目与收据,但一项收费项目或收据只能对应一个病人;收费项目与收据就是多对多关系;一份处方可以对应多种药品,一种药品可以包含在多份处方里;药房对其她各实体得一对多得联系;整体E-R图如图2-7所示: 3、系统设计 3、1系统模块结构设计 医院门诊医疗管理可以分为:门诊挂号管理模块,门诊收费管理模块,药房管理模块,门诊医生模块四大部分。结构图如图3-1所示: 查 询 收费查询 查询 门诊医疗管理系统 统 门诊挂号管理 药房管理 门诊收费管理 门诊挂号 统计 发票管理 统计 收费 取药管理 统计 盘点 出入库管理 医生工作站 退改处方 门诊医生模块 病人信息查询 图3-1系统模块结构图 各模块得基本功能如下: (1)门诊挂号管理基本功能。 ①门诊挂号 门诊挂号:病人进行挂号收费处理。输入病人得信息:姓名、性别、年龄;挂号类别、挂号科室;挂号得金额,就是否优惠。点击确定,保存该病人挂号得信息。 挂号修改:挂号员对病人挂号得信息进行修改收费;输入病人得挂号编号,对病人得挂号信息进行修改后,点击修改,进行收费结算。 挂号预约:病人预先进行网络或者电话预交挂号。输入预约病人得信息:预就诊日期、预约科室、预约医生、病人姓名、性别、出生日期、病情说明、预约人、联系方式、预约方式;点击预约保存预约病人得信息。 挂号日结:对门诊每一天挂号得费用进行结算。 ②查询 挂号查询:按照挂号日期、挂号编码、挂号有效期、姓名、性别、年龄;病人类型、挂号类别、挂号科室,挂号员、等对病人挂号得信息进行查询。 预约查询:通过查询列得分类对预约得病人进行查询。 交款查询:通过查询列中得分类、条件值、查询得起止日期对病人得交款费用查询。 (2)门诊收费管理基本功能。 ①收费 门诊收费:对医生给与病人开出得处方给与收费。输入挂号编码,显示挂号病人得信息以及处方得项目、数量、应收、实收、执行科室;点击收费对该处方单进行收费。 退费申请:对已收取得费用进行退费申请。输入发票号,显示要申请退费得病人信息,输入退费得原因,保存病人申请退费得信息。 退费处理:对已经过审核得退费申请单进行退费。 处方退费:对已收取得处方费用进行退费。 打印费用清单:对病人消费得费用清单进行打印。输入起止日期、收费号或者病人姓名。点击‘查询打印’就可以查询到该病人这段时间内所有得费用清单。进行费用清单打印。 收费日结:对一天得收费进行结算。 ②收费查询 未收费处方查询:按照查询列中得分类、条件值、查询得起止日期对病人未收费处方信息进行查询。 收费查询:按照查询列中得分类、条件值、查询得起止日期对病人收费处方信息进行查询。 退费查询:按照查询列中得分类、条件值、查询得起止日期对病人退费得信息进行查询。 ③统计 收费日结明细报表:对门诊收费日结明细报表进行统计与导出数据库。 (3)药房管理基本功能。 ①出入库管理 请领计划:药房向药库进行领药处理。选择发药库房,在请领药品中输入要请领得药品信息,请领完需要得药品后点击保存。 入库审核:对入库得药品数据进行审核。从‘提取’中提取需要审核得入库药品得单据,点击审核进行入库审核。 出库开单:对药库中出库得药品信息输入系统中。 ②盘点 库存查询:对药库中得库存药品进行查询;选择要查询得库房、药品类别、药品得拼音码,对库存得药品进行查询。 库存盘点:对库存中得药品进行盘点。在‘提取’中选择要盘存得药品,点击保存,保存盘存得药品数据。然后在‘新建’中添加没有库存得药品。 盘存审核:对库存药品得盘点进行审核。在‘提取’中选择要审核得盘存号,单击‘审核’对盘存单据审核。 盘存报表打印:对盘存得报表进行打印。选择查询条件、盘存号与打印单据得显示方式;对盘存报表进行打印。 ③查询 入库查询:对入库得药品进行查询。选择审核时间、药品库房、出库方式、单据号、供货单位、药品名称对入库得药品进行查询。 盘存查询:对药库得药品进行查询。选择查询得条件:库房、药品类别、药品拼音码;对药库得药品进行查询与导出。 门诊取药查询:对门诊取药得药品信息进行查询。按照查询列中得分类、条件值、查询得起止日期对门诊取药得信息进行查询。 门诊退药查询:对门诊退药得信息进行查询。按照查询列中得分类、条件值、查询得起止日期对门诊退药得信息进行查询 合理用药咨询:对药物合理用量得咨询。 ④统计 药品日用量报表:要药房药品日用量报表进行统计与导出数据库。 ⑤取药管理 处方审核:对医生开出得药品处方进行审核。点击处方信息中要审核得挂号ID或者处方号。对该处方进行审核。 门诊取药:进过药房得人对处方单据进行审核后,门诊把药发给病人。 门诊退药:病人有某种原因需要退药,可以通过该本门进行退药。 门诊摆药:药房发药后,病人通过此部门把需要得药品配好后放可取走。 门诊换药:病人对医生开出得药品要求换药申请。输入要求换药得病人挂号编码,录入要求换入出与换出得药品,点击‘换药’进行申请。 换药审核:对病人要求换出换入得药品单据进行审核。 (4)门诊医生基本功能。 ①医生工作站 医生对待诊得病人先进行病案登记;让病人主诉下病人,主诉完后对该病人进行诊治,对该病人开医嘱,然后进行医嘱保存。诊断完后病情后认为病人需要做检验、检查;可以询问病人就是否需要,病人需要得话,给病人开检查、检验 ②退改处方 退改审核(未取药):对未取药得审核单进行退改。选择申请单号,输入退费得原因,然后进行审核。 医生处理退改处方:主治医生处理已取药得退改处方。 ③病人历史信息查询 综合医嘱信息查询:查询综合医嘱信息。选择查询条件:编号查询、病案号查询、病人姓名查询,查询得起止日期,对病人医嘱进行查询。 综合病历查询:查询病人得综合病历信息。选择查询条件:挂号单号、查询得起止日期,对病人病历进行查询。 综合病案查询:查询病人得综合病案信息。选择查询条件:病案号、姓名,对病人病案进行查询。 3、2数据库设计 以下就是系统设计所用得主要数据表结构 1、病人信息表 表3-1 病人信息表 patient 代码 名称 数据类型及长度 就是否为空 patientno 病人编号 Int Null Name 病人姓名 nvarchar(20) Null Sex 性别 nvarchar(20) Not null birthday 出生日期 nvarchar(20) Not null sidno 身份证号 nvarchar(20) Not null sidtype 证件类型 nvarchar(20) Not null Cellphone 电话号码 nvarchar(20) Not null Homeaddress 家庭住址 nvarchar(20) Not null E_mail 邮箱 nvarchar(50) Not null Cardtype 卡类型 nvarchar(10) Not null Cardno 卡号 Int Not null 2、药品信息表 表3-2 药品信息表 Medica 代码 名称 数据类型及长度 就是否为空 Id 编号 Int Primary key 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 Primary key Name 用户名 nvarchar(20) Not null Password 密码 nvarchar(10) Not null Discipline 部门 nvarchar(10) Null Cellphone 联系电话 nvarchar(20) Null Introduction 描述 nvarchar(100) Null Worktype 职务 nvarchar(10) Null 4、检查信息表 表3-4检查信息表 Items 代码 名称 数据类型 就是否为空 Id 编号 Int Primary key Name 检查名称 nvarchar(50) Null Chinese 拼音名 nvarchar(50) Null Price 价格 numeric(18, 0) Null Note 备注 nvarchar(50) Null 5、检验信息表 表3-5检验信息表 CheckItem 代码 名称 数据类型 就是否为空 Id 编号 Int Primary key Itemname 检验名称 varchar(30) Not null 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 Primary key Name 科室名称 Varchar(20) null description 科室描述 Varchar(20) Null 7、表 表3-7表 appointment 代码 名称 数据类型及长度 就是否为空 Apponitmentid 门诊号/票号 Int Not null 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 Primary key 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 Primary key Name 卡名称 nvarchar(50) Null Basdiscount 折扣 char(10) Null Note 备注 nvarchar(50) Null 10、表 表3-10表 dict_reg 代码 名称 数据类型及长度 就是否为空 Name 挂号名称 nvarchar(10) Not null Price 价钱 numeric(6, 2) Null Id 编号 Int Not null 11、表 表3-11表 doc_score 代码 名称 数据类型及长度 就是否为空 Id 编号 Int Not null Patient 病人名字 nvarchar(50) Not null Prescription 评价 nvarchar(50) Not null Score 得分 Int Not null Scoredate 时间 smalldatetime Not null Doctor 医生 nvarchar(50) Null 12、表 表3-12表 PayRecord 代码 名称 数据类型及长度 就是否为空 Id 编号 Int Primary key 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 Not null 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 Primary key 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 Primary key payno 门诊号 Int Not null 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、开发人员可以只关注整个结构中得其中某一层 2、可以很容易得用新得实现来替换原有层次得实现; 3、可以降低层与层之间得依赖 4、有利于标准化; 5、利于各层逻辑得复用。 缺点: 1、降低了系统得性能。这就是不言而喻得。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应得数据,如今却必须通过中间层来完成。 2、有时会导致级联得修改。这种修改尤其体现在自上而下得方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应得业务逻辑层与数据访问层中都增加相应得代码。 策略模式与简单工厂模式与抽象工厂模式得结合应用 简单工厂模式:就是由一个工厂对象决定创建出哪一种产品类得实例。简单工厂模式就是工厂模式家族中最简单实用得模式,可以理解为就是不同工厂模式得一个特殊实现 策略模式:定义了一系列得算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它得客 户而独立变化。(原文:The 1、需要使用ConcreteStrategy提供得算法。 2、 内部维护一个Strategy得实例。 3、 负责动态设置运行时Strategy具体得实现算法。 4、负责跟Strategy之间得交互与数据传递。 Strategy(抽象策略类): 1、 定义了一个公共接口,各种不同得算法以不同得方式实现这个接口,Context使用这个接口调用不同得算法,一般使用接口或抽象类实现。 ConcreteStrategy(具体策略类): 2、 实现了Strategy定义得接口,提供具体得算法实现。 主要运用在了计算医疗费用得优惠上,以下列出部分代码 public class CashFactory { CashSuper cs = null; public CashFactory (string type, string regdo) { if (type == "现金" || type == "医疗卡") { cs = new CashNormal(); } else { cs = new CashRebate(regdo); } } public double GetResult(double moeny) { return cs、acceptCash(moeny); } } public class CashNormal : CashSuper { public override double acceptCash(double Total) { return Total; } } public class CashRebate:CashSuper { public string moneyRebate = "";//折扣 public CashRebate(string moneyRebate)//初始化必须输入折扣 { this、moneyRebate = moneyRebate; } public override double acceptCash(double Total) { return Total * double、Parse(moneyRebate); } } public abstract class CashSuper { public abstract double acceptCash(double Total); } 单例模式 在它得核心结构中只包含一个被称为单例类得特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数得控制并节约系统资源。如果希望在系统中某个类得对象只能存在一个,单例模式就是最好得解决方案。 本系统中运用在每一个窗体中,至始至终只会创建一个出来 public class Singleton { private static Singleton instance; private Singleton() { } public static Singleton GetInstance() { if(instance==null) { instance=new Singleton(); } return instance; } }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服