1、门诊收费管理系统姓名 十全石学校 sdongdaxue班级 09 计四1. 文档目的作为门诊收费管理系统软件设计文档的重要组成部分,本文档主要对该软后台数据库的概念模型设计和物理模型设计作出了统一的规定,同时确定了每个表的数据字典结构。它是开发人员,测试人员编码及测试的重要参考依据。(注:本系统不包括挂号退号,以及退药等功能且数据库设计有点混乱仅供参考,是为应付数据库课程设计所作,与真实系统相差很远。)2 系统目的随着网络经济和知识经济的迅猛发展,企业间竞争一直围绕着企业内部管理进行,强调企业如何有效的利用自身的资源,提高生产能力、提高工作效率、降低成本。上个世纪末,伴随着信息技术革命,全球进
2、入了知识经济的时代。信息技术的应用加速了知识的传递、加工和更新,提升了企业的有效利用信息的能力,从而提高了企业的工作效率和生产能力。本系统的实现以提高医院管理者把握改革的大方向,加强医院的信息化建设,调动广大职工的工作积极性和主动性,提高社会效益和经济效益为目的3 系统总体需求本系统主要任务是实现病人的挂号、看病、交费、取药的一系列业务流程,以及医院内部的一系列相关信息维护。总体的来说系统应包括这样几个模块:基本信息维护、门诊挂号、门诊划价、医生处方、报表统计、个人信息维护。系统设置五类用户,根据不同工作职位分为管理员,医生,划价员,挂号员,结算员,分别建立不同的表进行维护,各自凭密码从登录窗
3、口进入系统,用户可以进行自己相应工作职责进行工作(详见 6 子模块功能接收) 。4 系统应用架构设计本系统采用客户/服务器(c/s)分布式架构,数据层和处理层放在后台服务器上,而应用逻辑层、表现逻辑层和表现层放置在前台门诊部的门诊挂号处、门诊划价处、门诊收费处的客户端。5 系统开发及运行环境本系统采用 java 编写,主要开发工具为eclipse,netbeans,my eclipse,等工具。运行的操作系统为 windows xp 或者 windows 7.数据库采用 mysql。6 子模块详细介绍1) 基本信息维护:本模块主要用于医院的基本信息表的维护,包括对职工信息,药品信息,科室信息,
4、检疗项目,参数设置的增添修改以及删除,职工信息的维护有针对不同职位分为不同的维护界面,目前有医生,划价员,挂号员,结算员,管理员,初始密码都为 123,可以进行此操作的员工是管理员身份。涉及的表为职工表,医生表,划价员表等。其中参数设置指的是为了方便挂号员进行挂号对几个参数进行初始化用的下拉框参数。2) 门诊挂号:这是进入医院的第一步,包括挂号以及挂号量查询两个子功能。挂门诊挂号号编号采用系统时间转化精确到毫秒值,一般不会出现重复,与日期一样采用默认填充。挂号员针对病人其他信息进行填写,填写完毕点击提交,数据被提交到挂号表。挂号量查询是为了方便挂号员查看自己今日的工作情况,只显示挂过的挂号编号
5、以及总的挂号量。不支持退号,如果病人以前有过挂号可以直接用。操作此模块的是挂号员。3) 门诊收费:门诊收费即门诊划价,操作员为划价员,对病人未收费的处方以及检疗项目进行收费。划价编号与挂号编号一样采用系统自动生成。需要输入要划价的挂号编号。主要提取数据涉及的表有处方划价明细表,检疗项目划价明细表。提交数据时提交到划价表,并修改处方划价明细表,检疗项目划价明细表相应的“是否已划价”属性。4) 报表统计:对收费员进行的收费进行核算,可以对多天的进行查询。包括对一个人和所有人两种查询。操作员为结算员。并不涉及对数据库表的操作。5) 医生处方:医生处方,医生需要填写所开处方的对象的挂号编号,然后输入要
6、开药品进行查询,此处查询采用模糊查询,一个表显示药品再从表中选取要开药品进入另一个表填写数量,点提交,数据进入处方划价明细表。处方查询是医生对自己今日所开处方进行查看。可以显示具体要药品信息。6) 个人信息维护:每一个用户都可以对自己的姓名,性别,年龄等基本信息进行操作,还包括对密码的修改。7 java 类图8 主要 E-R 图职工编号职工姓名职工权限职工密码年龄性别职务电话号码职工表ISA医生表划价员表 结算员表挂号员表看病挂号编号科室编号费用类型挂号类型挂号挂号日期是否已划价科室科室名科室表属于检疗编号检疗项目表检疗名称费用检疗项目收费明细时间次数药品编号药品名称药品种类库存单价 有效期
7、药品表处方收费明细表是否已划价是否已划价时间数量划价编号划价时间划价金额收费时间划价表收费是否收费病人编号姓名年龄性别病人表登记9 数据字典序号 名称 类型1 职工表 实体2 科室表 实体3 医生表 实体4 划价员表 实体5 结算员表 实体6 挂号员表 实体7 划价表 实体8 挂号表 实体9 药品表 实体10 检疗项目表 实体11 检疗项目收费明细 联系12 处方项目收费明细 联系13 病人表 实体14 收费类型表 实体15 挂号类型表 实体10 功能设计序号 分类一 功能 功能描述 用户1 基本信息管理 科室管理 操作员2 职工管理 又分为医生管理划价员管理挂号员管理结算员管理 操作员3 药
8、品管理 操作员4 检疗项目管理 操作员5 收费类型管理 方便挂号人员操作 操作员6 挂号类型管理 操作员7 门诊挂号 门诊挂号 进行挂号 挂号员8 挂号量 对今日到当前为止该挂号员挂号量 挂号员9 门诊收费 门诊收费 进行收费并发药 划价员10 报表统计 收费员报表 可以对几天的划价员的收费情况进行结算 结算员11 总收费报表 结算员12 医生处方 医生开药并入库 医生13 处方查询 对今日到当前为止该医生所开的处方查询 医生14 个人信息维护 修改个人密码信息等 所有权限人员11 主要数据库操作insert into 职工表 values (“123456“,“宗振国“,“1“,“123“,
9、“21“,“男“,“管理员“);insert into 科室表 values (“001“,“外科“,“2“,“手术“);insert into 职工表 values (“2009002“,“挂号员“,“2“,“123“,“21“,“ 男“,“挂号员“);insert into 职工表 values (“2009003“,“划价员“,“4“,“123“,“21“,“ 男“,“划价员“);insert into 职工表 values (“2009004“,“结算员“,“5“,“123“,“21“,“ 男“,“结算员“);insert into 挂号员表 values (“2009002“);in
10、sert into 划价员表 values (“2009003“);insert into 结算员表 values (“2009004“);权限3 是医生2 是挂号员4 是划价员5 是审计1create table 职工表(职工编号 char(20),职工姓名 char(20),职工权限 int,职工密码 char(20),年龄 int,性别 char(2),职务 char(20),primary key(职工编号),check (性别=男 or 性别= 女)2create table 科室表(科室编号 char(20),科室名 char(20),科室人数 int,科室类型 char(20),
11、primary key(科室编号)3create table 划价员表( 划价员编号 char(20),primary key(划价员编号),foreign key(划价员编号) references 职工表(职工编号)4create table 结算员表( 结算员编号 char(20),primary key(结算员编号),foreign key(结算员编号) references 职工表(职工编号)5create table 医生表(医生编号 char(20),科室编号 char(20),primary key(医生编号),foreign key(科室编号) references 科室表(
12、科室编号),foreign key(医生编号) references 职工表(职工编号)6create table 病人表(身份证号 char(20),姓名 char(20),年龄 int,性别 char(2),primary key(身份证号),check(性别 =男or 性别 =女);7create table 药品表( 药品编号 char(20),药品名称 char(20),药品种类 char(20),库存 int,单价 int,计量单位 char(8), primary key(药品编号) ;8create table 检疗项目表(检疗编号 char(20),检疗名称 char(20)
13、,费用 int,primary key(检疗编号);9create table 挂号表 (挂号编号 char(20),病人编号 char(20),科室编号 char(20),费用类型 char(20),挂号类型 char(20),挂号日期 date,挂号员编号 char(20),primary key(挂号编号),foreign key(病人编号) references 病人表(身份证号),foreign key(科室编号) references 科室表(科室编号) ;0create table 挂号员表(挂号员编号 char(20),primary key(挂号员编号),foreign ke
14、y (挂号员编号) references 职工表(职工编号);1create table 划价表(划价编号 char(20),挂号编号 char(20),划价员编号 char(20),划价时间 datetime,是否收费 char(1),划价金额 int,primary key(划价编号),foreign key (挂号编号) references 挂号表(挂号编号),foreign key (划价员编号) references 划价员表(划价员编号) );2create table 处方划价明细表(挂号编号 char(20),药品编号 char(20),医生编号 char(20),数量 in
15、t,时间 Timestamp,是否已划价 char(1),primary key(挂号编号,时间,药品编号, 医生编号),foreign key (医生编号) references 医生表(医生编号),foreign key (挂号编号) references 挂号表(挂号编号),foreign key (药品编号) references 药品表(药品编号);3create table 检查划价明细表(挂号编号 char(20),检疗项目编号 char(20),次数 int,时间 Timestamp,是否已划价 char(1),primary key(挂号编号,时间,检疗项目编号),foreign key (挂号编号) references 挂号表(挂号编号),foreign key (检疗项目编号) references 检疗项目表(检疗编号) ; create table 挂号类型表(挂号类型 char(20), primary key(挂号类型)create table 收费类型表(参数类型 char(20), primary key(参数类型)12 主要界面