数据结构课程设计-医院门诊收费系统的设计与实现_第1页
数据结构课程设计-医院门诊收费系统的设计与实现_第2页
数据结构课程设计-医院门诊收费系统的设计与实现_第3页
数据结构课程设计-医院门诊收费系统的设计与实现_第4页
数据结构课程设计-医院门诊收费系统的设计与实现_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

医院门诊收费系统的设计与实现 第 页 共 23 页 目 录 1 引言 4 1.1课题背景 . . . .4 1.2 课程设计目的 . . 4 1.3 课程设计任务 . . 5 2 系统结构分析 . . . 6 2.1 需求分析 . .6 2.2 系统模块图 . . .7 3 数据库设计 . . . 9 3.1 概念结构设计 . . 9 3.2 逻辑结构设计 . . 11 3.3 数据库表的建立 . 13 4 系统实现 . . . 17 4.1 数据库的连接 . 17 4.2 系统功能模块设计 . 18 4.3 信息管理模块设计 . 20 4.4 收费管理模块设计 . 22 4.5 统计查询管理模块设计 25 5 功能测试 . . . . 29 5.1 登陆界面 . 29 5.2 主界面 . 29 5.3 各功能模块的测试 30 6 系统技术实现 . . . . 31 6.1 ADO . 31 6.2 SQL Server 2000 . 31 7 结束语 . . . . 32 致谢 . . . . 33 参考文献 . . . . 34 附录 . . . . 35 医院门诊收费系统的设计与实现 第 页 共 23 页 医院门诊收费系统的设计与实现 学生姓名: 指导老师: 摘 要 本课程设计主要解决医院门诊收费的管理问题 , 设计开 发一个简单的医院门诊收费系统 , 实现门诊收费 ,划价 ;药品管理 ,患者管理 ;医务人员管理及各种查询 ,报表等功能。 在课程设计中,系统开发平台为 Windows XP,程序设计语言采用 Visual C+,数据库采用 SQL Server 2000,程序运行平台为 Windows98/2000/Xp。程序通过调试运行,初步实现了设计目标,并且经过适当完善后,将可以应用在医院门诊收费的管理中,解决实际问题。 关键词 信息管理系统;数据库; 门诊收费 医院门诊收费系统的设计与实现 第 页 共 23 页 The Design and Implementation of the Hospital Outpatient Service Charge System Student name: Wang Xiao-yan Advisor: ZHOU Shu-ren Abstract 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 service 医院门诊收费系统的设计与实现 第 页 共 23 页 1 引言 1.1 课题背景 在现代信息技术的基础上,随着人类对各种工程研究成果的逐步推广应用,不久的将来,医疗卫 生领域对信息技术的依赖程度将远远超过目前电信、银行、航空业。医院信息化必将得到充分的重视和发展,而医院门诊收费系统就是医院信息化中的重要的一部分。随着计算机性能不断提高,价格不断下降,计算机已在医院医疗、教学、科研、管理等方面得到越来越广泛的应用。计算机化的医院信息系统已成为现代化医院运营过程中必不可少的基础设施与技术支撑环境。 计算机信息管理技术的应用,除了能在相当大的程度上代替人工作业,从而减少人员工作量,减轻工作负担,减少工作中因人为原因而产生的错误从而避免不必要的损失外,更重要的是能建立准确畅通、简 便的信息流通渠道,为工作提供所需要的准确、及时的信息以帮助做出正确而及时的选择与决定,从而给采用这门技术的单位带来了巨大的可见或不可见的利益与效益。 1.2 课程设计目的 医院的门诊每天都会接待大量的患者,使用医院门诊收费系统可以大大地提高工作效率,减少工作中可能出现的错误,是提高医院办公自动化水平的重要手段之一。 其开发主要包括后台数据库的建立和维护以及前端应用程序界面开发两个方面。对于后台数据库的建立和维护要求建立起数据的一致性和完整性强、数据安全性好、符合 3NF 范式库。而前端应用程序的开发则要求应用程序 能提供强大的数据操纵功能,界面友好、使 用简单方便等特点。 在中国软件行业日益进步的今天,如何利用这些资源来帮助减轻医生和病人的负担,让医生们利用更多的时间去从事其他的事情。因而设计一个好的门诊收费信息系统,能提高医院的社会效益与经济效益。论文旨在论述医院门诊收费系统的设计与开发。 通 过 医院门诊收费系统的设计,熟练掌握 Visual C+、 SQL Server 2000 等工具软件,系统地掌握需求分析、数据库设计、编码实现、测试等软件开发的流程,提高自身分析问题、解决问题的能力。 医院门诊收费系统的设计与实现 第 页 共 23 页 1.3 课程设计任务 本课程设 计任务是通过开发一个数据库校医院门诊收费管理系统,学习数据库系统的设计与开发,采用 Visual C+和 SQL Server2000 等软件为开发工具。通过对计算机硬件和软件解决方案的论证,对应用领域进行调查分析,参考各种资料和进行数据库系统开发实践。在指导老师的帮助下,已经基本上成功地实现了设计任务书的要求,使得设计的数据库系统能够实现一般数据库的管理。 医院门诊收费系统的设计与实现 第 页 共 23 页 2 系统结构分析 2.1 需求分析 医院门诊收费系统是适应时代发展的需要,提高管理的效率 而开发设计的。通过对信息的收集、存储、传递、统计、分析、综合查询、报表输出和信息共享,及时为医院领导及各部门管理人员提供全面、准确的各种数据。实现了医院管理的简单化和规划化,提高了医院的工作效率,从而使医院能够以少的投入获得更好的社会效益与经济效益。 经过综合分析,确定了 医院门诊收费系统的主要包括以下功能: (1). 系统设置功能 系统设置包括科室名称设置、药品类别设置、药品单位设置和用户信息。基本信息管理模块可以实现以下功能: 添加、修改、删除和查看科室信息; 添加、修改、删除和查看药品类别信息; 添加、 修改、删除和查看药品单位信息; 添加、修改、删除和查看用户信息。 (2). 信息管理功能 此模块的主要功能包括: 药品管理,包括添加、修改、删除和查看药品信息; 医生管理,包括添加、修改、删除和查看医生信息; 患者管理,包括添加、修改、删除和查看患者信息; (3). 收费管理功能 此模块的主要功能包括: 收费项目管理,包括添加、修改、删除和查看收费项目信息; 门诊收费管理。 (4). 统计查询管理 本模块用于对门诊收费信息进行统计和查询,主要功能包括: 销售信息统计查询; 医生效益统计查询。 医院门诊收费系统的设计与实现 第 页 共 23 页 2.2 功能 模块图 根据上述的功能,可以设计出系统的总体功能模块,如图 2.1 所示。 图 2.1 医院门诊收费型系统功能模块示意图 2.“系统设置 ”功能模块用于科室名称管理、药品类别管理、药品单位管理以及用户信息管理,其功能模块如图 2.2 所示。 图 2.2 系统设置 3 “信息管理 ”功能模块用于药品信息管理、医生信息管理、以及患者信息管理,其功能模块如图 2.3 所示。 医 院门诊收费系统 系统设置模块 信息管理模块 收费管理模块 统计查询管理 系统设置 科室名称管理 药品单位管理 用户信息管理 药品类别管理 医院门诊收费系统的设计与实现 第 页 共 23 页 图 2.3 信息管理 4 .“收费管理 ”功能模块用于销售信息统计查询以及医生效益统计查询,其功能模块如图 2.4 所示。 图 2.4 统计查询 本系统将用户划分为两种类型,即系统管理员和普通用户。系统管理员为 Admin,他可以管理其他用户的信息,在其他方面所有用户的权限相同。 统计查询 销售信息统计查询 医生效益统计查询 信息管理 药品信息管理 患者信息管理 医生信息管理 医院门诊收费系统的设计与实现 第 页 共 23 页 3 数据库设计 3.1 概念结构设计 根据需求分析抽象出信息结构,可得该系统的 E-R图。 (1). 用户 E-R图,如图 3.1 所示。 图 3.1 用户 E-R图 根据分 E-R图和需求分析,可得到总 E-R图,如图 2.10 所示。 2.10 总体 E-R图 3.2 逻辑结构设计 根据上述的概念结构设计出逻辑结构,将 E-R图转换为关系模型。 数据库 Hospital 包含以下 8 个表:基本信息表 BaseType、用户信息表 Users、药品信息表 Medicine、医生信息表 Doctor、患者信息表 Patient、收费项目表 Items、门诊收费项目明细表 PayItems 和门诊收 费登记表 Registration。 用户 用户名 密码 用户类型 n n n n n n n n 医生 门诊登记单 药物 拿药 收费 开药 患者 收费项目 收费 日期 日期 医院门诊收费系统的设计与实现 第 页 共 23 页 (1). 基本信息表 BaseType 基本信息表 BaseType 用来保存科室名称、药品类别名称和药品单位名称等信息。表 BaseType 的结构如表 3-1 所示。 表 3-1 表 BaseType 的结构 编号 字段名称 数据结构 说明 1 Id int 记录编号 2 TypeId tinyint 类型编号, 1-科室名称, 2-药品类别名称, 3-药品单位名称 3 TypeName Varchar(30) 基本信息名称 通过对上面表的分析,插入,删除,查找等操作,所有模式都符合 3NF。 本系统将用户划分为两种类型,即系统管理员和普通用户。系统管理员为 Admin,他可以管理其他用户的信息,在其他方面所有用户的权限相同。 前面是通过前台来实现系统安全性的,我们也可以对数据库进行身份验证,可以从服务器角度建一个登录名,使得不同的服务器角色拥有不同的权限,从而实现对数据库的不同权限的管理,以此来增强医院门诊收费系统的安全性。 3.3 数据库表的建立 在设计数据库表结构之前,首先要创建一个数据库。本系统使用的数据库为Hospital。可以在企业管理器中创建数据库,也可以在查询分析器中执行以 下TransactSQl语句: CREATE DATABASE Hospital GO (1). 创建表 BaseType 创建表 BaseType(基本信息表),它的代码如下: USE Hospital GO CREATE TABLE BaseType (Id int PRIMARY KEY IDENTITY, TypeId tinyint, TypeName varchar(30) ) GO 医院门诊收费系统的设计与实现 第 页 共 23 页 4 系统实现 医院门诊收费系统的设计与实现 第 页 共 23 页 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 设置连接属性 医院门诊收费系统的设计与实现 第 页 共 23 页 图 4.2 设置身份认证属性 具体实现代码见附录中的 ADOConn.cpp 程序。 4.2 系统功能模块设置 (1). 设计科室信息管理对话框 科室信息管理对话框可以用来添加、修改、删除和查看科室信息。添加一个对话框,将其 ID 设置为 IDD_DEPT_DIALOG。控件设置和属性见表 4-1. 表 4-1 对话框 IDD_DEPT_DIALOG 中的空间及其属性 控件 ID 属性 属性 属性值 /说明 IDC_EDIT1 用于编辑科室名称 IDC_ADD_BUTTON Caption 添加 IDC_MODI_BUTTON Caption 修改 IDC_DEL_BUTTON Caption 删除 IDCANCEL Caption 返回 IDC_ADODC1 ConnectionString Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;UserID=sa;InitialCatalog=Hospital;DataSource=5B41B73D460A40A Visible 取消 CommandType 8Unknown CommandType Password sa UserName sa RecordSourse SELECT*FROM BaseType WhereTypeId=1 IDC_DATALIST1 RowSource IDC_ADODC! BoundColumn Id ListField TypeName 医院门诊收费系统的设计与实现 第 页 共 23 页 对话框的布局如图 4.3 所示。 图 4.3 对话框 IDD_DEPT_DIALOG 的布局 打开 Class Wizard 窗口, 为对话框 IDD_DEPT_DIALOG 创建类 CDeptDlg。单击“Member Viriable”选项卡,控件成员变量的设置见表 4-2。 表 4-2 控件成员变量的设置 控件 ID 类型 成员变量名 IDC_ADODC1 CAdodc m_Adodc IDC_DATALIST1 CDataList m_DataList IDC_EDIT1 CString m_DeptName 对话框启动时,程序将自动根据 Adodc 控件设置的记录源读取科室信息,并将科室名称显示在 DataList 控件中。 当用 户单击 DataList 控件时,将执行 OnClickDataList()函数,程序将从 DataList 控件中读取科室名称和可是编号信息,并将科室名称显示在右侧的编辑框中。 当用户单击 “添加 ”按钮时,将执行 OnAddButton()函数;当用户单击 “修改 ”按钮时,将执行 OnEditButton()函数,在保存数据之前,程序要判断科室名称是否为空以及是否选择了要修改的科室记录;当用户单击 “删除 ”按钮时,将执行 OnDeltButton()函数,在删除数据之前,程序将调用 MessageBox()函数打开一个包含 “是 ”和 “否 ”按钮的对话框,提示用户确认是否删除数据。 医院门诊收费系统的设计与实现 第 页 共 23 页 5 功能测试 该程序实现了医院门诊收费系统应有的功能,即系统设置功能、信息管理功能、收费管理功能和统计查询管理。 5.1 登陆界面 程序运行出现登陆界面,要求用户输入用户名和密码,当用户名和密码均正确时才能进入系统,如图 5.1 所示。 图 5.1 登陆界面 5.2 主界面 用户登陆系统以后,将出现主界面,用户可以选择要执行的操作,如图 5.2 所示。 医院门诊收费系统的设计与实现 第 页 共 23 页 图 5.2 主界面 5.3 各功能模块的实现 各功能的实现均与设计对话框相符合,如医生信息管理,当 用户选择该项时,会弹出医生信息管理对话框,用户可以进行添加,修改,删除以及按条件查询等操作,界面如图 5.3 所示。 医院门诊收费系统的设计与实现 第 页 共 23 页 图 5.3 医生信息管理对话框 其他功能也都一一实现,完成了该系统的功能要求。 6 系统技术实现 6.1 ADO ADO(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 2000 医院门诊收费系统的设计与实现 第 页 共 23 页 SQL 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 有了更深入的了解。 由于我的经验和知识的不足,在程序中还存在很多缺陷。经过这次课程设计,我的知识得到了很大提高,经验也更加丰富。今后我会更多的学习编程技巧,不断的提高程 医院门诊收费系统的设计与实现 第 页 共 23 页 致 谢 在这次数据库的课程设计中,曾遇到过不少问题,单靠我个人的努力,很难按时完成该课程设计。在此,我衷心感谢我的指导老师 周书仁。周书 仁老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我获益非浅。另外,还要感谢学校领导、辅导员、各位同学对我们的关怀、帮助,为我们提供了良好的设计环境以及各方面的支持。 医院门诊收费系统的设计与实现 第 页 共 23 页 参考文献 1 李彦,韩光林,李玉波 .SQL SERVER 完全自学手册 .北京:电子工业出版社, 2007 2 宋绅,刘锐宁 .Visual C+开发技术大全 .北京:人民邮电出版社, 2007 3 王艳平,张铮 .Windows 程序设计 .北京:人民邮电出版社, 2008 4 王红梅 ,胡明,王涛 . 数据结构( C+版) .北京:清华大学出版社, 2007 5 Mark Allen Weiss.数据结构与算法分析 C+描述 .北京:人民邮电出版社 , 2007 6 郑阿奇,丁有和 . Visual C+教程 .北京:机械工业出版社, 2006 7 萨师煊, 王珊 .数据库系统概论(第三版) .北京:高等教育出版社 . 2005 医院门诊收费系统的设计与实现 第 页 共 23 页 附录 部分程序代码 / 程序名称 : ADOConn.cpp / 程序功能: 数据库连接 / 程序作者 :王晓岩 / 最后 修改日期 : 2009-01-12 void 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_pConnection=NULL) OnInitADOConn(); / 创建记录集对象 m_pRecordset.CreateInstance(_uuidof(Recordset); / 取得表中的记录 m_pRecordset-Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText); / 捕捉异常 catch(_com_error e) 医院门诊收费系统的设计与实现 第 页 共 23 页 / 显示错误信息 AfxMessageBox(e.Description(); / 返回记录集 return m_pRecordset; / 执行 SQL语句, Insert Update _variant_t BOOL ADOConn:ExecuteSQL(_bstr_t bstrSQL) / _variant_t RecordsAffected; try / 是否已经连接数据库 if(m_pConnection = NULL) OnInitADOConn(); / Connection对象的 Execute 方法 :(_bstr_t CommandText, / VARIANT * RecordsAffected, long Options ) / 其中 CommandText 是命令字串,通常是 SQL命令。 / 参数 RecordsAffected 是操作完成后所影响的行数 , / 参数 Options 表示 CommandText 的类型: adCmdText-文本命令;adCmdTable-表名 / adCmdProc-存储过程; adCmdUnknown-未知 m_pConnection-Execute(bstrSQL,NULL,adCmdText); return true; catch(_com_error e) AfxMessageBox(e.Description(); return false; void ADOConn:ExitConnect() / 关闭记录集和连接 if (m_pRecordset != NULL) m_pRecordset-Close(); m_pConnection-Close(); / 释放环境 :CoUninitialize(); 医院门诊收费系统的设计与实现 第 页 共 23 页 Abstract With the development of the Internet, computer science increasingly mature, and its powerful function of the peoples profound understanding, It has entered the human society in various fields and is playing an increasingly important role. As part of the computer application, the use of computers to manage the information of enterprise has

温馨提示

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

评论

0/150

提交评论