医院预约挂号管理系统的设计与实现毕业论文.doc

上传人:仙人指路1688 文档编号:3936499 上传时间:2023-03-28 格式:DOC 页数:47 大小:1.39MB
返回 下载 相关 举报
医院预约挂号管理系统的设计与实现毕业论文.doc_第1页
第1页 / 共47页
医院预约挂号管理系统的设计与实现毕业论文.doc_第2页
第2页 / 共47页
医院预约挂号管理系统的设计与实现毕业论文.doc_第3页
第3页 / 共47页
医院预约挂号管理系统的设计与实现毕业论文.doc_第4页
第4页 / 共47页
医院预约挂号管理系统的设计与实现毕业论文.doc_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《医院预约挂号管理系统的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《医院预约挂号管理系统的设计与实现毕业论文.doc(47页珍藏版)》请在三一办公上搜索。

1、毕 业 论 文学生姓名学 号学院 计算机科学与技术学院专 业软件工程题 目医院预约挂号管理系统的设计与实现指导教师 (姓 名) (专业技术职称/学位)摘 要:当今的社会科技高速发展,信息技术日新月异,计算机化的医院预约挂号管理系统已成为现代化医院运营过程中必不可少的一部分。 本文介绍了医院预约挂号管理系统的基本设计方法,详细阐述了整个应用系统的设计思路,本系统主要具备: 医生信息管理、病人信息管理、医生科室查询、预约管理等功能模块。关 键 词: 医院系统的实现,SQL数据库系统,ASP.NETAbstract:Todays society rapid development of scienc

2、e and technology, information technology, computerized hospital appointment register management system management system has become an essential part of modern hospital operation process. Hospital appointment register management system management system were introduced in this paper, the basic desig

3、n method in detail elaborated the design idea of the whole application system, this system mainly have: physician information management, information management, doctor department inquiry, booking management function module, etc.Keywords:the realization of the HIS hospital system, SQL database syste

4、m,ASP.NET目 录1 绪论.41.1 研究背景与意义.41.2 研究动机与目的.41.3 数据库系统简介.41.4 ASP.NE简述. .52 可行性研究与应用需求分析.52.1 可行性研究.52.2 需求分析.63 系统分析.73.1 工作流程图.73.2 系统功能图.83.3 系统简介.84 数据库设计.94.1 E-R 图.94.2 主要数据库表设计.105 系统实现及编码115.1 系统后台的实现及其登录模块的实现115.2 医生资料操作模块.235.3 预约管理模块.245.4 用户管理界面管理.315.5 病人管理模块.335.6 病人登录模块的实现.335.7 病人预约模块

5、.355.8 查询模块.386 系统测试.43总 结.44参 考 文 献.45致 谢.461 绪论1.1研究背景与意义在手工业时代,企业对医院的各项管理的运作是停留在以纸、笔为主要工具的阶段。到后来,随着信息量的快速增长,这种传统的手工操作的方法已无法迅速、准确的完成各项管理工作。当医院意识到这点之后,纷纷开始重视医院管理。进入20世纪之后,随着系统、信息技术、管理工具的进步以及计算机的普及,许多医院开始利用计算机进行预约管理。从而提高了处理的速度与精度。在计算机飞速发展的今天,将计算机这一信息处理利器应用于医院的日常管理已是势必所然,这也将为医院预约挂号管理提供了很多的便利。医院预约挂号管理

6、的科学化和现代化给医院和老百姓都带来了很大的便利。主要体现在:极大提高了医院工作人员的工作效率,同时降低了管理中的漏洞,解决了异地和不便出家门的患者看病难的问题,大大减少了人们等挂号的时间等等。1.2研究动机与目的医院预约挂号管理系统是每一个医疗机构管理平常挂号业务流程不可或缺的一个管理信息系统,它的存在解决了病人挂号难、看病难等问题,所以医院预约挂号管理系统应该能够为每一个需要看病的患者提供充足的信息和快捷的查询手段,大大的方便了求医困难的广大人民群众。医院预约挂号管理是现代化医院的核心环节之一,它在整个医院管理中占有越来越重要的地位。从前,医院预约与查询管理都非常的耗时耗力,同时由于采用手

