医院门诊综合管理系统_第1页
医院门诊综合管理系统_第2页
医院门诊综合管理系统_第3页
医院门诊综合管理系统_第4页
医院门诊综合管理系统_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录1引言 51.1门诊管理系统概述 51.2本课题研究背景及意义 51.2.1研究本课题背景 51.2.2研究本课题意义 51.3本课题研究内容 52系统开发技术及开发环境介绍 62.1JSP概述 62.2JAVA语言概述 62.3MYSQL概述 62.4系统开发和运行环境 63系统分析 73.1需求分析 73.2可行性分析 74系统设计 74.1系统目标 74.2系统步骤图 74.3系统功效结构 84.3.1门诊管理系统功效结构图 85数据库设计 95.1数据库需求分析 95.2数据库概念设计 95.3数据库逻辑结构设计 126系统功效实现 136.1后台功效模块设计 136.1.1门诊工作人员登录模块 136.1.2挂号收费管理模块 146.1.3病人信息管理模块 186.1.4药品信息管理模块 216.1.5病历信息管理模块 256.1.6划价收费管理模块 306.1.7科室信息管理模块 307结论 34参考文件 35致谢 36医院门诊管理系统[摘要]在以前中国大多数医院全部采取人工管理方法来完成医院门诊管理中各个步骤,这么管理方法效率低,犯错率高。伴随计算机科学技术飞速发展,医院门诊管理系统应用在全球范围内日益普及。在现代医院门诊管理中,大家逐步开始意识到信息系统对医院促进作用。逐步建立数字化医院门诊管理系统来管理医院各个工作步骤。本设计采取了B/S构架开发设计一个医院门诊管理系统,此系统在功效上可基础实现医院系统应用。系统设计开发视图界面和数据库设计,分析了医院门诊系统功效,并依据用户需求,使用jsp+servlet+javabean开发模式,基础实现此系统各功效。[关键字]B/S构架;医院门诊;管理系统HospitalOutpatientManagementSystemAbstract:Inthepast,mosthospitalsinourcountryhaveadoptedthemethodsofartificialmanagementtocompletethevariousstepsinthehospitaloutpatientmanagement,whichisinefficientandtheerrorrateishigh.Withtherapiddevelopmentofcomputerscienceandtechnology,theapplicationofhospitaloutpatientmanagementsystemisbecomingmoreandmorepopularintheworld.Inthemodernhospitaloutpatientmanagement,peoplegraduallybegantorealizetheroleofinformationsystemtothehospital.Graduallyestablishadigitalhospitaloutpatientmanagementsystemtomanagealltheworkflowofthehospital.ThisdesignusestheB/Sframeworkdevelopmentanddesignofahospitaloutpatientmanagementsystem,thissystemcanbasicallyrealizethefunctionofthehospitalsystem.Systemdesignanddevelopmentviewinterfaceanddatabasedesign,analysisofthehospitaloutpatientsystemfunctions,andaccordingtouserneeds,theuseofjsp+servlet+javabeandevelopmentmodel,thebasicrealizationofthevariousfunctionsofthesystem.Key

