医院信息管理系统门诊挂号表结构及设计分析.docx
- 文档编号:5165011
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:27
- 大小:104.72KB
医院信息管理系统门诊挂号表结构及设计分析.docx
《医院信息管理系统门诊挂号表结构及设计分析.docx》由会员分享,可在线阅读,更多相关《医院信息管理系统门诊挂号表结构及设计分析.docx(27页珍藏版)》请在冰豆网上搜索。
医院信息管理系统门诊挂号表结构及设计分析
门诊挂号表结构及设计分析
∙业务分析:
门诊挂号是医院在使用医院信息管理系统时最早可能接触的子系统,它主要完成病人的挂号、收费业务,以及医院内部及与院外单位结算。
●所需功能分析:
门诊挂号主要功能:
流程图:
1)gh_base_request(门诊基础号表)
2)gh_base_request_segment(门诊号分配定义)
3)gh_record(挂号纪录)
4)gh_detail_charge(费用明细)
5)gh_receipt(发票表)
6)gh_receipt_charge(账单费用)
7)gh_deposit(现金账)
8)gh_zd_clinic_type(号别字典)
9)gh_zd_clinic_charge(号别字典费用项目明细)
10)gh_zd_request_type(号类字典)
11)gh_zd_request_charge(号类字典费用项目明细)
12)ic_register(IC卡登记)
13)ic_deposit(IC流水帐)
14)gh_op_receipt(发票号初始)
15)gh_doctor_out(医生出诊计划)
16)mz_patient_mi(主索引)
17)mz_visit_table
号表管理所面对问题:
1)医生有权确定自己号开放标志、开放时间段
2)对某些号不能随便加号,由医院统一控制
3)特定窗口只能挂特定号
1.基础字典维护:
gh_zd_clinic_type(号别字典):
定义医院挂号号别如:
普通号、专家号、教授号等
gh_zd_clinic_charge(号别字典费用项目明细):
定义医院某种号别应收费用项目:
挂号费、诊疗费、服务费、附加费等
gh_zd_request_type(号类字典):
定义医院挂号号类:
如门诊号、预约号、电话预约号等
gh_zd_request_charge(号类字典费用项目明细):
定义医院某种号类应收费用项目:
服务费、附加费等
2.基础号表维护:
gh_base_request(门诊基础号表):
按科室、医生、号别等划分定义医院1~4周每天挂号总数,主要用来生成将来医院使用挂号纪录表
gh_base_request_segment(基础号表分配定义):
将某种号别总号数按照号类划分成多段,用以确定按不同号类挂号时应分配的号顺序
3.gh_record(挂号纪录):
医院对外使用挂号纪录,有两种情况区分
a-纪录病人挂号情况
b-纪录未挂出号情况
4.gh_doctor_schedule(医生出诊计划):
由医生自己确定在某时间段内不出诊,在生成挂号纪录时应判断医生是否在不出诊期内,若是则不生成此医生挂号纪录
5.在挂号时费用处理是非常重要功能,主要涉及三张表
gh_detail_charge(费用明细):
纪录病人挂号费用明细情况
gh_receipt(发票表):
病人结算时按费用明细生成结算纪录
gh_receipt_charge(帐单费用):
纪录病人某次结账各付款方账单费用
gh_deposit(现金流水账):
纪录病人交预交金、结账时往来流水账
6.ic_register(IC卡登记):
纪录病人在医院购买IC卡的情况
7.ic_deposit(IC流水帐):
纪录病人在医院使用IC卡花费流水账
主要模块及数据操作
1.基础号表维护模块
该模块为生成使用号表做数据准备。
主要包括两张表:
gh_base_request,gh_base_request_segment,表结构如下表:
gh_base_request(门诊基础号定义)
字段
数据类型
宽度
描述
主键
数据来源
request_sn
int
4
唯一编号(与detail相关唯一标示)
*
gh_config.base_request_sn
Week
tinyint
1
周
i
Day
tinyint
1
天
i
Ampm
char
1
上午/下午(a/p)
i
Unit_sn
char
7
科别
i
zd_unit.code
group_sn
char
7
组
i
zd_unit.code
doctor_sn
char
5
医生姓名
i
a_employee_mi.code
clinic_type
char
2
号别
i
gh_clinic_code
totle_num
smallint
2
总号数
enter_opera
char
5
操作员
a_employee_mi.code
enter_date
datetime
8
操作日期
Open_flag
char
1
开放标志1=开放(此号可用)
window_no
tinyint
4
窗口号
gh_zd_window_no
说明:
基础号主表,按周(1-…)和天(1-7)预先定义医院各科室、医生挂号情况,作为以后医院生成使用号表的基础。
数据生成方法:
此表数据属于单表维护,凡是字段标明数据来源的均从相应字典取数据,其它
由用户自录
特殊字段数据含义:
open_flag指明此纪录是否使用,0=相当删除此纪录,只为留痕
window_no指明此纪录只为医院特定挂号窗口使用
gh_base_request_segment(门诊号基础分配定义)
字段
数据类型
宽度
描述
主键
数据来源
request_sn
int
4
唯一编号(与gh_request.request_sn关联)
*
gh_base_request.request_sn
segment
tinyint
1
区间号
reqtype
char
1
号类
gh_zd_request_type.code
begin_no
Smallint
2
起始号
*
End_no
Smallint
2
结束号
说明:
基础号子表,针对主表一条纪录(如专家号),预先按段定义此种号别有哪些号类型(如窗口预约、电话预约、网上预约)以及总号数按号类号顺序的分配情况。
数据生成方法:
此表数据是gh_base_request的子表,与主表构成一对多关系,数据内容应与主表同时生成,凡是字段标明数据来源的均从相应字典取数据,其它由用户自录
特殊字段数据含义:
begin_no-指明在某一号类内起始号顺序
end_no-指明在某一号类内结束号顺序
要求sum(End_no-Begin_no) 具体说明如下: a.当录入图标在窗体的上半部分时,增加、删除的是gh_base_request表; b.当录入图标在窗体的下半部分时,增加、删除的是gh_base_request_segment表 c.控件的颜色为黄色的,是必须录入项,若不录,则会在提交时屏幕右上角‘信息提示区域’出现提示信息 d.这两张表为主从关系,gh_base_request为主表,gh_base_request_segment为从表,(主表一条记录对应从表多条记录),查询按钮可弹出窗口对主表进行查询 e.保存按钮,可对主从表同时进行保存,从表的起始号和结束号必须与主表的总号数有种对应关系,起始号、结束号不能有交叉,从表的最后一条记录的结束号必须等于总号数 f.当删除gh_base_request表记录时,子表gh_base_request_segment的相应主表的记录(一条或多条)同时被删除 g.gh_base_request.op_id取全局变量gv_user_mi,op_date取服务器时间 h.录入从表时,要求起始号和结束号不能交叉,若交叉保存时会有提示信息 2.生成号表模块 主要功能是由基础号表维护模块 (1)的两张表,生成使用号表(gh_record) 使用号表(gh_record)的表结构如下: gh_record(挂号纪录) 字段 数据类型 宽度 描述 主键 record_sn identityint 4 流水号 * request_date datetime 8 日期 i req_type char 2 号类 i ampm char 2 上午/下午(a/p) i unit_sn char 7 科别 i group_sn char 7 组 i doctor_sn char 5 医生姓名 i clinic_type char 2 号别 i sequence_no smallint 2 挂号顺序号(加号置负) i patient_id char 12 病人ID times smallint 2 次数(退号置负) i name varchar 32 病人名 response_type char 3 病人身份 enter_opera char 5 录入操作员 enter_date datetime 8 录入时间 report_date datetime 8 报表时间(打报表时间) open_flag char 1 开放标志 visited_flag char 1 到院标志,1已到,0未到,9应退 window_no tinyint 1 窗口号 数据生成方法: 此表数据是首先由gh_base_request结合gh_base_request_segment在生成号表时生成,凡是gh_base_request字段相同数据均复制过来,其它数据在挂号时填入,一般情况下挂号员无权增加纪录,在得到医生同意下,可增加本医生话号纪录,此时sequence_no负顺序增加以代表加号,挂号纪录内容一般由基础号表生成时填入,但在加号情况时除了系统自动产生字段内容外其它字段内容由挂号员填入 特殊字段数据含义: sequence_no——顺序号,系统自动产生 patient_id——挂号时通过条件从mz_patient_mi找到patient_id填入 times——挂号时通过条件从mz_patient_mi找到max_times+1填入,病 人退号置负 name——挂号时通过条件从mz_patient_mi找到name填入response_type——挂号时通过条件从mz_patient_mi找到response_type 填入 report_date——挂号员出结算报表填入当前时间 open_flag——代表此纪录是否可用,先由系统自动生成,挂号员根据医 生要求可修改 visited_flag——病人打发票置此标志0=未到、1=已到 window_no——gv_window_no a.窗体的左半部分为选择的所需号表的时间范围,按查询按钮列出相应时间段的基础号表记录,过滤按钮可在查询结果的基础上进一步查询(具体),按生成按钮则根据基础号表的信息生成使用号表(gh_record,窗体的右半部分) b.在选择所需号表时间范围时,如周或天没有录入,则在窗体右上角信息提出区域显示提示信息 c.刷新按钮为重新开始 d.根据基础号表(gh_base_request)的总号数(n)和段号表(gh_base_request_segment)结合医生外出表(gh_doctor_out)生成使用号表的n条记录(sequence_no为1….n),times,patient_id,name,response_type,enter_opera,enter_date,report_date,visited_flag字段为空,即未挂号状态 3.挂号记录维护模块 表为gh_record 主要功能对未挂出的使用号表(gh_record)进行维护 a.查询按钮可弹出窗口根据条件对使用号表进行查询,查询结果列在窗体的下半部分 b.该模块可对使用号表进行增加、修改、删除(patient_id为空) c.当增加挂号记录时,录入控件颜色为黄色的必须录入 d.保存后挂号顺序号(sequence_no)根据修改结果进行重新排序,对已经挂出的号的顺序号不变或只会提前 e.维护时,提示信息显示在信息提示窗口 4.加号处理模块(gh_record) 根据加号数量增加gh_record的记录,所加的号sequence_no为负,属于单表维护,各字段由用户自录。 上部分为查询条件,中间为加号的临时使用表,下部分为使用号表(gh_record)。 点击增加按钮增加临时使用表,保存时才增加至使用号表(gh_record)中;点击删除按钮可删除加号临时表中记录或使用号表(gh_record)记录。 5.挂号业务窗口 主要涉及的表gh_record,gh_op_receipt,gh_detail_charge,gh_deposit, gh_receipt,gh_receipt_charge,mz_patient_mi,mz_visit_table 表结构如下: gh_detail_charge(费用明细) 字段 数据类型 宽度 描述 主键 数据来源 patient_id char 12 病人id * gh_record.patient_id times smallint 2 次数(退号置负) * gh_record.times item_no int 4 流水号 * 系统产生 ledger_sn int 4 结账次数 * mz_patient_mi.max_ledgern_sn+1 happen_date datetime 8 发生时间(申诉冲算使用) 系统时间 charge_code char 6 收费码 zd_charge_item.code audit_code char 5 核算码(来自zd_audit_item) zd_charge_item.audit_code bill_code char 3 账单码 exec_sn char 7 执行科室 org_price decimal 8.2 应收费用 zd_charge_item.charge_amount charge_price decimal 8.2 实收费用 见算法A charge_amount int 4 数量 1 charge_group char 2 类别分组 zd_charge_item.per_group enter_opera char 5 录入员 gv_user_mi enter_date datetime 8 录入时间 getdate() enter_win_no tinyint 1 录入窗口 gv_win_no price_opera char 5 收费员 gv_user_mi price_date datetime 8 收费时间 getdate() confirm_win_no tinyint 1 收费窗口 gv_win_no charge_status char 1 状态(录入\划价、收费、打票) trans_flag char 1 传输标志 gh_zd_clinic_charge.trans_flag 或 gh_zd_clinic_type.trans_flag fit_type char 1 gh_receipt(发票) 字段 数据类型 宽度 描述 主键 数据来源 patient_id char 12 病人id * gh_detail_charge.patient_id times smallint 2 次数 gh_record.times ledger_sn int 4 结账次数 * gh_detail_charge.Ledger_sn receipt_sn int 4 机制号 mz_patient_mi.max_receipt_sn+1 pay_unit char 2 付款方 zd_charge_percent.pay_unit charge_total float 金额 settle_opera char 5 结算员 当前操作员 settle_date datetime 8 结算时间 系统时间 price_opera char 5 收费人 当前操作员 price_date datetime 8 收费时间 系统时间 report_date datetime 8 报表时间 报表时系统时间 receipt_no varchar 12 手工号 操作员录入或自动 charge_status char 1 结算类型(1=结算、2=结账) gh_receipt_charge(发票账单明细) 字段 数据类型 宽度 描述 主键 patient_id char 12 病人id * times smallint 2 次数 * ledger_sn int 4 结账次数 * receipt_sn int 4 机制号 * bill_code char 3 账单码 * charge decimal 8.2 费用 pay_unit decimal 3 负款方 gh_deposit(现金流水帐) 字段 数据类型 宽度 描述 主键 patient_id char 4 病人id * item_no int 4 流水号 * ledger_sn int 4 结账次数 * times smallint 2 次数 * charge decimal 8.2 金额 cheque_type char 1 类型(a=现金、0=支票、记账单、汇票、内部支票、内部转账、欠账单、IC卡…) cheque_no varchar 12 发票号 depo_status char 1 状态(1=交、2=退、3=结转、4=冲账、欠费、欠费补交…) price_opera char 5 收费员 price_date datetime 8 收费时间 report_date datetime 8 报表日期 gh_op_receipt(发票号初始) 字段 数据类型 宽度 描述 主键 operator char 5 操作员 * happen_date datetime 8 发生时间 * start_no varchar 10 起始号 * current_no varchar 10 当前号 * end_no varchar 10 结束号 step_length smallint 2 步长 deleted_flag char 1 删除标志 说明: 纪录病人挂号情况。 挂号业务流程图: Y N N N Y a.打开挂号业务窗口前首先弹出发票号初始窗口(gh_op_receipt)———单表维护 必须向该表中添加记录(因为在打号条时(非手工发票),需取该表的current_no作为发票号),起始号、结束号要求为10位 b.挂号窗口 窗口下方为病人挂号信息 选择相应的号后必须先计价方可打票,成功后,会修改该涉及的所有表,具体如下: 表gh_record: gh_record.patient_id=mz_patient_mi.patient_id gh_record.name=mz_patient_mi.name gh_record.times=mz_patient_mi.max_times 若人工选号选中,则号表顺序号(sequence_no)同挂号员所选。 gh_record.response_type=mz_paitient_mi.response_type gh_record.enter_opera=gv_user_mi(全局变量) gh_record.enter_date=服务器时间 visited_flag=1(当clinic_type<>电话预约) visited_flag=0(当clinic_type=电话预约) 当手工发票没有选中时, 表gh_op_receipt: 每挂出一个号gh_op_receopt.current_no+步长step_length, 当current_no>end_no时,则此次挂号失败 表gh_detail_charge: 根据gh_record.clinic_type,gh_record.req_type,在gh_zd_clinic_charge和gh_zd_request_charge中找到相应的收费项目(zd_charge_item) 数据生成方法: 此表数据在挂号纪录生成时由程序生成,一条挂号纪录按号别、号类可生成多条明细 由一条挂号纪录生成费用明细算法: 通过挂号纪录可知病人patient_id,times,clinic_type,req_type,response_type,check_type(费别)在知道上述条件情况下,即可完成 patient_id=gh_record.patient_id times=gh_record.times item_no=记录号 ledger_sn=mz_patient_mi.max_ledger_sn happen_date=系统服务时间 charge_code=gh_zd_clinic_charge.charge_code或gh_zd_request_charge.charge_code audit_code=zd_charge_item.audit_code bill_code=zd_charge_item.mz_bill_item exec_sn=zd_charge_item.exec_unit org_price=zd_charge_item.charge_price charge_amount=1 charge_group=zd_c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 医院 信息管理 系统 门诊 挂号 结构 设计 分析