7、工操作,查询和统计的方式各不相同,不可避免造成一些错记漏记的错误。因此,开发这样一套医院预约挂号管理软件成为很有必要的事情,对于我们这些即将毕业的计算机专业学生来说,也是一次将专业知识应用于现实的很有意义的实践活动。1.3 数据库系统简介本人设计的是一个医院预约挂号管理的数据库系统,通过这个系统管理员可以简捷、方便的对用户、医生资料进行增加、删除、查询等功能。本系统采用SQL建立数据库,然后建立数据源的链接,并且生成医院预约挂号管理的数据库应用程序从而实现数据库的管理功能。SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL语句通常用于完

8、成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、 Sybase、 Microsoft SQL Server、 Access、 Ingres等等。数据库系统本质上是一个用计算机存储记录的系统。系统用户可以对这些文件执行插入数据、检索数据、更改数据、删除数据等一系列操作。图1-1是一个数据库系统的简图。图1-1 数据库系统简图1.4 ASP.NET 简述A是建立在通用语言运行时刻库(CLR)上的应用程序框架。他用来在服务器端构建功能强大的web应用程序。A提供了几个超越以前web开发模式的优点:增强的性能强大而富有弹性简单

9、易于管理可伸缩性和有效利用性可订制和扩展安全性ASP.NET一般分为两种开发语言,VB.NET和C#,C#相对比较常用,因为是.NET独有的语言,VB.NET则为以前VB程序设计,适合于以前VB程序员。ASP.net是运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。另外,通用语言简化开发使把代码结合成软件简单的就像吃饭。ASP.net使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。2 可行性研究与应用需求分析2.1 可行性研究该阶段通过对系统目标的

10、初步调研和分析,提出可行性方案并进行论证。我们在这里主要从技术、经济、使用等方面来分析解决问题的可行性。2.1.1技术可行性通过在学校的学习,积累了一定的知识与经验,在拥有的配置不低的开发工具与硬件与软件方面的资源,满足了本系统的要求。虽然开发人的技术水平不高,但是通过网上插好资料与借阅学校的图书资源自主学习ASP.NET,SQL Server 2005等基本课程,以及导师和同学的帮助,在规定的期限内能够基本完成本系统所需的开发任务。2.1.2经济可行性开发人在同学的帮助下在私人笔记本上安装并且完善了所需要的开发工具和环境,大大降低了开发经费。本系统不需要专门培训系统操作人员,大大减少了投入的

11、成本,避免了人员与金钱、时间的浪费。2.1.3使用可行性本系统主要从操作方式能否被广大人民所接受使用的角度考虑。开发人尽量的简化操作步骤,开发出便捷的操作方法与美化友好的操作界面使用户能尽快上手,功能符合医生与患者的需求。本系统对用户要求极低,只需具备基本的计算机操作知识与素养,不需要特殊的技术能力。管理员只需定期维护后台,并且具备SQL的使用能力即可。2.1.4社会可行性本系统是通过大量的调查研究,根据医院预约挂号的实际工作流程开发研制的。综上所述,本系统从技术、经济、使用、社会上看都是完全可靠的。2.2 需求分析本系统需求分析可以从使用的人群与模块的功能两部分考虑,并且对系统的性能和硬件环

12、境方面做了简要说明。2.2.1面向的用户群1)求医的人群:只要有一台联网的电脑,需要求医的患者通过登录网址进入网页,注册成为用户,用户可以通过查询医生或者科室找到医生资料,选择医生进行预约挂号,还可以修改密码,查找预约信息和个人资料。2)系统管理员:管理员可以对自己的信息进行修改,还可以添加别的管理员。管理员不仅可以对医生信息进行编辑,还可以管理病人的资料以及通过身份证号查询病人是否存在。同时管理员还可以对预约信息进行处理。2.2.2 主要的模块功能分析本系统主要实现的功能及其特点分析:第一:医院预约挂号管理系统需要各种数据的应用,需要各种数据的管理,这里将以SQL Server作为数据库开发

