医院门诊数据库课程设计模板.doc_第1页
医院门诊数据库课程设计模板.doc_第2页
医院门诊数据库课程设计模板.doc_第3页
医院门诊数据库课程设计模板.doc_第4页
医院门诊数据库课程设计模板.doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

王晓岩 医院门诊收费系统的设计与实现 第页 共22页 目 录1引言4 1.1课题背景. . .41.2 课程设计目的 . 41.3 课程设计任务.52 系统结构分析. 62.1 需求分析 .62.2 系统模块图. .73 数据库设计. 93.1 概念结构设计. 93.2 逻辑结构设计. 113.3 数据库表的建立 . 134 系统实现.174.1 数据库的连接. 174.2 系统功能模块设计.184.3 信息管理模块设计 .204.4 收费管理模块设计.224.5 统计查询管理模块设计 255 功能测试 . 295.1 登陆界面. 295.2 主界面 .295.3 各功能模块的测试 306 系统技术实现. 316.1 ADO . 316.2 SQL Server 2000. 317 结束语. 32致谢.33参考文献.34附录.35医院门诊收费系统的设计与实现学生姓名:XX 指导老师:XX摘 要 本课程设计主要解决医院门诊收费的管理问题, 设计开发一个简单的医院门诊收费系统 ,实现门诊收费,划价;药品管理,患者管理;医务人员管理及各种查询,报表等功能。在课程设计中,系统开发平台为Windows XP,程序设计语言采用Visual C+,数据库采用SQL Server 2000,程序运行平台为Windows98/2000/Xp。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,将可以应用在医院门诊收费的管理中,解决实际问题。关键词 信息管理系统;数据库;门诊收费The Design and Implementation of the Hospital Outpatient Service Charge SystemStudent name: Wang Xiao-yan Advisor:ZHOU Shu-renAbstract This curriculum design aims at resolve the management problems of hospital outpatient service charge and develops a simple hospital outpatient service charge system.It can realize the outpatient service charge, delimits price; the drugs management, the patient manages; Medical personnel management and each kind of inquiry, report form and so on.In the curriculum design,the system development platform is Windows XP,the programming language uses Visual C + +, the database uses SQL Server 2000, running platforms are Windows98/2000/Xp.It has implemented the initial design goals after had been run through the debugging process.And after going through a proper sound, it will be used in the hospital outpatient service charge system in solving practical problems.Keywords Information management system;Database; Outpatient service1 引言1.1课题背景在现代信息技术的基础上,随着人类对各种工程研究成果的逐步推广应用,不久的将来,医疗卫生领域对信息技术的依赖程度将远远超过目前电信、银行、航空业。医院信息化必将得到充分的重视和发展,而医院门诊收费系统就是医院信息化中的重要的一部分。随着计算机性能不断提高,价格不断下降,计算机已在医院医疗、教学、科研、管理等方面得到越来越广泛的应用。计算机化的医院信息系统已成为现代化医院运营过程中必不可少的基础设施与技术支撑环境。计算机信息管理技术的应用,除了能在相当大的程度上代替人工作业,从而减少人员工作量,减轻工作负担,减少工作中因人为原因而产生的错误从而避免不必要的损失外,更重要的是能建立准确畅通、简便的信息流通渠道,为工作提供所需要的准确、及时的信息以帮助做出正确而及时的选择与决定,从而给采用这门技术的单位带来了巨大的可见或不可见的利益与效益。1.2课程设计目的医院的门诊每天都会接待大量的患者,使用医院门诊收费系统可以大大地提高工作效率,减少工作中可能出现的错误,是提高医院办公自动化水平的重要手段之一。其开发主要包括后台数据库的建立和维护以及前端应用程序界面开发两个方面。对于后台数据库的建立和维护要求建立起数据的一致性和完整性强、数据安全性好、符合3NF范式库。而前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友好、使用简单方便等特点。在中国软件行业日益进步的今天,如何利用这些资源来帮助减轻医生和病人的负担,让医生们利用更多的时间去从事其他的事情。因而设计一个好的门诊收费信息系统,能提高医院的社会效益与经济效益。论文旨在论述医院门诊收费系统的设计与开发。通过医院门诊收费系统的设计,熟练掌握Visual C+、SQL Server 2000等工具软件,系统地掌握需求分析、数据库设计、编码实现、测试等软件开发的流程,提高自身分析问题、解决问题的能力。1.3课程设计任务本课程设计任务是通过开发一个数据库校医院门诊收费管理系统,学习数据库系统的设计与开发,采用Visual C+和SQL Server2000等软件为开发工具。通过对计算机硬件和软件解决方案的论证,对应用领域进行调查分析,参考各种资料和进行数据库系统开发实践。在指导老师的帮助下,已经基本上成功地实现了设计任务书的要求,使得设计的数据库系统能够实现一般数据库的管理。2系统结构分析2.1 需求分析医院门诊收费系统是适应时代发展的需要,提高管理的效率而开发设计的。通过对信息的收集、存储、传递、统计、分析、综合查询、报表输出和信息共享,及时为医院领导及各部门管理人员提供全面、准确的各种数据。实现了医院管理的简单化和规划化,提高了医院的工作效率,从而使医院能够以少的投入获得更好的社会效益与经济效益。经过综合分析,确定了医院门诊收费系统的主要包括以下功能:(1). 系统设置功能系统设置包括科室名称设置、药品类别设置、药品单位设置和用户信息。基本信息管理模块可以实现以下功能:添加、修改、删除和查看科室信息;添加、修改、删除和查看药品类别信息;添加、修改、删除和查看药品单位信息;添加、修改、删除和查看用户信息。(2). 信息管理功能此模块的主要功能包括:药品管理,包括添加、修改、删除和查看药品信息;医生管理,包括添加、修改、删除和查看医生信息;患者管理,包括添加、修改、删除和查看患者信息;(3). 收费管理功能此模块的主要功能包括:收费项目管理,包括添加、修改、删除和查看收费项目信息;门诊收费管理。(4). 统计查询管理本模块用于对门诊收费信息进行统计和查询,主要功能包括:销售信息统计查询;医生效益统计查询。2.2 功能模块图根据上述的功能,可以设计出系统的总体功能模块,如图2.1所示。医院门诊收费系统系统设置模块信息管理模块收费管理模块统计查询管理图2.1 医院门诊收费型系统功能模块示意图2.“系统设置”功能模块用于科室名称管理、药品类别管理、药品单位管理以及用户信息管理,其功能模块如图2.2所示。系统设置科室名称管理药品单位管理用户信息管理药品类别管理图2.2 系统设置3“信息管理”功能模块用于药品信息管理、医生信息管理、以及患者信息管理,其功能模块如图2.3所示。信息管理药品信息管理患者信息管理医生信息管理图2.3 信息管理4 .“收费管理”功能模块用于销售信息统计查询以及医生效益统计查询,其功能模块如图2.4所示。统计查询销售信息统计查询医生效益统计查询图2.4统计查询本系统将用户划分为两种类型,即系统管理员和普通用户。系统管理员为Admin,他可以管理其他用户的信息,在其他方面所有用户的权限相同。3数据库设计3.1 概念结构设计根据需求分析抽象出信息结构,可得该系统的E-R图。(1). 用户E-R图,如图3.1所示。用户用户名密码用户类型图3.1 用户E-R图根据分E-R图和需求分析,可得到总E-R图,如图2.10所示。nnnnnnnn医生门诊登记单药物拿药收费开药患者收费项目收费日期日期2.10 总体E-R图3.2逻辑结构设计根据上述的概念结构设计出逻辑结构,将E-R图转换为关系模型。数据库Hospital包含以下8个表:基本信息表BaseType、用户信息表Users、药品信息表Medicine、医生信息表Doctor、患者信息表Patient、收费项目表Items、门诊收费项目明细表PayItems和门诊收费登记表Registration。(1). 基本信息表BaseType基本信息表BaseType用来保存科室名称、药品类别名称和药品单位名称等信息。表BaseType的结构如表3-1所示。表3-1 表BaseType的结构编号字段名称数据结构说明1Idint记录编号2TypeIdtinyint类型编号,1-科室名称,2-药品类别名称,3-药品单位名称3TypeNameVarchar(30)基本信息名称通过对上面表的分析,插入,删除,查找等操作,所有模式都符合3NF。本系统将用户划分为两种类型,即系统管理员和普通用户。系统管理员为Admin,他可以管理其他用户的信息,在其他方面所有用户的权限相同。前面是通过前台来实现系统安全性的,我们也可以对数据库进行身份验证,可以从服务器角度建一个登录名,使得不同的服务器角色拥有不同的权限,从而实现对数据库的不同权限的管理,以此来增强医院门诊收费系统的安全性。3.3数据库表的建立在设计数据库表结构之前,首先要创建一个数据库。本系统使用的数据库为Hospital。可以在企业管理器中创建数据库,也可以在查询分析器中执行以下TransactSQl语句:CREATE DATABASE HospitalGO(1). 创建表BaseType创建表BaseType(基本信息表),它的代码如下:USE HospitalGOCREATE TABLE BaseType (Id int PRIMARY KEY IDENTITY, TypeId tinyint, TypeName varchar(30) )GO4系统实现4.1 数据库的连接在该系统中数据库的连接使用ADO Data控件。将ADO Data控件、DataGrid控件、DataCombo控件和DataList控件添加到工程中,在工程中添加类ADoConn,连接字符串中“Database=Hospital”。在类CDataGrid中添加成员函数GetItem(),用于从DataGrid表格中读取数据。在对话框中添加的ADO Data控件如图4.1所示。图4.1 对话框中的ADO Data控件右键单击ADO Data控件,打开控件属性窗口,设置连接属性和身份认证属性,分别如图4.2和图4.3所示。图4.2 设置连接属性图4.2设置身份认证属性具体实现代码见附录中的ADOConn.cpp程序。4.2 系统功能模块设置(1). 设计科室信息管理对话框科室信息管理对话框可以用来添加、修改、删除和查看科室信息。添加一个对话框,将其ID设置为IDD_DEPT_DIALOG。控件设置和属性见表4-1.表4-1 对话框IDD_DEPT_DIALOG中的空间及其属性控件ID属性属性属性值/说明IDC_EDIT1用于编辑科室名称IDC_ADD_BUTTONCaption添加IDC_MODI_BUTTONCaption修改IDC_DEL_BUTTONCaption删除IDCANCELCaption返回IDC_ADODC1ConnectionStringProvider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;UserID=sa;InitialCatalog=Hospital;DataSource=5B41B73D460A40AVisible取消CommandType8Unknown CommandTypePasswordsaUserNamesaRecordSourseSELECT*FROM BaseType WhereTypeId=1IDC_DATALIST1RowSourceIDC_ADODC!BoundColumnIdListFieldTypeName对话框的布局如图4.3所示。图4.3 对话框IDD_DEPT_DIALOG的布局打开Class Wizard窗口,为对话框IDD_DEPT_DIALOG创建类CDeptDlg。单击“Member Viriable”选项卡,控件成员变量的设置见表4-2。表4-2 控件成员变量的设置控件ID类型成员变量名IDC_ADODC1CAdodcm_AdodcIDC_DATALIST1CDataListm_DataListIDC_EDIT1CStringm_DeptName对话框启动时,程序将自动根据Adodc控件设置的记录源读取科室信息,并将科室名称显示在DataList控件中。当用户单击DataList控件时,将执行OnClickDataList()函数,程序将从DataList控件中读取科室名称和可是编号信息,并将科室名称显示在右侧的编辑框中。当用户单击“添加”按钮时,将执行OnAddButton()函数;当用户单击“修改”按钮时,将执行OnEditButton()函数,在保存数据之前,程序要判断科室名称是否为空以及是否选择了要修改的科室记录;当用户单击“删除”按钮时,将执行OnDeltButton()函数,在删除数据之前,程序将调用MessageBox()函数打开一个包含“是”和“否”按钮的对话框,提示用户确认是否删除数据。5功能测试该程序实现了医院门诊收费系统应有的功能,即系统设置功能、信息管理功能、收费管理功能和统计查询管理。5.1登陆界面程序运行出现登陆界面,要求用户输入用户名和密码,当用户名和密码均正确时才能进入系统,如图5.1所示。图 5.1登陆界面5.2主界面用户登陆系统以后,将出现主界面,用户可以选择要执行的操作,如图5.2所示。图5.2 主界面5.3各功能模块的实现各功能的实现均与设计对话框相符合,如医生信息管理,当用户选择该项时,会弹出医生信息管理对话框,用户可以进行添加,修改,删除以及按条件查询等操作,界面如图5.3所示。图5.3医生信息管理对话框其他功能也都一一实现,完成了该系统的功能要求。6系统技术实现6.1 ADOADO(ActiveX Data Objects)是Microsoft提出的应用程序接口(API)用以实现访问关系或非关系数据库中的数据。例如,如果您希望编写的应用程序从DB2或Oracle数据库中向网页提供数据,可以将ADO程序包括在作为活动服务器页的HTML文件中。当用户从网站请求网页时,返回的网页也包括了数据中的相应数据,这些是由于使用了ADO代码的结果。象Microsoft的其他系统接口一样,ADO是面向对象的。它是Microsoft全局数据访问(UDA)的一部分,Microsoft认为与其自己创建的一个数据,不如利用UDA访问已有的数据库。为了达到这一目的,Microsoft和其他数据库公司在它们的数据库和Microsoft的OLE数据库之间提供了一个桥程序,OLE数据库已经在使用ADO技术。ADO的一个特征(称为远程数据服务)支持网页中的数据相关的ActiveX控件和有效的客户端缓冲。作为ActiveX的一部分,ADO也是Microsoft的组件对象模式(COM)的一部分,它的面向组件的框架用以将程序组装在一起。6.2 SQL Server 2000SQL Server是Microsoft开发的一个关系数据库管理系统,以Transant_SQL作为它的数据库查询和编程语言。T-SQL是结构化查询语言SQL的一种,支持ANSI-SQL-92标准。SQL Server采用一级安全验证、登陆验证以及数据库用户帐号和角色的许可验证。SQL Server支持两种身份验证模式:Windows NT身份验证和SQL Server身份验证。SQL Server为公共的管理功能提供了预定义的服务器和数据库角色,可以很容易为某一特定用户授予一组选择好的许可权限。SQL Server可以在不同的操作平台上运行,支持多种不同的网络协议。7 结束语经过这些天的努力,本次课程设计终于完成了。通过这次课程设计,使我对数据库这门课程有了更深入的理解,数据库是一门实践性较强的课程,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。在本次课程设计中,我明白了理论与实际应用相结合的重要性,并提高了自己组织数据及编写程序的能力,培养了基本的、良好的程序设计技能。这次课程设计同样提高了我的综合运用所学知识的能力。并对SQL SERVER 2000有了更深入的了解。由于我的经验和知识的不足,在程序中还存在很多缺陷。经过这次课程设计,我的知识得到了很大提高,经验也更加丰富。今后我会更多的学习编程技巧,不断的提高程致 谢在这次数据库的课程设计中,曾遇到过不少问题,单靠我个人的努力,很难按时完成该课程设计。在此,我衷心感谢我的指导老师周书仁。周书仁老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我获益非浅。另外,还要感谢学校领导、辅导员、各位同学对我们的关怀、帮助,为我们提供了良好的设计环境以及各方面的支持。参考文献1 李彦,韩光林,李玉波.SQL SERVER完全自学手册.北京:电子工业出版社,20072 宋绅,刘锐宁.Visual C+开发技术大全.北京:人民邮电出版社,20073 王艳平,张铮.Windows程序设计.北京:人民邮电出版社,20084 王红梅,胡明,王涛. 数据结构(C+版).北京:清华大学出版社,2007 5 Mark Allen Weiss.数据结构与算法分析C+描述.北京:人民邮电出版社,20076 郑阿奇,丁有和. Visual C+教程.北京:机械工业出版社,20067 萨师煊, 王珊.数据库系统概论(第三版).北京:高等教育出版社. 2005附录 部分程序代码/ 程序名称: ADOConn.cpp/ 程序功能:数据库连接/ 程序作者:王晓岩/ 最后修改日期:2009-01-12void ADOConn:OnInitADOConn() /初始化 连接数据库/ 初始化OLE/COM库环境 :CoInitialize(NULL); try/ 创建Connection对象m_pConnection.CreateInstance(ADODB.Connection);/ 设置连接字符串,必须是BSTR型或者_bstr_t类型_bstr_t strConnect = Provider=SQLOLEDB; Server=5B41B73D460A40A;Database=Hospital; uid=sa; pwd=sa;m_pConnection-Open(strConnect,adModeUnknown);/ 捕捉异常catch(_com_error e)/ 显示错误信息AfxMessageBox(e.Description();/ 执行查询_RecordsetPtr& ADOConn:GetRecordSet(_bstr_t bstrSQL)try/ 连接数据库,如果Connection对象为空,则重新连接数据库if(m_pConnec

温馨提示

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

评论

0/150

提交评论