




已阅读5页,还剩63页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
HIS系统的设计与实现毕业论文第1章 绪 论本章从医院信息化系统(Hospital Information System 简称HIS)的研究背景和意义出发,论述了医院信息化系统设计与实现的迫切性,总结和概述了现阶段国内外医院信息化系统的发展现状,其中重点介绍了医院信息化系统的实现为医院和患者带来了多大的便利,在此基础上对医院信息化系统进行了设计与实现。1.1 课题研究背景医院是“以患者为中心,以救死扶伤”为宗旨的,实施医疗服务的特殊场所。具有人员密集流量大、设备密集物流多、信息密集流通杂、工作密集时间长等特点,这些特点决定了现代化医院必须是“智能化医院”或者说是“数字化医院”,它不单要实现通信自动化、办公自动化、楼宇自动化,更需要拥有更完善的业务、管理的信息化与科学化,拥有一个运行高效、资源整合、互联互通、信息共享、使用便捷、实时监控的综合系统。医院信息化是社会发展、科技进步和市场竞争的需求。在加快医疗改革、医院运营日益市场化的环境下,患者对医疗质量和健康服务的期望值越来越高。医院以加快信息化步伐,能满足各类人群,包括患者、亲戚、来访者的各种需求,直接体现了医院管理的优越性和人文关怀,使患者及家属的满意度得到提升。医院管理信息化是医院现代化管理的需要,简化了医院现有的业务操作流程、方便了过程控制管理,全面解决数据采集及汇总、分单采购、仓储发放、制作配料、送餐结算,使医院服务和营养膳食供应管理达到一个全新的高度。医院信息系统在发达国家已得到广泛应用,并取得了良好的社会效益和经济效益。医院信息化系统是现代医院运营的必要技术支撑和基础设施,实现医院信息化系统的目的就是为了以更现代化、科学化、规范化的手段加强医院的管理,提高医院的工作效率,改进医疗质量,从而树立全新的现代医院新形象,这也是未来医院发展的发展的必然方向。完整的医院信息化系统实现了信息的全面追踪和动态管理,最终必须做到简化患者的诊疗过程,优化就诊环境,来改变目前排队多、等候时间长、秩序混乱的局面。同时,该系统的实施强化了医院的内部管理,降低了医护人员的工作强度和时间,加速了医院内资金的周转,减少药品、器械等物资的积压现象。医院信息化管理系统的建立更主要的还在于它对医院的管理、医疗的质量和医学研究的长期效应带来的综合效益。因此医院信息化系统的投资属于基础性投资,诚如任何机构的统计部门,它是需要花钱的部门,但其重要性也是不言而喻的,投资也是必须的。本次课题将实现医院信息化系统的设计,本课题的研究将提高医院各项工作的效率和质量,促进医学科研、教学;减轻各类事务性工作的劳动强度,使他们腾出更多的精力和时间来服务于病人;改善经营管理,堵塞漏洞,保证病人和医院的经济利益;为医院创造经济效益。1.2 课题研究领域的发展现状及可能的应用领域医疗信息化最初起源于美国。在20世纪50年代中期,美国开始将计算机应用于医院财务会计管理,后来又进一步实现了部分事务处理,最后逐步形成医院信息系统。目前,国际医疗卫生信息化的发展趋势主要表现在以下几个方面。从单纯的医疗服务、节约劳动、节约时间等方面提高医疗保障,促进医疗过程规范化的方向发展。主要表现在具有医疗过程管理能力的电子病历和电子化临床路径的实施应用等。从单一医院内部的信息化建设向医院集团内统一的信息系统及区域医疗卫生一体化方向发展。主要表现为在进行顶层架构设计时更加强调信息标准化和系统集成平台等。从单纯考虑数据的采集、存储、安全性等向数据的分析和利用,以提升医院经营水平、提高医疗服务质量并提供决策支持等方向发展。主要表现在临床数据仓库建设和数据挖掘的广泛应用等。 我国卫生信息化工作正面临四个方面的困难:一是信息标准基础型工作薄弱,医院信息标准化体系还不完善;二是医疗仪器的兼容性技术研究滞后,机制不健全;三是医学知识库与循证医学的研究薄弱;四是医疗服务质量的控制和管理还存在问题,信息系统的投入见效慢。数字化医院的建设应加强信息标准的研发工作,引入市场运作的模式,同时加强信息化发展制度和政策的研究。目前,在国内医院信息系统市场竞争是国内企业之间的主要竞争,国外公司由于汉化以及本地二次开发的原因,几乎没有真正成功进入国内的范例。从现有已投入使用的医院信息化系统情况来看,全院数字化解决方案企业相对领先企业主要有东软集团、卫宁软件、东华软件等上市企业以及北京天健、杭州创业、智业软件、重庆中联等非上市企业;成本核算系统生产企业主要有东软集团和用友软件两家上市企业以及金算盘;目前国内预约挂号系统中和仁科技具有较强的竞争力;红帆是目前国内医院OA的主要系统解决方案供应商。总之,国内企业竞争之激烈不言而喻,反之,竞争也会促进医疗信息化加速前进!技术的发展促进了医院信息化的发展,最初,在一些人的眼里,只要经过医院信息管理系统完成后,医院中各方面,包括管理水平、财务监管力度等问题自然迎刃而解。但是,如果医院想更好的发展,必然会面临更高的挑战。医院必须满足以下几点,基于信息交互的集成平台;基于数据采集的EMR数据中心;以业务优化为方向的系统流程再造。医院信息化系统未来的发展在于整合,整合医院的所有系统,包括仪器、设备、人员等等。整合的同时,医院必须做到,以患者服务为主,业务管理为辅,以居民电子病历为核心,通过信息平台共享的全面整合,最终实现各种医疗自助服务,让患者充分体验到就医的简便与实惠!随着我国医疗卫生事业的发展,医院面临着如何满足人民群众日益增长的医疗 卫生需求和与国际接轨的双重挑战,为迎接挑战,医院必须实现现代化的管理,建立医院信息化系统。 事实上远程会诊、远程诊治、远程放射影像、远程手术治疗已经付诸实践。在数字化城市的服务网络中,数字化医疗服务网络将逐步扩展,进一步向城市各个社区以至边远乡村 、山区等地区进行扩展。医疗专业人员与患者之间的远程医疗会诊建立新的练习,使患者在发生地、原来的医院可以接受远程专家会诊,并在他们的治疗指导下,在不同地区的患者得到相同的医疗服务水平、相同的质量。本次课题的研究将使用电子计算机和通讯设备,为医院所属各部门提供病人诊疗信息和行政管理信息的收集、存储、处理、提取和数据交换的能力,并满足所有授权用户的功能需求。1.3 课题研究意义随着医院经营成本的增加,扩大收入,片面追求营业收入而忽视成本核算与控制的管理方式,已经不能满足需要。因此在医院在临床科室、办公室、仓库、制药等介绍了医院信息管理系统。基于计算机网络技术的医院信息系统的媒体内容一般包括三个部分。一是以门诊收费挂号、门诊药房、门诊医生工作站、医技工作站四部分组成的门诊系统;二是以医生工作站、护士工作站、病房药房、住院结算组成的住院系统;三是院长查询、统计、病案、审计、科教、物资、设备、固定资产、图书等内容组成的信息化系统。医院信息系统研究这一课题将在现代医院管理中得到广泛应用,尤其是对医院经济的积极作用和意义,主要表现在以下几个方面:提高医院宏观管理水平,特别是经济运行决策水平;建立合理的劳动分配制度;提高经济效益和管理水平;控制费用收支,提高医院收入;实现信息共享,提高资源利用率;减少医患矛盾,提高病人对医院的信任和满意度;节省人力成本,为人事动态调整提供依据。1.4 主要工作1、本次课题将实现医院信息化系统的设计,这次课题将集合多家医院共同使用此系统,最终将实现一个医疗云平台的建设。我主要设计与实现OA系统中国的人事档案管理模块、信息模块,排班管理系统中的门诊排班模块的工作。2、利用SSH(Struts+Spring+Hibernate)集成框架技术实现该医院信息化管理系统的技术架构,并从视图层、核心控制层、业务控制层、业务逻辑层、数据访问层等方面,完成系统层次设计。其中,Struts框架完成了该医院信息化系统MVC(它的全名是Model 、View和 Controller,中文意思是模型、视图和控制器)设计模式,Hibernate框架实现了该系统对象与关系数据库表之间的映射,Spring利用IoC机制对业务组件进行低耦合、模块化的组装。3、利用Dao模式实现该医院信息化系统数据访问层。Dao层专门负责与数据库进行交互,主要利用Hibernate框架实现,利用对象-关系映射文件实现该医院信息化系统领域模型与关系型数据表之间的映射。4、根据分层设计理念和SSH集成框架技术,实现核心功能模块。人事档案管理模块、信息管理模块、排班管理模块等几个方面进行阐述,并利用该系统的测试效果来检验系统分析、系统设计的正确性。67第2章 系统需求分析需求分析是设计和实现医院信息化系统过程中的基础环节。在此过程中,我们将了解整个系统需要实现哪些功能,需要使用哪些数据,用户对系统的性能有哪些要求。只有在弄清楚系统的需求之后,我们才能寻求实现该系统的解决方案。此阶段是要确定系统功能实现的基础,只有做好需求分析工作,后面的设计与实现将会更加顺利进行。2.1 系统性能需求本系统的性能需求包括多方面的内容,根据系统的主要用户和关键的应用用户来考虑,这里只对系统的整体性能要求进行了综述,主要包括以下几个方面:1、系统响应过程的精确性和及时性:系统响应过程的准确性与及时性是系统实现的第一位要求。响应时间是从用户发出操作请求到该系统响应并开始执行用户操作请求所需的事件,响应时间越短,说明该管理系统的性能越好,效率越高。2、系统的可扩展性:系统的扩展性能是非常重要的,它是满足医院信息化与时俱进性的保证。为了系统运行期的平滑升级,开发的技术必须是主流。3、系统的易用性与易维护性:医院的信息化系统主要是针对医院中医生使用的,而医院中的医生不免有年纪较大的专家,所以就要求系统具有良好的用户界面和简单的操作流程和相应的提示功能的实现。4、系统的安全性:随着互联网的飞速发展,系统的安全性越来越被重视,系统的安全性是整个系统的基本保障。医院的信息化系统中系统的安全性也是至关重要的,比如,医生的处方,药品的进销渠道,用户的基本信息等安全性问题都需要来保护。5、系统的标准性:系统的研发、运行过程中涉及到很多计算机硬件与软件、药品信息标准、医生的职称标准等信息都需要使用国际标准来定义和使用。6、系统并发方面的支持:该系统一旦投入运行,同时访问该系统的用户一定会较多,比如,早上上班访问高峰期。所以,这就要求系统具有较好的并发方面的支持。2.2 系统功能模块需求2.2.1 人事档案管理模块需求分析本模块主要实现对医院员工信息的管理,包括对人员基本信息的添加、修改、查看和删除的操作,对人员相关附件和照片的上传、下载、删除的操作,对人员基本信息的导出操作,对人员进行角色的配置,对人员的个人密码的修改操作,以及待退休和待转正人员的提醒操作,对员工门禁卡信息的添加、修改和删除操作。本模块实现的功能中,人员的基本信息量较多,在实现的过程中一定要保证信息的准确性。2.2.2 信息管理模块需求分析本模块主要实现对系统中信息的管理功能,包括对医院信息的增加、修改和删除功能,对项目中不同的系统信息进行增加、修改和删除操作,对功能按钮信息的增加、修改和删除操作。信息管理模块中的功能是整个大项目的基础,包括人员登录系统时对不同医院的选择,对不同系统的选择,对该登录人员权限的控制等操作,所以此模块的功能实现一定要保证精确!2.2.3 排班管理模块需求分析本模块主要实现对医院中医生工作时间的安排功能。包括号类信息的添加、修改和删除操作,门诊基础号表的添加、修改和删除操作,急诊基础号表的添加、修改和删除操作。本模块的功能是门诊急诊挂号收费系统中挂号功能的基础部分,只有本模块功能的成功实现,才能够保证对病人挂号功能的实现。所以此模块的功能实现至关重要。2.3 本章小结本章对系统的需求分析做了详细的说明,从对整个系统性能的需求说起,通过阐述人事档案管理模块、信息管理模块和排版管理的详细需求。对系统功能做了需求分析,另外对该模块在整个系统中的重要作用做了一下说明。第3章 系统概要设计医院信息化系统的设计是在前一章需求分析的基础上进行设计的,对前一章中性能需求和功能需求进行详细的分析和设计,本章内容将设计系统的模块结构、系统实现的层次设计、系统数据库设计等几个方面进行详细阐述。3.1 系统功能模块结构设计根据前一章中的需求分析,我们把OA系统和排班系统中的人事档案管理模块、信息管理模块和门诊排班模块的功能实现结构设计如图 3-2 系统技术架构设计图所示。图 3-1 系统模块结构图3.2 系统技术架构设计根据软件行业中各种不同框架的比较和分析,我们采用先进的轻量级框架对系统功能进行设计与实现,使用SSH(Struts+Spring+Hibernate)框架作为总体架构。由于考虑到医院中信息数据量较大,信息形式较为复杂,所以对于数据的存储我们使用对象关系型数据库系统,即Oracle数据库。它是基于客户机/服务器的系统结构,并且具有跨平台移植、分布式数据处理和支持大事务量处理的特点。总体技术架构设计如图 3-2 系统技术架构设计图所示。浏览器(Browser)Struts框架视图(JSP)核心控制器(ActionServlet)业务控制器(Action层)Oracle数据库Spring框架Action代理IoC控制反转JDBC接口AOP+事务代理Hibernate框架对象-关系映射文件数据处理(数据访问层)Hibernate配置图 3-2 系统技术架构设计图 SSH技术架构实现了MVC模式,它借助struts配置文件,使业务流程不需要被编码到应用程序中去,这可以增强了系统的可维护性和灵活性。同时,针对Hibernate映射框架来讲它实现了实体对象与关系型数据之间的映射,对底层JDBC(它的全称是Java Data Base Connectivity,中文意思是java数据库连接)技术实现了轻量级封装,建立java领域模型的持久化对象,因此替代了原始的JDBC技术完成了轻量级的封装。Spring属于耦合性较低,一个模块化的开发框架,支持研发人员使用部分的模块实行研发,可以通过控制反转对业务进行组装,在多框架企业应用系统中能够起到穿针引线的功能。所以,医院信息化系统的技术架构采用SSH集成框架是最佳选择。3.3 系统技术架构层次设计在图 3-2 系统技术架构设计图所示的系统技术架构设计中,包括视图层、核心控制层、业务控制层以及数据访问层等几个层次的设计,系统的开发也将主要集中在这几个层次上进行实现。下面围绕这几个层次进行系统技术架构层次分析。1、 视图层(View层)该医院信息管理系统的视图层主要由JSP页面构成,此外还包括JS、Ajax、EasyUI等前端技术,这些技术对实现页面的美观性和页面加载的高效性起到了至关重要的作用。2、 核心控制层ActionServlet是Struts框架的核心控制器组件,它主要用于拦截用户操作的请求,然后按照系统配置的具体请求传递给相应的业务Action对象。3、 业务控制层(Action层)业务控制层能够从前端获取数据,也能够把系统模型中的数据传送至前端页面。这些功能都需要Action类来实现,而业务Action类又需要struts和spring的配置文件共同作用来完成。4、 业务逻辑层(Service层)业务逻辑层主要用来处理系统具体功能中相对复杂的逻辑关系而产生的。5、 数据访问层(Dao层)Dao层专门负责对数据库的交互操作和访问,目的是降低组件耦合度,以屏蔽抽象底层的具体实现。当底层实现改变时,能够不用编辑上层应用程序的实现,就可以很好的兼容底层变动。从以上层次分析可以看出,医院信息化管理系统采用视图层、核心控制层、业务控制层、业务逻辑层和数据访问层的分层结构将是最好的选择,层与层之间是相互独立的,每一个层面都有特定的服务。在该系统的分层结构中,任何一层只要它的接口不发生改变,具体实现发生改变对其他层面是没有影响的。分层后不仅使该系统各层次功能实现变得简单,并且具有易维护性和易扩展性。3.4 系统数据库的设计3.4.1 人事档案管理模块数据库设计系统中人事档案管理的相关信息较多,涉及员工基本信息数据、员工相关附件数据、科室信息数据、角色信息数据等多个部分,数据库表结构设计如图 3-3 人事档案模块数据库设计图所示。具体包括XT_USER(用户表)、XT_UNIT(科室表)、XT_ROLE(角色表)、XT_USER_UNIT(用户科室中间表)、SYS_GB_MZ(民族表)、XT_USERFILE(附件表)、XT_DOCZC(职称表)、SYS_GB_BANK(银行表)、XT_USER_ROLE(用户角色中间表)、XT_USER_CARD(员工门禁卡信息表)共10张表。图 3-3 人事档案模块数据库设计图3.4.2 信息管理模块数据库设计信息管理模块主要负责权限、医院、系统等几个方面的信息管理,数据库表结构设计如图 3-4 信息管理模块数据库设计图所示。具体包括XT_HOSPITAL(医院信息表)、XT_SYSTEM(系统信息表)、XT_FUN_BUTTON(按钮信息表)、XT_FUNCTION(菜单信息表)、XT_PERMISSION(权限表)共5张表。图 3-4 信息管理模块数据库设计图3.4.3 排班管理模块数据库设计排班管理主要负责门诊医生就诊排班的功能,包括号类信息管理、基础号表维护和号表维护,数据库表结构设计如图 3-5 排班管理模块数据库设计图所示。具体包括HIS_PBNUMBERTYPE(号类维护表)、HIS_PBMZ_BASENUM(门诊基础号表维护表)、HIS_PBTYPE_BASE(号类与门诊基础号表的关系表)、HIS_PBMZ_NUMCODE(门诊排班号表维护表)、HIS_PBMZ_TYPE_CODE(号类与门诊排班号表关系表)共5张表。图 3-5 排班管理模块数据库设计图3.5 本章小结本章主要介绍了医院信息化系统的各个功能模块结构的设计、实现功能模块所需要使用的技术架构、系统层次分析以及各个模块中数据库表结构的设计。该医院信息化系统主要包括人事档案管理模块、信息管理模块和排班管理模块等三个主要模块;系统技术架构采用SSH集成框架;系统层析分析从视图层、核心控制层、业务控制层、数据访问层等方面进行探讨;数据库表设计主要阐述了各个模块所需要使用的数据库表结构设计图。第4章 系统详细设计及实现本章主要根据前面阶段确定下来的系统需求和系统技术架构设计情况,继续进行各个模块功能的详细设计和实现,对主要的业务流程做进一步分析后,为系统的功能编码实现打下坚实的基础。并在系统详细设计的基础上严格按照需求分析所确定下来的功能模块对系统进行详细的编码实现。4.1 系统开发环境的搭建与实现Struts、Spring、Hibernate这三个框架各有各的特点,为了提高系统的开发效率,该医院信息管理系统采用SSH集合架构来实现,系统整体实现结构如图 4-1 系统实现结构图所示。图 4-1 系统实现结构图4.2 人事档案管理模块的设计与实现根据人事档案管理模块的需求分析,对该功能模块的需求做进一步的划分,具体功能菜单包括个人中心、转正提醒、退休提醒、人员列表、员工门禁卡管理。左侧菜单实现显示如图 4-1 人事档案管理模块菜单图所示。下面详细阐述对各个功能菜单中内容的设计和实现。图 4-1 人事档案管理模块菜单图(1) “个人中心”功能的设计与实现个人中心菜单中主要显示登录人的详细信息,页面设计如图 4-2 个人信息显示页面设计图所示;并实现修改个人密码的功能,页面设计如图 4-3 修改密码页面设计图所示。图 4-2 个人信息显示页面设计图显示个人详细信息实现过程:核心控制器ActionServlet拦截个人中心的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的queryUser()方法中进行处理,从session对象中获取用户的ID值;在数据访问层查询数据库中该用户的信息;最后将查询到的信息返回给前端personInfo.jsp页面进行展示。图 4-3 修改密码页面设计图修改个人密码功能实现过程:核心控制器ActionServlet拦截修改密码的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的modPwdTo()方法中处理后显示前端页面updatePwd.jsp。在updatePwd.jsp页面上输入相应的信息,之后,在业务控制层中的UserAction.java文件中的checkOldpsw()方法对原密码和新输入的密码进行验证,验证通过后在savePwd()方法中实现修改密码的操作功能;最后在数据访问层修改数据库中的该用户的密码。(2) “转正提醒”功能的设计与实现转正提醒菜单中包括显示待转正人员(一周)的列表信息,页面设计如图 4-4 转正提醒列表页面设计图所示;查看员工信息功能,由于查看员工基本信息的实现逻辑与个人中心中查看个人信息的逻辑实现相类似,在此不再做详细阐述。图 4-4 转正提醒列表页面设计图转正提醒列表实现过程:核心控制器ActionServlet拦截转正提醒的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的getDzzUserList()方法中进行处理;在数据访问层查询数据库中所有待转正员工的信息;最后将查询到的信息返回给前端dzzUserList.jsp页面进行展示。(3) “退休提醒”功能的设计与实现退休提醒功能的设计与实现和转正提醒功能的设计与实现逻辑相类似、页面设计大同小异,在此就不再做过多赘述。(4) “人员列表”功能的设计与实现人员列表菜单中的功能包含较多,列表页面设计如图 4-5 人员列表页面设计图所示;人员信息添加、修改、删除,页面设计如图 4-6 人员信息添加页面设计图所示;附件上传、下载、删除,页面设计如图 4-7 附件管理页面设计图所示;照片下载;员工信息导出;为员工添加角色、删除角色,页面设计如图 4-10 修改角色页面设计图所示;为员工转正操作等功能。图 4-5 人员列表页面设计图人员列表实现过程:核心控制器ActionServlet拦截人员列表的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的getLbUserList()方法中进行处理;在数据访问层获取数据库中所有员工的信息;最后将获取到的信息返回给前端empUserList.jsp页面进行展示。图 4-6 人员信息添加页面设计图人员基本信息添加功能实现过程:核心控制器ActionServlet拦截人事档案添加的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的getUserMZandKS()方法中处理后显示前端页面addUser.jsp。在addUser.jsp页面上输入相应的信息,之后,页面会对输入的信息做简单的验证,验证通过后在addEmp()方法中实现添加人员基本信息的操作功能,最后在数据访问层把数据添加至数据库进行保存。人员基本信息的修改功能实现过程相比较添加功能,需要多执行一步把需要修改的信息从数据库中查询并显示出来的操作,其余的实现和设计过程与添加功能基本一致,包括页面的设计,修改功能的逻辑实现,数据库中信息的修改等方面。在此不再过多赘述。员工的删除功能实现过程:在人员列表页面中选中需要删除的员工,核心控制器ActionServlet拦截人员注销的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的delUserTo()方法中进行处理,最后在数据访问层中修改该人员的状态。图 4-7 附件管理页面设计图附件和照片上传功能的实现过程:附件和照片的上传使用的是struts框架中文件的上传技术。在设计前端JSP页面时,设计为支持文件上传的FORM表单,就是把FORM表单的enctype属性定义为multipart/form-data。核心控制器ActionServlet拦截附件上传的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的addOrMod()方法中处理附件的上传;在业务逻辑层指定附件上传的路径、文件名等信息;在数据访问层中保存附件的名称、附件上传的路径等信息。照片的上传实际上也可以看做是一个文件的上传,所以照片的上传逻辑在编码实现的时候同附件的上传是一样的。附件和照片下载功能的实现过程:附件和照片的下载使用的也是struts框架中的文件下载技术。在核心控制器中指定该操作是文件流操作,具体指定内容如图 4-8 定义文件下载代码实现图所示。核心控制器ActionServlet拦截附件下载的http请求,在此指定为文件下载操作,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的getUserFile()方法中处理附件的下载。图 4-8 定义文件下载代码实现图员工信息以Excel形式导出的实现过程:Excel文件的导出主要利用的POI(Poor Obfuscation Implementation)技术来实现的。Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程式对Microsoft Office格式档案读和写的功能。首先需要准备必要的jar包,显示如图 4-9 POI技术需要的jar包图所示;核心控制器ActionServlet拦截信息导出的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的uploadExcel()方法中处理文件的导出;在业务逻辑层的findWriterExcel()方法中,实现Excel文件中的具体内容,包括定义工作薄并为其命名、生成样式、创建行、创建单元格、添加数据等内容都需要在此实现。Excel文件中显示的数据是需要在数据访问层从数据库中查询所得。图 4-9 POI技术需要的jar包图图 4-10 修改角色页面设计图修改角色实现过程:核心控制器ActionServlet拦截修改角色的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的addRoleByUserTo()方法中处理现有角色信息;在数据访问层查询该用户下的现有角色,显示前端页面addRoleByUser.jsp;在addRoleByUser.jsp页面中可以选择需要删除的角色,执行删除操作,核心控制器ActionServlet再次拦截删除角色的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的delUserRole()方法中处理删除角色信息的操作;在数据访问层修改该角色的状态信息。在业务控制层中的RoleAction.java文件中的selectRoleByUser()方法中处理所有需要添加的角色信息;在数据访问层查询该员工所有未添加的角色信息,显示在前端页面roleUserList.jsp中;在roleUserList.jsp页面中为该用户选择需要添加的角色,点击“保存”按钮,核心控制器ActionServlet会再次拦截添加角色的http请求,调用Action类对象来处理请求;在业务控制层中的UserAction.java文件中的addUserRole()方法中处理添加角色的操作;在数据访问层存储添加的角色。为员工执行转正操作的实现过程,实质上就是把员工的状态由试用期状态修改正式员工的状态,页面就是人员列表页面,不需要设计其他页面,实现逻辑也比较简单,在此不做过多赘述。(5) “员工门禁卡管理”功能的设计与实现员工门禁卡管理菜单中实现的功能就是对员工门禁卡信息的列表查看,页面设计如图 4-11 员工门禁卡列表页面设计图所示;员工门禁卡信息的添加功能,页面设计如图 4-12 员工门禁卡添加页面设计图所示。图 4-11 员工门禁卡列表页面设计图员工门禁卡列表实现过程:核心控制器ActionServlet拦截员工门禁卡列表的http请求,调用Action类对象来处理请求;在业务控制层中的UsercardAction.java文件中的getUsercardList()方法中进行处理;在数据访问层获取数据库中所有员工门禁卡的信息;最后将获取到的信息返回给前端usercardList.jsp页面进行展示。图 4-12 员工门禁卡添加页面设计图员工门禁卡信息添加功能实现过程:核心控制器ActionServlet拦截员工门禁卡信息添加页面跳转的http请求,调用Action类对象来处理请求;在业务控制层中的UsercardAction.java文件中的addUsercardTo()方法中处理后显示前端页面addUsercard.jsp;在addUsercard.jsp页面上输入并选择相应的信息,之后,页面会对输入的信息做简单的验证,验证通过后,核心控制器ActionServlet拦截员工门禁卡信息添加的http请求,调用Action类对象来处理请求;在业务控制层中的UsercardAction.java文件中的addUsercard()方法中实现添加员工门禁卡信息的操作功能,最后在数据访问层把添加的数据添保存至数据库。4.3 信息管理模块的设计实现根据信息管理模块中的需求分析,对该功能模块的需求做进一步的划分,具体功能菜单包括功能按钮维护、医院管理、系统管理。左侧菜单实现显示如图 4-1 信息管理模块菜单图所示。在本功能模块中实现的三个功能菜单中,页面的设计、逻辑代码的实现、对数据库中数据的访问等方面的工作内容都较为相似,所以在此只详细介绍功能按钮维护菜单中的所有功能的详细实现,以及展示其他两个菜单中页面设计,至于其他两个菜单中的具体功能实现逻辑不做详细阐述。图 4-1 信息管理模块菜单图(1)“功能按钮维护”功能的设计与实现功能按钮是构成整个项目权限的重要一部分,所以对功能按钮的维护尤为重要。功能按钮维护菜单中实现的功能包括对功能按钮信息的列表查看,页面设计如图 4-2 功能按钮信息列表页面设计图所示;功能按钮信息的添加、修改功能,页面设计如图 4-3 功能按钮信息添加页面设计图所示。功能按钮的删除操作。图 4-2 功能按钮信息列表页面设计图功能按钮信息列表的实现过程:核心控制器ActionServlet拦截功能按钮信息列表的http请求,调用Action类对象来处理请求;在业务控制层中的FunButtonAction.java文件中的getFunBtnList()方法中进行处理;在数据访问层获取数据库中所有功能按钮信息;最后将获取到的信息显示在前端funBtnList.jsp页面上。图 4-3 功能按钮信息添加页面设计图功能按钮信息添加功能实现过程:核心控制器ActionServlet拦截功能按钮信息添加页面跳转的http请求,调用Action类对象来处理请求;在业务控制层中的FunButtonAction.java文件中的addFunBtnTo()方法中处理后显示前端页面addFunBtn.jsp;在addFunBtn.jsp页面上输入并选择相应的信息,之后,页面会对输入的信息做简单的验证,验证通过后,核心控制器会ActionServlet拦截功能按钮信息添加的http请求,调用Action类对象来处理请求;在业务控制层中的FunButtonAction.java文件中的addFunBtn()方法中实现添加功能按钮信息的操作,最后在数据访问层把添加的数据添保存至数据库。功能按钮信息的修改功能实现过程相比较添加功能,需要多执行一步把需要修改的功能按钮信息从数据库中查询并显示出来的操作,其余的实现和设计过程与添加功能基本一致,包括页面的设计,修改功能的逻辑实现,数据库中信息的修改等方面都较为相似。在此不再过多赘述。功能按钮的删除功能在功能按钮的列表页面上,选中需要删除的功能按钮,点击注销按钮,核心控制器ActionServlet拦截功能按钮注销的http请求,调用Action类对象来处理请求;在业务控制层FunButtonAction.java文件中的updateFunBtnFlag()方法中做一些适当的处理,在业务逻辑层做一些适当的判断,判断该功能按钮是否被权限使用,若被使用,则不能执行注销操作,同时给用户一些提示;若未被使用,则可以执行删除,在数据访问层修改该功能按钮的状态为注销状态。(2)“医院管理”功能的设计与实现大型医疗云平台的构建是由多家医院共享资源,共享一个系统来实现的,所以对各个不同医院信息的维护功能也不能轻视。医院管理菜单中实现的功能包括对医院信息的列表查看,页面设计如图 4-4 医院信息列表页面设计图所示;医院信息的添加、修改功能,页面设计如图 4-5 医院信息添加页面设计图所示;医院信息的删除操作。图 4-4 医院信息列表页面设计图图 4-5 医院信息添加页面设计图(3)“系统管理”功能的设计与实现一个完善的医院信息化管理系统是由多个小系统共同组成的,要实现整个医院数字信息化,我们就需要做好每一个小系统的设计和开发,所以对各个不同系统信息的维护也至关重要。系统管理菜单中实现的功能包括对系统信息的列表查看,页面设计如图 4-6 系统信息列表页面设计图所示;系统信息的添加、修改功能,页面设计如图 4-7 系统信息添加页面设计图所示。系统信息的删除操作。图 4-6 系统信息列表页面设计图图 4-7 系统信息添加页面设计图4.4 排班管理模块的设计与实现根据排班管理模块中的需求分析,对该功能模块的需求做进一步的划分,具体功能菜单包括号类维护、门诊基础号维护。左侧菜单实现显示如图 4-1 排班管理模块菜单图所示。号类维护菜单中实现功能与上一小节中的功能按钮信息维护中实现的功能相类似,在此也不再对设计与实现过程做详细阐述。针对门诊基础号维护的设计与实现过程做详细叙述。图 4-1 排班管理模块菜单图(1)“门诊号类维护”功能的设计与实现医院中对于去挂号的病人来说,可以去现场进行挂号,也可以电话预约,更可以使用网络预约进行挂号。所以在此需要对不同的号类信息维护管理操作。号类维护菜单中实现的功能包括对号类信息的列表查看,页面设计如图 4-2 号类信息列表页面设计图所示;号类信息的添加、修改功能,页面设计如图 4-3 号类信息添加页面设计图所示。号类信息的删除操作。图 4-2 号类信息列表页面设计图图 4-3 号类信息添加页面设计图(2)“门诊基础号表维护”功能的设计与实现门诊基础号是为医生排班的基础,医生排班是按照基础号表中的数据进行排班,生成排班表,所以门诊基础号表的维护操作至关重要。门诊基础号表维护菜单中实现的功能包括对基础号表信息的列表查看,页面设计如图 4-4 基础号表列表页面设计图所示;基础号表信息的添加、修改功能,页面设计如图 4-5 基础号表添加页面设计图所示;基础号表的删除操作;为基础号表分配号类,页面设计如图 4-6 基础号表分配好类页面设计图所示。其中基础号表的列表查看、添加、修改、删除的操作设计与实现过程不做详细叙述。下面详细阐述下为基础号表分配号类的设计与实现过程。图 4-4 基础号表列表页面设计图图 4-5 基础号表添加页面设计图图 4-6 基础号表分配好类页面设计图分配号类的实现过程:核心控制器ActionServlet拦截分配号类的http请求,调用Action类对象来处理请求;在业务控制层中的TypeBaseAction.java文件中的getBaseNumTypePage()方法中处理已分配的号类信息;在数据访问层查询该基础号表记录下的已分配号类信息,显示至前端页面givenNumTypeList.jsp;在givenNumTypeList.jsp页面中可以选择需要删除的号类信息,执行删除操作,核心控制器ActionServlet再次拦截添加角色的http请求,调用Action类对象来处理请求;在业务控制层中的TypeBaseAction.java文件中的delNumType()方法中处理删除已分配号类的信息的操作;在数据访问层删除已分配的号类信息。在业务控制层中的TypeBaseAction.java文件中的givenNumTypeTo()方法中处理需要分配号类的信息;在数据访问层查询所有号类信息,显示在前端页面givenNumType.jsp中;在givenNumType.jsp页面中为基础号表记录输入并选择分配号类所需要的信息,点击“分配”按钮,核心控制器ActionServlet会再次拦截添加角色的http请求,调用Action类对象来处理请求;在业务控制层中的TypeBaseAction.java文件中的addNumType()方法中处理分配号类的操作;在数据访问层存储分配的号类信息。4.5 本章小结本章详细介绍了各个模块中每一个功能设计与实现的详细过程。页面的设计,使用具体的图片进行展现,看上去一目了然;后台逻辑实现,详细描述了在哪一个文件中使用了哪一个方法进行实现,业务较复杂的,还会做进一步的说明和阐述;访问数据库操作主要就是把前面的操作与数据库进行互动访问。第5章 系统运行与测试系统功能实现完善后,下面将对系统的每一个功能进行测试,确保每一个功能的实现符合逻辑,符合需求设定。下面将详细介绍对每一个功能的测试。5.1 功能测试5.1.1 人事档案管理模块功能的测试(1) “个人中心”测试点击“个人中心”菜单,页面中可以正确显示个人信息数据;点击“修改密码”按钮,跳转至修改密码页面,输入原密码、新密码和确认新密码,点击“确定”按钮,验证通过后,提示修改密码成功,系统重新跳转至登陆页面,使用新密码进行重新登录,登陆成功即表示测试通过。(2) “转正提醒”和“退休提醒”测试点击“转正提醒”和“退休提醒”菜单,页面中正确显示待转正和待退休人员的信息,即表示测试成功。(3) “人员列表”测试点击“人员列表”菜单,页面列表中分页显示所有员工信息;点击“档案添加”按钮,弹出添加员工信息的页面,在页面上输入需要添加的员工的基本信息,点击“添加”按钮,对添加的信息进行验证,验证通过后,系统提示“添加成功”,即表示人员信息添加功能测试通过;点击“修改”按钮,对该员工的基本信息进行修改,修改通过后系统提示“修改成功”,即表示人员信息修改功能测试通过;选中需要删除的员工点击“注销”按钮,系统提示“确认删除?”继续点击“确定”按钮,完成删除操作,重新刷新列表页面,此员工不再显示,即表示删除功能测试成功;点击“附件管理”按钮,弹出附件管理页面,在此页面上执行附件上传操作,上传的附件可以在页面左侧进行显示,表示附件上传功能测试成功;在附件管理左侧页面上对附件执行下载操作,文件可以进行下载,即表示下载功能测试通过,也可以执行删除功能,页面刷新附件删除,表示附件删除功能测试通过;点击“导出”按钮,该员工的信息能以Excel形式进行正确导出,即表示文件导出功能测试通过;点击“修改角色”按钮,弹出修改角色页面,在此页面右侧选择需要添加的角色,点击“保存”按钮,保存成功后,刷新左侧页面显示新添加的角色信息,即表示角色添加功能测试通过;在左侧页面选择需要删除的角色,点击“删除”按钮,刷新左侧页面不显示已删除的角色,即表示角色删除功能测试通过。选择需要转正的员工,点击“转正”或“批量转正”按钮,系统提示“转正成功”,同时员工状态改变,即表示转正功能测试通过。(4) “员工门禁卡维护”测试点击“员工门禁卡维护”菜单,页面显示员工门禁卡信息;点击“新增”按钮,弹出新增员工门禁卡信息的页面,输入员工门禁卡信息后,点击“添加”按钮,验证通过后,系统提示“添加成功”,刷新列表显示已添加信息,即表示员工门禁卡添加功能测试通过。5.1.2 信息管理模块功能的测试(1) “功能按钮维护”测试点击“功能按钮维护”菜单,页面列表中显示所有功能按钮信息;点击“新增”按钮,弹出添加功能按钮信息页面,输入需要添加的信息后,点击“添加”按钮,验证通过后,系统提示“添加成功”,即表示功能按钮添加功能测试通过;点击“修改”按钮,弹出功能按钮信息修改页面,输入需要修改的信息,点击“修改”按钮,验证通过后,系统提示“修改成功”,即表示功能按钮修改功能测试成功。点击“注销”按钮,验证通过后,系统提示“注销成功”,同时列表中该功能按钮的状态改变为注销状态,即表示注销功能测试通过。“医院管理”和“系统管理”菜单中的功能测试与“功能按钮维护”菜单中的功能测试相一致,系统中进行详细测试后,不再次做过多阐述。5.1.3 排班管理模块功能的测试(1) “号类维护”测试号类维护菜单中的功能测试与功能按钮维护中的功能测试内容基本一致,系统中进行详细测试后,不再次做过多阐述。(2) “基础号表维护”测试门诊基础号表中的列表显示、添加、修改、删除功能测试与功能按钮维护中的测试基本一致,系统中进行详细测试后,在此不再次做过多阐述。详细叙述分配号类的测试内容,点击“分配号类”按钮,弹出分配号类页面,在右侧页面中输入需要分配的号类信息,点击“分配”按钮,同时刷新左侧页面,页面上显示新分配的号类信息,即表示分配号类成功;在左侧页面上选择需要删除的号类信息,点击“删除”按钮,系统提示“删除成功”,即表示删除此分配的号类信息功能测试成功。5.2 本章小结本章主要介绍对各个模块中的每一个功能进行详细的测试,阐述了执行什么操作,需要达到什么样的效果,表示此功能测试成功。测试失败的功能,我们需要及时查找其中出现的问题,进行修改。最后,确保每一功能的正常执行。第6章 总结与展望6.1 总结本文运用Struts+Spring+Hibernate集成架构,构建了医院信息化系统,该系统经过良好的测试,功能实现健全,相信以后会为医院带来良好的经济效益。本文主要从需求分析、系统概要设计、系统详细设计与实现和系统测试等几个方面详细描述。首先,在需求分析中详细介绍了各个模块需要实现怎样的功能;在系统概要设计中介绍了系
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年冰雪运动知识竞赛题库及答案(六)
- 2025教师核心专业素养考试题及答案
- 2025年中国移动招聘考试笔试试题综合能力测试卷和答案
- 2025会计职能考试题库及答案
- 2025年曲靖市税务系统遴选面试真题附带题目详解含答案
- 2025年事业单位招聘职业能力倾向测验考试题库完整参考答案
- DB37T 4863-2025数字经济发展评价指标体系
- DB32T 5166-2025回弹法检测砌体中砖抗压强度技术规程
- RFID智能档案管理系统入门介绍
- 公司员工绩效考核评分标准与工具
- 2025年CCAA服务认证基础考试试题(答案+解析)
- 2025年辅警招聘考试试题库附答案(能力提升)
- 临床医学职业生涯规划
- 钢结构大棚承揽合同范本
- 2025至2030年中国液态锂电池行业市场发展现状及投资潜力预测报告
- 机房设备维修服务项目投标方案(技术标)
- 食品安全法规试题及答案
- (2025年标准)个人薪酬协议书
- 无人机植保技能培训课件
- 2024年中国创新方法大赛考试题库(含答案)
- 鱼池净化系统施工方案
评论
0/150
提交评论