13、工具来设计数据库。包括各种基本表的建立,包括医生信息表,预约挂号表,病人信息表,管理员信息表,以及各个表间的连接等等。第二:每个系统都需要管理员进行管理,设置用户,这里将设置一个用户管理模块,实现对用户的管理。所有权负责人有权对预约信息管理员和预约人进行添加、修改和删除,以及查看用户的资料等。第三:为了提供医生资料的详细信息,专门有功能提供医生资料的输入及管理。第四:病人资料的录入方便了系统对病人相关资料的管理第五:为了方便医生的查找,病人可以通过输入医生姓名或者所需要预约挂号的科室查找所求的医生,并且选择日期进行预约。第六:管理员根据医生的工作时间,设置病人可以预约到医生的时间段,病人必须在

14、改时间段内选择预约医生的日期。3 系统分析3.1工作流程图 4.选择科室选择专家3.预约挂号3.修改信息3.专家查询3.选择科室5.选择可预约的医生7.预约成功6.选择时段确定预约8.就诊图 3-1预约挂号工作流程3.2系统功能图医院预约挂号管理系统用户注册修改密码医生资料查询个人资料查询个人预约信息病人用户管理员用户管理医生资料管理病人资料管理预约信息管理图3-2 系统功能结构3.3系统简介科学技术的飞速发展,使得各行业的竞争非常激烈,医院这个行业也不例外,为了提高管理的效率和操作的简单化,制作这预约挂号管理系统是顺应而生并且还是十分必要的。该系统特别适用中小型医院,针对医院规模不大,人手不

15、足等特点,并且解决了病人“求医难、挂号难”等问题,实现了不走出家门,不用去医院排队也能预约医生,充分利用了时间,便利了广大的求医群众,合理安排了看病时间。本系统操作满足了医院预约挂号的日常需求,操作易于上手,无需培训操作人员,节约了人力成本。我的目标就是开发一个功能实用、操作灵便、简单明了且低成本的医院预约挂号管理系统。本系统基于ASP.NET技术,采用SQL Server2005据库。在设计时力求作到界面简洁,风格统一,操作简便,易于上手等特点。本系统主要包括:医生资料管理、病人资料管理、用户管理、预约管理等。具体特点:极大地提高了医务人员的工作效率,加快了病人就诊的速度,有效地解决了“看病

16、难、挂号难”的问题。提高了医院的综合管理水平和服务质量。4 数据库设计4.1 E-R图图4-1 E-R图病 人真实姓名性 别密 码年 龄身份证号症 状管理员管理员编号管理员名称密 码专 长科 室预约医生预约编号预约时间预约人医 生医生编号从医年限专 长毕业院校医生姓名职 称年 龄科 室 管 理 管 理 管 理预约信息预 约真实姓名真实姓名医生与病人、管理员之间的E-R图:4.2主要数据库表设计通过各种渠道分析医院预约挂号管理的基本流程,以及医生与病人之间的联系得出E-R图4-1,本系统采用SQL Server 2005数据库管理系统,并建立了名为yuyue的数据库,本系统所要使用的所有数据信息

17、都存储在这个数据库里。在设计过程中需要考虑数据完整性约束。数据库上的完整性的约束条件一般有两类:1)属性值的约束这类约束是对属性取值的类型、范围、精度等的限制,和属性的语义有关。 2)数据之间联系的约束这类约束反映了数据之间存在的联系,在关系数据模型中指多个属性或多个元组之间联系的约束。比如,属性之间的函数依赖、多值依赖。在许多数据模型中都是表明了数据之间的某些依赖关系的,或者是隐式的或者是显式的。以下列举部分数据表:1.管理员表tb_user表4-1管理员表tb_user字段名数据类型长度主键否描述idint4是管理员编号usernamevarchar(50)50管理员名称userpwdva