Words:B/Sframework,Hospitalclinic,Managementsystem1引言伴随社会不停发展和科技不停进步,作为二十一世纪关键标志计算机也蓬勃发展起来,大家对各行各业服务要求也越来越高。进入二十一世纪后,国家医疗制度日益完善,过去手工开单就诊步骤已经不能满足大家需要。现在几乎全部医院全部利用计算机信息管理技术手段来替换人工作业,从而降低人职员作量,减轻工作负担,降低工作中人为原因产生错误而带来无须要损失。提升医疗门诊部门服务效率和服务质量。为了实现医院门诊信息化建设,加紧医院系统信息化步伐,提升提升医院服务水平,完善医院信息已经变得十分关键。系统建设本着“以患者为中心”标准,以方便患者、提升就诊效率,为患者提升满意服务,提升医院社会效益和经济效益。本课题对医院信息系统现实状况进行分析,简单介绍了所选课题背景,系统关键利用了标准MVC三层架构(jsp+servlet+javaBean)技术,以JSP作为前台开发环境,以JavaBean作为业务逻辑,实现门诊管理系统增删改查功效,医院门诊部门工作人员以不一样身份登录系统,挂号部门能够将病人信息录入,经过病人要求描述选择医生和科室。医生能够将病人病例信息输入系统。经过医生所开处方进行划价收费。1.1门诊管理系统概述医院门诊管理系统是依据医疗机构特定步骤而开发,包含门诊部门工作人员登录、挂号管理、病历管理、科室管理、划价收费管理等。为医院管理提供有力保障。门诊管理系统提供了全方面人性化服务体系,其目标在于实现医疗门诊自动化,现在市场竞争越来越大,只有提升医疗质量,才能够满足更多病人需求和医疗管理需求。从而促进医院发展。1.2本课题研究背景及意义1.2.1研究本课题背景在过去相当长一段社会实践生活中,大家总是立即地利用刚刚出现新工具和新技术来改善交流方法和生活和生产方法,所以层出不穷换出新工业革命。现在计算机信息技术正在以更大范围及空间、愈加紧速地改变着大家生活,总体来说计算机信息技术发展即使只有短短几年时间,但以其快速而稳健发展步伐逐步取缔了传统市场,现在研究它相关技术已经达成了炉火纯青地步,计算机信息技术在大家生活中地位已经根深蒂固,成为了二十一世纪新标志。伴随中国医疗卫生体制改革,计算机信息管理已经成为各个医院提升竞争力,提升医疗管理力度,提升经济效益关键保障。现在在全国各大医院管理上,多数使用传统管理方法,这么很大程度上降低了医院门诊工作人员工作效率且录入数据正确性不高,不能很好对数据进行统计。不过延伸到生活各个领域,在这么环境背景下,设计出一款适适用于医院门诊管理人员使用系统,这么一来科大大提升医务人员工作效率。1.2.2研究本课题意义目前,电脑差不多普及家家户户,计算机信息技术已经成为人类生活一个方法[5]中国计算机信息技术萌芽期已经结束,现在已经进入了发展时期。新一代计算机信息技术能够吧信息采集存放处理,使用信息技术医院已超出上万家,对门诊管理系统需求医院越来越多,这一趋势带动了电子科技企业企业不停研发。医院门诊管理系统新模式。[6]现在各个医院门诊为了增强竞争力和医疗管理,对医院门诊系统需求原来越多,要求也越来越高。所以,不停地研发改善这平台将对门诊管理系统发展和完善有着深刻意义。1.3本课题研究内容本课题关键内容是设计医院门诊管理系统,该系统采取JavaWeb工程开发技术,在Windows平台上使用,开发工具为MyEclipse10,服务器为Tomcat7.0,数据库采取MYSQL,使用JSP开发视图页面和Servlet进行步骤控制,使用JDBC编写工具类对数据库进行访问,分析功效写具体实体类Dao,分析业务写Service。使用Filter实现用户权限功效,过滤掉该用户去权限URL,确保医院门诊系统各个功效模块正确。2系统开发技术及开发环境介绍2.1JSP概述JSP是由sun企业提倡、很多企业参与一起研发一个动态网页技术标准语言,通俗了解就是用来表示或显示动态值HTM页面。[2]JSP本质是servlet,它是Servlet实例,是为了方便开发人员能够以编辑HTML方法来写Servelt。JSP现有java代码又有HTML标签,而Servlet只是纯粹java代码。[7]JSP文件保留在Tomcat服务器中,当JSP文件被第一次请求时,Tomcat服务器将JSP文件转义为java文件,然后再将java文件翻译成字节码文件,最终字节码文件才响应用户端请求。[9]2.2JAVA语言概述JAVA是由sun企业推出一个程序设计语言。Java语言是一个面向对象、能够跨平台语言。[8]JAVA技术含有卓越通用性、高效性、平台移植性和安全性,广泛应用于应急系统、政府办公系统、游戏控制台、移动通信、互联网等等。JAVA语言含有封装、继承、多态三大特称。[1]封装就是经过定义类然后给这个类属性和方法加上访问控制,继承就是代码重用,多态就是一个方法只能有一个名词,但能够有很多个形态。2.3MYSQL概述MYSQL是瑞典MYSQLAB企业研发出一个数据库管理系统。在被SUN企业收购,到SUN又被Oracel收购。[3]MYSQL体积很小,不过运行速度比较快,总体拥有成本也比较低,MYSQL被广泛应用在很多中小型网站中。MYSQL是基于用户端/服务器模式数据库系统,经过图形化界面用户能够方便而快捷对数据库进行管理,它还提供较为丰富编程接口,给编程开发设计提供了很多便利。2.4系统开发运行环境系统开发运行环境以下:1.硬件(1)CPUIntercorei5:(2)内存:2G(3)足够可用硬盘空间:(4)显示:1024*7682.软件(1)操作系统:windows7(2)Web服务器(3)浏览器,IE7.0以上;(4)数据库MYSQL(5)开发工具MyEclipse103系统分析3.1需求分析对本系统要求有以下功效:一、医院门诊部门工作人员以不一样身份登录系统。系统能够长久稳定运行、数据库访问权限设置合理,确保用户账号信息安全。二、挂号部门能够将病人信息录入,经过病人要求描述选择医生和科室。系统要极易进行维护,相关数据要立即更新而且数据不能出现错误。[10]三、医生能将病人病例信息输入系统,操作要简单明了,层次分明。四、经过医生所开处方进行划价收费3.2可行性分析伴随信息时代到来,医院门诊管理系统成为了医院对医疗步骤工具、在医院门诊管理系统中,工作人员登录进入系统后,能够进行挂号录入,添加病人信息,查看病人信息,划价收费等操作。[4]如挂号部门依据病人描述对病人选择医生和科室,医生经过对病人诊疗后,对病人基础信息进行增加、删除、修改和查询,看完医生后病人到指定药品窗口买药,收费人员对病人所拿据单进行查询和统计然后收取费用。4系统设计4.1系统目标对于现在竞争日趋猛烈医疗机构,民营医院逐步进入市场,医疗机构管理系统愈发凸显其关键性,医院门诊管理系一定要满足使用操作方便灵活等设计要求,所以,设计需满足这多个目标:一、全部操作步骤要简单易懂、系统相关界面设计要清洁美观。二、医院门诊部门工作人员以不一样身份登录系统。三、挂号部门能够将病人信息录入,经过病人要求描述选择医生和科室。四、医生能将病人病例信息录入系统。五、经过医生所开处方进行划价收费。4.2系统步骤图医院门诊系统步骤图工作人员登录病例管理模块工作人员登录病例管理模块划价收费模块挂号收费模块选择科室及挂号类型查看该医生姓名、科室、职称及挂号费价格挂号收费凭证打印输入病例本编号或病人姓名查看病人信息或对病人信息进行录入输入药品名、选择药品规格、输入药品数量查看药品名称、规格、数量、药单价及总价划价或收费凭证打印退出4.3系统功效结构4.3.1门诊管理系统功效设计医院门诊管理系统医院门诊管理系统病历管理科室管理划价管理挂号管理工作人员管理病历管理科室管理划价管理挂号管理工作人员管理工作人员退出药品信息管理药品收费信息科室信息删除科室信息修改挂号服务功效病人信息管理信息咨询科室信息添加科室信息查询病历删除功效病历修改功效病历查询功效病历信息录入工作人员退出药品信息管理药品收费信息科室信息删除科室信息修改挂号服务功效病人信息管理信息咨询科室信息添加科室信息查询病历删除功效病历修改功效病历查询功效病历信息录入工作人员登录药品信息删除药品信息修改药品信息添加药品信息删除药品信息修改药品信息添加5数据库设计5.1数据库需求分析数据库在设计结构上能够充足考虑到多种信息输入和输出,经过数据字典能够清楚地知道数据结构和处理过程,为后面具体设计打下基础,经过总结得出以下几点需求信息:1、系统需要设计为前后台;2、门诊部门工作人员能够不一样身份登录系统,比如医生登录、收费人员登录、挂号人员登录等;3、一个用户能够购置多个商品;4、在线留言功效;5、要分别统计销售情况;5.2数据库概念设计经过对门诊管理系统进行相关需求分析后,得出使用数据实体分别为:“病历信息”、“医生信息”、“药品信息”、“病人信息”、“挂号信息”、“科室信息”。各实体E-R图以下:病历信息E-R图病人姓名病人姓名诊疗结果诊疗结果诊疗方法用户编号诊疗方法用户编号处方编号诊疗时间病历信息处方编号诊疗时间病历信息就诊卡号病历编号就诊卡号病历编号(2)医生信息E-R图医生编号医生详情医生编号医生详情医生所在科室医生姓名医生信息医生所在科室医生姓名医生信息医生状态医生性别医生年纪医生状态医生性别医生年纪(3)药品信息E-R图药品功效药品功效药品规格药品规格生产厂家生产厂家药品编号药品编号药品药品使用期药品使用期药品名称药品名称药品库存药品单价药品库存药品单价(4)病人信息E-R图病人年纪病人病人年纪病人病人性别病人姓名就诊卡号病人性别病人姓名就诊卡号(5)挂号信息E-R图挂号类型挂号类型挂号编号挂号挂号编号挂号挂号日期挂号日期挂号费用科室编号挂号费用科室编号就诊卡号就诊卡号(6)科室E-R图科室科室科室编号科室名称科室编号科室名称5.3数据库逻辑结构设计完成E-R图设计以后,还需要设计数据表结构,以下是医院门诊管理系统中数据表结构。1.t_userinfos(工作人员信息表)表t_userinfos用于保留门诊工作人员基础信息列名数据类型许可空字段说明u_idvarchar(30)否工作人员编号u_namevarchar(30)是工作人员姓名u_pwdvarchar(20)是工作人员密码u_sexvarchar(10)是工作人员性别u_agevarchar(20)是工作人员年纪u_telvarchar(100)是工作人员电话u_emailvarchar(50)是工作人员邮箱u_titlevarchar(50)是工作人员职称u_taskstatevarchar(20)是工作人员状态u_expvarchar(100)是工作人员描述2.t_patients(病人信息表)表t_patients,统计患者个人信息列名数据类型许可空字段说明pi_idvarchar(20)否病人编号Pi_namevarchar(30)否病人姓名pi_sexvarchar(10)否病人性别pi_agevarchar(20)否病人年纪3.t_case(病历表)统计病人就诊信息列名数据类型许可空字段说明c_idvarchar(20)否病历编号c_datevarchar(50)否诊疗时间c_resultvarchar(50)否诊疗结果c_methodvarchar(50)否诊疗方法pi_idvarchar(20)否就诊卡号pi_namevarchar(20)否病人姓名rc_idvarchar(20)否处方编号u_idvarchar(20)否工作人员编号4.t_doctor(医生表)统计医生基础信息列名数据类型许可空字段说明d_idvarchar(20)否医生编号d_namevarchar(20)否医生姓名d_sexvarchar(10)否医生性别d_agevarchar(20)否医生年纪d_statevarchar(30)是医生状态d_detailvarchar(30)是医生具体信息d_telvarchar(50)是医生电话S_idvarchar(20)否医生所在科室5.t_medicine(药品表)统计药品具体信息,列名数据类型许可空字段说明m_idvarchar(20)否药品编号m_namevarchar(20)否订单编号m_specvarchar(20)否药品规格m_countvarchar(20)否药品库存m_funtionvarchar(50)否药品功效m_pricevarchar(20)是药品单价m_timevarchar(20)否药品使用期m_addrvarchar(50)否生产厂家6.t_section(科室表)统计科室基础信息列名数据类型许可空字段说明s_idvarchar(20)否科室编号s_namevarchar(30)否科室名称7.t_registration(挂号表)统计挂号基础信息列名数据类型许可空字段说明rg_idvarchar(20)否挂号编号rg_pricevarchar(20)否挂号费用rg_typevarchar(50)否挂号类型rg_datevarchar(50)否挂号日期s_idvarchar(20)否科室编号pi_idvarchar(20)否就诊卡号6系统功效实现6.1功效模块设计6.1.1登录模块医院门诊工作人员或系统管理员经过登录页面输入自己账号和密码,在LoginServlet控制器接收输入账号和密码,调用Dao层和业务层Service,然后判定在系统中是否已经存在该用户,假如已经存在就提醒登录成功,跳转到主页面,若不存在,则提醒登录失败,跳转回登录页面,再重新登录。登录页面设计以下图:登录页面login.html前端页面代码:用户<inputtype="text"name="u_id"id="textfiel">密码<inputtype="password"name="u_pwd"id="textfield2">验证码<inputtype="text"name="u_code"id="textfield3">前端页面提交数据到LonginServlet控制器代码:publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{Stringu_id=request.getParameter("u_id"); Stringu_pwd=request.getParameter("u_pwd"); Stringu_code=request.getParameter("u_code");StringverifyCode=(String)request.getSession().getAttribute( "verifyCode");publicbooleanlogin(UserInfouserInfo){ Stringsql="select*fromT_userInfoswhereu_id='" +userInfo.getU_id()+"'andu_pwd='"+userInfo.getU_pwd() +"'"; returnuserInfoDao.login(sql); }booleanflag=userInfoService.login(userInfo); if(flag){ if(u_code.equals(verifyCode)){//保留账户名到session中 request.getSession().setAttribute("u_id",u_id); out.print("alert(\"恭喜您登录成功!\");"); }else{ out.print("alert(\"验证码输入有误,请重新登录!\");"); out.print("window.location.href=\"html/login.htm\";" } }else{ out.print("alert(\"帐户名或密码有误,请重新登录!\");"); out.print("window.location.href=\"html/login.htm\";"); } return; }6.1.2挂号收费管理模块医院门诊工作人员为前来挂号看病患者,提供挂号服务。医院门诊人员可依据患者描述,选择科室,查看目前值班医生,能够向需要患者提供必需医生具体并进行挂号,并打印挂号凭证。能够对前来咨询医生工作时间或医院药品情况就诊人员提供必需咨询服务。挂号收费管理模块设计图所表示:挂号收费管理挂号信息录入以下图:挂号信息修改以下图:挂号录入(添加)代码:publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ //获取操作对象opt Stringopt=request.getParameter("opt");//病人信息IPatientServicepatientService=newPatientServiceImpl(); Patientpatient=null;//挂号信息IRegistrationServiceregistrationService=newRegistrationServiceImpl(); Registrationregistration=null;//获取挂号页面信息 Stringrg_id=request.getParameter("rg_id"); Strings_id=request.getParameter("s_id"); Stringpi_id=request.getParameter("pi_id"); Stringrg_price=request.getParameter("rg_price"); Stringrg_date=request.getParameter("rg_date"); Stringrg_type=request.getParameter("rg_type"); //病人信息 Stringpi_name=request.getParameter("pi_name"); Stringpi_sex=request.getParameter("pi_sex"); Stringpi_age=request.getParameter("pi_age"); /** *添加病人信息 *添加挂号信息 */ if("add".equals(opt)){ patient=newPatient(pi_id,pi_name,pi_sex,pi_age); registration=newRegistration(rg_id,s_id,pi_id,rg_price, rg_date,rg_type); try{ //调用病人添加 patientService.addpatient(patient); //调用挂号添加 registrationService.addregistration(registration); response.sendRedirect("registration2.do?obj=queryAll"); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } return; }删除挂号信息代码:if("del".equals(opt)){ registration=newRegistration(rg_id); try{ registrationService.delregistration(registration); response.sendRedirect("registration2.do?obj=queryAll"); }catch(Exceptione){ e.prinStackTrace(); response.sendRedirect("error.html"); } return; }修改挂号信息代码:if("upd".equals(opt)){ registration=newRegistration(rg_id,s_id,pi_id,rg_price, rg_date,rg_type); try{ registrationService.updregistration(registration); response.sendRedirect("registration2.do?obj=queryAll"); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } return; }查询全部挂号信息列表对应代码://分页Stringgopage=request.getParameter("goNumber");Stringobj=request.getParameter("obj");//获取操作对象if("queryAll".equals(obj)){ intgoNumber=0; if(gopage!=null&&!gopage.equals("")){ goNumber=Integer.parseInt(gopage); }//将挂号信息放入集合中 List<Registration2>list=newArrayList<Registration2>(); if(opt!=null&&!opt.equals("")){ list=(List<Registration2>)request.getSession().getAttribute("list"); } else{ if(rg_id!=null&&!rg_id.equals("")||pi_id!=null&&!pi_id.equals("")){ registration2=newRegistration2(); registration2.setRg_id(rg_id); registration2.setPi_id(pi_id); } list=registrationService2.queryAll(registration2); //查询以后存入session request.getSession().setAttribute("list",list); //生成pager(第一页) pager=newPager(); } if(gopage!=null){ pager=newPagerService().getPager(goNumber,opt,list.size()); }else{ pager=newPagerService().getPager(pager.getCurrentPage(),opt,list.size()); } List<Registration2>pageList=newArrayList<Registration2>(); /** *获取到list.size就能够进行分页 */ for(inti=pager.getStartRow();i<pager.getStartRow()+pager.getPageSize()&&i<list.size();i++){ pageList.add(list.get(i)); } request.setAttribute("listA",pageList); request.setAttribute("pager",pager); request.getRequestDispatcher("html/media/showregistration2.jsp").forward(request,response); } }6.1.3病人信息管理模块医院门诊工作人员能够对病人基础信息进行集中管理,对初诊病人进行录入基础信息,录入错误还能够对病人信息进行修改或删除,还能够输入病人就诊卡号或姓名对病人信息进行查询。病人信息和信息添加图所表示:病人信息管理对初诊人员进行基础信息录入,病人信息添加以下图:门诊工作人员依据需要对病人错误信息进行修改。病人信息修改以下图:病人增删改查对应代码:publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); PrintWriterout=response.getWriter(); //获取操作只是opt Stringopt=request.getParameter("opt"); //生成服务对象 IPatientServicepatientService=newPatientServiceImpl(); Patientpatient=null; //获取页面信息 Stringpi_id=request.getParameter("pi_id"); Stringpi_name=request.getParameter("pi_name"); Stringpi_sex=request.getParameter("pi_sex"); Stringpi_age=request.getParameter("pi_age"); Stringobj=request.getParameter("obj"); Stringgopage=request.getParameter("goNumber"); /** *添加病人信息 */ if("add".equals(opt)){ System.out.println("opt-->"+opt); patient=newPatient(pi_id,pi_name,pi_sex,pi_age); try{ //调用病人添加 patientService.addpatient(patient); response.sendRedirect("patient.do?obj=queryAll"); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } return; } /** *删除病人信息 */ if("del".equals(opt)){ patient=newPatient(pi_id); try{ patientService.delpatient(patient); response.sendRedirect("patient.do?obj=queryAll"); }catch(Exceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); response.sendRedirect("error.html"); } return; } /** *修改病人信息 */ if("upd".equals(opt)){ patient=newPatient(pi_id,pi_name,pi_sex,pi_age); try{ patientService.updpatient(patient); response.sendRedirect("patient.do?obj=queryAll"); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } return; } /** *用findById查询病人信息 *去修改页面 */ if("toupd".equals(opt)){ patient=newPatient(pi_id,pi_name,pi_sex,pi_age); try{ Patientpatient1=patientService.findById(patient); request.setAttribute("patient",patient1); request.getRequestDispatcher("html/media/toupdpatient2.jsp").forward(request,response); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } } /** *病人信息展示 *可进行模糊查询 */ if("queryAll".equals(obj)){ Stringopt1=request.getParameter("opt"); System.out.println(obj); System.out.println(opt1); intgoNumber=0; if(gopage!=null&&!gopage.equals("")){ goNumber=Integer.parseInt(gopage); } System.out.println(goNumber); List<Patient>list=newArrayList<Patient>(); if(opt1!=null&&!opt1.equals("")){ list=(List<Patient>)request.getSession().getAttribute("list"); }else{ if(pi_id!=null&&!pi_id.equals("")||pi_name!=null&&!pi_name.equals("")){ patient=newPatient(); patient.setPi_id(pi_id); patient.setPi_name(pi_name); } patientService.queryAll(patient); list=patientService.queryAll(patient); //查询以后存入session request.getSession().setAttribute("list",list); //生成pager(第一页) pager=newPager(); } if(gopage!=null){ pager=newPagerService().getPager(goNumber,opt1,list.size()); }else{ pager=newPagerService().getPager(pager.getCurrentPage(),opt1, list.size()); } List<Patient>pageList=newArrayList<Patient>(); System.out.println(pageList.size()); /** *获取到list.size就能够进行分页 */ for(inti=pager.getStartRow();i<pager.getStartRow() +pager.getPageSize() &&i<list.size();i++){ pageList.add(list.get(i)); } request.setAttribute("listA",pageList); request.setAttribute("pager",pager); request.getRequestDispatcher("html/media/showpatient2.jsp").forward(request,response); } }6.1.4药品信息管理模块医院门诊工作人员能够对药品进行增删改查操作。当药品不足时,药品管理人员能够对药品信息进行添加,当录入错误,能够对药品信息进行修改或删除操作。药品信息管理设计以下:药品信息添加以下图:药品信息修改以下图:药品增删改查对应代码:publicclassMedicineServletextendsHttpServlet{ privatePagerpager; publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ doPost(request,response); } publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{ //获取操作参数 Stringopt=request.getParameter("opt"); //获取页面信息 Stringm_id=request.getParameter("m_id"); Stringm_name=request.getParameter("m_name"); Stringm_spec=request.getParameter("m_spec"); Stringm_count=request.getParameter("m_count"); Stringm_function=request.getParameter("m_function"); Stringm_price=request.getParameter("m_price"); Stringm_time=request.getParameter("m_time"); Stringm_addr=request.getParameter("m_addr"); Stringcount=request.getParameter("count"); Stringobj=request.getParameter("obj"); Stringgopage=request.getParameter("goNumber"); //获取到对象 Medicinemedicine=null; Reciperecipe=null; //sercive IMedicineServicemedicineService=newMedicineServiceImpl(); IRecipeServicerecipeService=newRecipeServiceImpl(); /** *添加药品信息 */ System.out.println("m_id"); if("add".equals(opt)){ medicine=newMedicine(m_id,m_name,m_spec,m_count,m_function, m_price,m_time,m_addr); medicineService.addMedicine(medicine); response.sendRedirect("medicine.do?obj=queryAll"); } /** *删除药品信息 */ if("del".equals(opt)){ recipe=newRecipe(); recipe.setM_id(m_id); Reciperecipe2=medicineService.findById(recipe); if(recipe2!=null){ medicineService.updRecipe(recipe2); } Stringm_id1=newString(m_id.getBytes("iso-8859-1"),"utf-8"); medicine=newMedicine(); medicine.setM_id(m_id1); medicineService.delMedicine(medicine); response.sendRedirect("medicine.do?obj=queryAll"); } /** *修改药品信息 */ if("upd".equals(opt)){ medicine=newMedicine(m_id,m_name,m_spec,m_count,m_function, m_price,m_time,m_addr); medicineService.updMedicine(medicine); response.sendRedirect("medicine.do?obj=queryAll"); } /** *经过ID查找 */ if("findByIdMedicine".equals(opt)){ medicine=newMedicine(); medicine.setM_id(m_id); Medicinemedicine1=medicineService.findById(medicine); request.setAttribute("medicine",medicine1); request.getRequestDispatcher("html/worktime/UpdMedicine.jsp") .forward(request,response); } /** *设置分页 */ if("queryAll".equals(obj)){ intgoNumber=0; if(gopage!=null&&!gopage.equals("")){ goNumber=Integer.parseInt(gopage); } List<Medicine>listM=newArrayList<Medicine>(); if(opt!=null&&!opt.equals("")){ listM=(List<Medicine>)request.getSession().getAttribute( "listM"); }else{ medicine=newMedicine(); medicine.setM_id(m_id); System.out.println(m_id); listM=medicineService.queryAll(medicine); System.out.println(listM.size()); //查询以后存入session request.getSession().setAttribute("listM",listM); //声称page(第一页) pager=newPager(); } if(gopage!=null){ pager=newPagerService() .getPager(goNumber,opt,listM.size()); } else{ pager=newPagerService().getPager(pager.getCurrentPage(), opt,listM.size()); } List<Medicine>pageList=newArrayList<Medicine>(); /** *获取到list.size就能够进行分页 */ for(inti=pager.getStartRow();i<pager.getStartRow() +pager.getPageSize() &&i<listM.size();i++){ pageList.add(listM.get(i)); } request.setAttribute("listA",pageList); request.setAttribute("pager",pager); request.getRequestDispatcher("html/worktime/Medicine.jsp").forward( request,response); }6.1.5病历信息管理模块医生或教授能够对病历进行添加、删除、修改、查询操作。[11]对前来就诊病人进行病历添加,病历输入错误能够对病历信息进行修改或删除。病历管理模块设计图所表示:病历信息添加以下图:病历信息修改以下图:病历增删改查对应代码:publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ //获取页面信息 Stringc_id=request.getParameter("c_id"); Stringpi_id=request.getParameter("pi_id"); Stringgopage=request.getParameter("goNumber"); Stringopt=request.getParameter("opt"); //业务操作类 IPatientServiceiPatientService=newPatientServiceImpl(); ICaseServiceiCaseService=newCaseServiceImpl(); IRegistrationServiceiRegistrationService=newRegistrationServiceImpl(); Patientpatient=newPatient(); Casecase1=null; if("queryAll".equals(opt)){ Stringobj=request.getParameter("obj"); intgoNumber=0; if(gopage!=null&&!gopage.equals("")){ goNumber=Integer.parseInt(gopage); } System.out.println(goNumber); List<Case>list=newArrayList<Case>(); if(obj!=null&&!obj.equals("")){ list=(List<Case>)request.getSession().getAttribute("list"); }else{ if(c_id!=null&&!c_id.equals("")){ case1=newCase(); case1.setC_id(c_id); } //存入数据 list= iCaseService.queryAll(case1); //存人session request.getSession().setAttribute("list",list); //生成pager(第一页) pager=newPager(); } if(gopage!=null){ pager=newPagerService().getPager(goNumber,obj,list.size()); } else{ pager=newPagerService().getPager(pager.getCurrentPage(), obj,list.size()); } List<Case>pageList=newArrayList<Case>(); /** *获取到list.size就能够进行分页 */ for(inti=pager.getStartRow();i<pager.getStartRow() +pager.getPageSize() &&i<list.size();i++){ pageList.add(list.get(i)); } for(Casecase2:pageList){ System.out.println(case2); } request.setAttribute("pageList",pageList); System.out.println(pageList); request.setAttribute("pager",pager); request.getRequestDispatcher("html/records/P_infor.jsp").forward(request,response); return; }//删除病历 if("del".equals(opt)){ case1=newCase(c_id,pi_id); try{ //调用删除方法 iCaseService.delCase(case1); response.sendRedirect("case.do?opt=queryAll"); }catch(Exceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); response.sendRedirect("error.html"); } }//添加病历 if("add".equals(opt)){ System.out.println(opt); //获取页面信息 Stringrc_id=request.getParameter("rc_id"); Stringu_id=request.getParameter("u_id"); Stringc_date=request.getParameter("c_date"); Stringc_result=request.getParameter("c_result"); Stringc_method=request.getParameter("c_method"); Stringm_id=request.getParameter("m_id"); Stringrc_count=request.getParameter("rc_count"); //添加处方信息 Reciperecipe=newRecipe(); recipe=newRecipe(rc_id,m_id,rc_count); IRecipeServiceiRecipeService=newRecipeServiceImpl(); iRecipeService.addRecipe(recipe); //添加处方信息 case1=newCase(c_id,pi_id,rc_id,u_id,c_date,c_result,c_method); iCaseService.addCase(case1); response.sendRedirect("case.do?opt=queryAll"); } if("cha".equals(opt)){ case1=newCase(); case1.setC_id(c_id); Casecase2=null; try{ //查询病例信息 case2=iCaseService.findById(case1); request.setAttribute("case2",case2); //查询病人信息 patient.setPi_id(case2.getPi_id()); Patientpatient1=iPatientService.findById(patient); request.setAttribute("patient1",patient1); //查询处方信息 Reciperecipe=newRecipe(); IRecipeServiceiRecipeService=newRecipeServiceImpl(); recipe.setRc_id(case2.getRc_id()); Reciperecipe1=iRecipeService.findById(recipe); request.setAttribute("recipe1",recipe1); request.getRequestDispatcher("html/records/Chaxun.jsp").forward(request,response); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } }//查询病历信息if("toupd".equals(opt)){ case1=newCase(); case1.setC_id(c_id); Casecase2=null; try{ case2=iCaseService.findById(case1); request.setAttribute("case2",case2); patient.setPi_id(case2.getPi_id()); Patientpatient1=iPatientService.findById(patient); request.setAttribute("patient1",patient1); Reciperecipe=newRecipe(); IRecipeServiceiRecipeService=newRecipeServiceImpl(); recipe.setRc_id(case2.getRc_id()); Reciperecipe1=iRecipeService.findById(recipe); request.setAttribute("recipe1",recipe1); request.getRequestDispatcher("html/records/C_P.jsp").forward(request,response); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } }//修改病历信息 if("upd".equals(opt)){ //获取页面信息 Stringm_name=request.getParameter("m_name"); Stringpi_name=request.getParameter("pi_name"); Stringpi_sex=request.getParameter("pi_sex"); Stringpi_age=request.getParameter("pi_age"); Stringrc_id=request.getParameter("rc_id"); Stringu_id=request.getParameter("u_id"); Stringc_date=request.getParameter("c_date"); Stringc_result=request.getParameter("c_result"); Stringc_method=request.getParameter("c_method"); Stringm_id=request.getParameter("m_id"); Stringrc_count=request.getParameter("rc_count"); case1=newCase(c_id,pi_id,rc_id,u_id,c_date,c_result,c_method); try{ iCaseService.updCase(case1); patient=newPatient(pi_id,pi_name,pi_sex,pi_age); iPatientService.updpatient(patient); Reciperecipe=newRecipe(); recipe=newRecipe(rc_id,m_id,rc_count); IRecipeServiceiRecipeService=newRecipeServiceImpl(); iRecipeService.updRecipe(recipe); response.sendRedirect("case.do?opt=queryAll"); }catch(Exceptione){ e.printStackTrace(); response.sendRedirect("error.html"); } }6.1.6划价收费管理模块医院门诊部工作人员为持有医生药单或处方前来划价或缴费人员依据其所持有药单或处方分别进行划价和收费。划价收费管理模块设计以下:药品收费信息6.1.7科室管理模块医院门诊管理人员能够对科室进行添加、删除、修改、查询操作。[12]科室有内科、外科、皮肤科、儿科等。科室管理设计图:科室信息管理科室信息添加以下图:科室信息修改以下图:科室增删改查代码:publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); PrintWriterout=response.getWriter(); //获取操作只是opt Stringopt=request.getParameter("opt"); //生成服务对象 ISectionServicesectionService=newSectionServiceImpl(); Sectionsection=null; //获取页面信息 Strings_id=request.getParameter("s_id"); Strings_name=request.getParameter("s_name"); Stringobj=request.getParameter("obj"); Stringgopage=request.getParameter("goNumber"); /** *添加科室信息 */ if("add".equals(opt)){ section=newSection(s_id,s_name); try{ //调科室添加 sectionService.addsection(section); response.sendRedir

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论