18、rchar(50)50登录密码usertypevarchar(50)50评论日期2.预约表yuyue表4-2预约表yuyue字段名数据类型长度主键否描述idint4是预约编号sidvarchar(50)50病人编号didvarchar(50)50医生编号varchar(50)503.病人表sick表4-3病人表sick字段名数据类型长度主键否描述idvarchar(50)50是昵称passwordvarchar(50)50登录密码renamevarchar(50)50真实姓名agevarchar(50)50年龄sexvarchar(50)50性别zzvarchar(50)50症状Sidvarc

19、har(50)50身份证号4.医生表doctor表4-4医生表doctor字段名数据类型长度主键否描述idint4是医生编号namevarchar(50)50医生姓名agevarchar(50)50年龄byyxvarchar(50)50毕业院校cynxvarchar(50)50从医年限keshivarchar(50)50科室zhichengvarchar(50)50职称zhuanchangvarchar(50)50专长maxvarchar(50)50可预约数remainvarchar(50)50剩余预约数operatorTimevarchar(50)50预约开始时间operatorvarcha

20、r(50)50预约结束时间5 系统实现及编码5.1 系统后台的实现及其登录模块的实现5.1.1 系统后台实现代码1)后台公共函数编写:/ 描述 : 公用js函数库var oPopup = window.createPopup();/*取指定对象的x坐标*/function getx(e) var l=e.offsetLeft; while(e=e.offsetParent) l+=e.offsetLeft; return(l); /*取指定对象的y坐标*/function gety(e) var t=e.offsetTop; while(e=e.offsetParent) t+=e.offse

21、tTop; return(t);/*显示popup窗体c:窗体内容objx:相对o的x坐标距离y:相对o的y坐标距离w:宽度h:高度,如果设置为则自行获取默认高度o:相对于何obj*/function showpopup(c,x,y,w,h,o)oPopup.document.body.innerHTML = c.innerHTML;oPopup.document.createStyleSheet(document.styleSheets0.href );var popupBody = oPopup.document.body;oPopup.show(0, 0, w, 0);h=h=0?pop

22、upBody.scrollHeight:h;oPopup.hide();oPopup.show(x, y, w, h, o);/*提取xml根节点*/function getxmldoc(url) var oXMLDoc = new ActiveXObject(MSXML); oXMLDoc.url = url;var ooRoot=oXMLDoc.root;return ooRoot;/*所有gif图片鼠标经过效果,鼠标经过后显示的图片文件名在原图片名后加_over*/function imgover(obj)if(obj.locked = true) return; /如果对象被锁定,则不

23、触发事件if(typeof(obj)!=object)return false;if(obj.tagName!=IMG) /不是img对象则退出return false;var r, re; / 声明变量。var ss = obj.src;re = /.gif$b/i; / 创建正则表达式模式。r = ss.replace(re, _over.gif); /加上_overobj.src=r;obj.behave=over;/*所有gif图片鼠标按下效果,鼠标按下后显示的图片文件名在原图片名后加_down*/function imgdown(obj)if(obj.locked = true) r

24、eturn; /如果对象被锁定,则不触发事件if(obj.tagName!=IMG) /不是img对象则退出return false;var r, re; / 声明变量。var ss = obj.src;if(obj.behave=over)re = /_over.gif$b/i; r = ss.replace(re, _down.gif); if(obj.behave=)re = /.gif$b/i; / 创建正则表达式模式。r = ss.replace(re, _down.gif); /加上_downobj.src=r;obj.behave=down;/*所有gif图片鼠标按下效果,鼠标经

25、过后显示的图片文件名在原图片名后加_over*/function imgup(obj)if(obj.locked = true) return; /如果对象被锁定,则不触发事件if(typeof(obj)!=object)return false;if(obj.tagName!=IMG) /不是img对象则退出return false;var r, re; / 声明变量。var ss = obj.src;re = /_down.gif$b/i; / 创建正则表达式模式。r = ss.replace(re, _over.gif); obj.src=r;obj.behave=over;/*所有gi

26、f图片鼠标移出效果,鼠标经过后显示的图片文件名在原图片名后去掉_over*/function imgout(obj)if(typeof(obj)!=object)return false;if(obj.tagName!=IMG)/不是img对象则退出return false;var r, re; / 声明变量。var r = ss = obj.src;if(obj.behave=over)re = /_over.gif$b/i; r = ss.replace(re, .gif); if(obj.behave=down)re = /_down.gif$b/i; r = ss.replace(re

27、, .gif); obj.src=r; obj.behave=;/*所有样式表鼠标经过效果,鼠标经过后原样式表在后加over*/function classover(obj)if(obj.locked = true) return; /如果对象被锁定,则不触发事件if(typeof(obj)!=object)return false;if(obj.behave=over)return;var ss = obj.className;var r = ss+_over; /加上overobj.className=r;obj.behave=over;/*所有样式表鼠标移出效果,鼠标移出后原样式表在后去

28、掉over*/function classout(obj)if(obj.locked = true) return; /如果对象被锁定,则不触发事件if(typeof(obj)!=object)return false;var r, re; / 声明变量。var ss = obj.className;if(obj.behave=over)re = /_over$b/i; / 创建正则表达式模式。r = ss.replace(re, ); if(obj.behave=down)re = /_down$b/i; / 创建正则表达式模式。r = ss.replace(re, ); obj.class

29、Name=r; obj.behave=;/*所有样式表鼠标按下效果,鼠标按下后原样式表在后加上down*/function classdown(obj)if(obj.locked = true) return; /如果对象被锁定,则不触发事件if(typeof(obj)!=object)return false;var r, re; / 声明变量。var ss = obj.className;re = /_over$b/i; / 创建正则表达式模式。r = ss.replace(re, _down); obj.className=r; obj.behave=down;/*所有样式表鼠标释放效果

30、,鼠标释放后原样式表在后*/function classup(obj)if(obj.locked = true) return; /如果对象被锁定,则不触发事件if(typeof(obj)!=object)return false;var r, re; / 声明变量。var ss = obj.className;re = /_down$b/i; / 创建正则表达式模式。r = ss.replace(re, _over); obj.className=r;obj.behave=over;/*检查日期正确性*/function chkDateTime(str)var reg = /(d1,4)-(

31、d1,2)-(d1,2)$/; var r = str.match(reg); if(r=null)return false; var d= new Date(r1, -r2,r3); if(d.getFullYear()!=r1)return false;if(d.getMonth()!=r2)return false;if(d.getDate()!=r3)return false;return true;2)多文档窗口代码实现最终呈现的界面如下图所示:图5-1后台管理主界面/ 描述 : 多文档窗口function mywin()this.winlist = new Array(); /窗口

32、列表this.maxWins = 20;/最大窗口数this.tagTitleWidth = 150;/标签宽度this.indentWidth = 10;/标签缩进宽度this.currentwin = null;this.addwin = addwin; /新建窗口方法this.removewin = removewin; /移除窗体this.removeall = removeall; /移除所有窗体this.activewin = activewin; /激活窗口this.container = container;this.padLeft = padLeft;/ 标题离左边缘的距离t

33、his.padRight = padRight;/ 标题离右边缘的距离this.scrollWidth = scrollWidth;function container(url,title)for(var i=0;ithis.winlist.length;i+)if(this.winlisti.title = title & this.winlisti.url = url)return i;return -1;function activewin(oEl) /激活窗口if(oEl = null)this.currentwin = null;returnvar tempzindex = this.currentwin.style.zIndex;this.currentwin.wintitle.style.zIndex = this.currentwin.index;this.currentwin.style.display = none;this.currentwin.wintitle.style.backgroundImage = url(images/tab1.gif

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号