《校医院门诊管理信息系统实验报告(共20页).doc》由会员分享,可在线阅读,更多相关《校医院门诊管理信息系统实验报告(共20页).doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上数据库技术与应用实验报告实验题目: 校医院门诊管理信息系统 姓 名: 学 号: 班 级: 联系方式: 2015年12月专心-专注-专业一 需求分析1. 系统需求设计这个校医院门诊管理信息系统的目的是为了规范校医院门诊过程中处方、收费单据等的财务规范性,提高看病、报销效率。校医院门诊管理信息系统的主要功能是实现各项相关信息(包括病人的相关信息、费用标准的相关信息)的编辑和查询以及对各类新用户的添加。本系统中的用户分为如下四种:(1)医生。在本系统中,医生的用户类型被定义为“1”。“医生”类型的用户在本系统中具有以下权限:a.查询学生的挂号记录。b.创建维护学生的诊疗记录
2、,如症状、诊疗结果等。(即进行编辑)c.创建维护学生的处方单。(即进行编辑)(2)挂号人员。在本系统中,挂号人员的用户类型被定义为“2”。“挂号人员”类型的用户在本系统中具有以下权限:a.创建、维护学生挂号记录,如学号、姓名、年龄、学院、本科、研究生、医保类型等。(即进行编辑)b.查询学生的诊疗记录、处方。(3) 财务人员。在本系统中,财务人员的用户类型被定义为“3”。“财务人员”类型的用户在本系统中具有如下权限:A.查询学生的挂号记录、处方记录、诊疗记录、交费记录。b.查询药品费用记录。 c.查询治疗费用标准记录。d.维护学生的医药费报销记录。(即进行编辑)(4) 划价人员。在本系统中,划价
3、人员的用户类型被定义为“4”。“划价人员”类型的用户在本系统中具有如下权限;a.创建药品价格记录、治疗费用标准。(即进行编辑)b.查询药品价格纪录。c.查询治疗费用标准。d.创建、维护学生的交费费用单据。(即进行编辑)2. 功能需求根据系统需求分析,本系统的功能要求如下:(1) 病人管理。病人管理的功能是供用户对病人的挂号记录、诊疗记录、处方、缴费记录、医保报销记录等信息进行编辑和查询。(2) 费用标准管理。费用标准管理的功能是供用户对治疗费用标准(对于诊疗项目而言的)、药品价格记录等信息进行编辑和查询。(3) 添加新用户。用户可以添加新用户的信息来创建与自己用户类型即使用权限相同的新用户。(
4、4) 退出系统。用户在结束使用之后可以主界面选择“退出系统”,进而退出系统,回到Windows环境。3. 软件环境需求(1) 操作系统:Windows 7。(2) 数据库:Microsoft SQL Server 2008.二 系统设计1. 数据库设计整个校医院门诊管理信息系统涉及的数据实体主要有病人、药品、诊疗项目、费用、医生、财务人员、挂号人员、划价人员、处方、诊疗记录等。“病人”实体与“药品”实体之间的联系描述了病人的用药情况,“医生”、“划价人员”、“挂号人员”、“财务人员”都是为“病人”服务的,“病人”消耗“药品”,“病人”使用“诊疗项目”,“病人”花费“费用”。“医生”为“病人”开
5、具“处方”,创建编辑“诊疗记录”。所以,系统有如下关系模式:(1) 病人(学号,姓名,性别,年龄,学院,学历,医保类型)(2) 药品(药品编号,药品名称,进货价格,出售价格,保质期,库存量,药品功能,用法用量,划价日期,划价人员编号)(3) 诊疗项目(诊疗项目编号,收费标准,诊疗项目名称)(4) 费用(学号,医保报销费用,需交费用,诊疗项目花费,药品费用,实交费用,缴费日期,划价人员编号)(5) 医生(医生编号,医生姓名,所属科室)(6) 划价人员(划价人员编号,划价人员姓名)(7) 财务人员(财务人员编号,财务人员姓名)(8) 挂号人员(挂号人员姓名,挂号人员编号)(9) 处方(学号,医生编
6、号,处方,开具日期,诊疗结果,病人症状)(10) 诊疗记录(学号,医生编号,症状,诊疗结果)(I)E-R图如下: 划价人员 医生 财务人员 挂号人员 服务 病人 诊疗记录 使用 产生 包含 药品 诊疗项目 费用 处方学号 姓名 性别 年龄 学历 医保类型病人财务人员财务人员编号 财务人员姓名处方学号 医生编号 处方 开具日期 诊疗结果 症状费用 缴费日期 划价人员编号 学号 医保 报销费用 需交费用 诊疗项目花费 药品费用 实交费用挂号人员挂号人员编号 挂号人员姓名 划价人员划价人员编号 划价人员姓名药品功能 用法用量 划价日期 划价人员编号药品药品名称 药品编号 进货价格 出售价格 保质期
7、库存量 医生医生编号 医生姓名 所属科室诊疗记录学号 医生编号 症状 诊疗结果诊疗项目编号 诊疗项目 诊疗项目名称收费标准 (II)将E-R图转换为如下关系表: 病人信息表 财务人员信息表 处方信息 费用 挂号人员信息表 划价人员信息表 系统用户登录表 药品信息表 医保报销记录 医生信息表 诊疗记录 诊疗项目信息表 (III)创建挂号人员信息表的语句如下,其他表的创建语句与此类似不再赘述:Use 校医院门诊信息管理系统GoCREATE TABLE 挂号人员信息表(挂号人员姓名 nchar(10) NOT NULL,挂号人员编号 nchar(10) NOT NULL),PRIMARY KEY(挂
8、号人员编号)(IV)数据库中的关系图:2. VB程序设计过程a. 功能描述这个程序的功能是通过各类用户实现各项相关信息(包括病人的相关信息、费用标准的相关信息)的编辑和查询以及对各类新用户的添加。具体的内容在“功能需求”部分有详细介绍。而四类用户分别为医生、挂号人员、财务人员、划价人员,他们对应的权限在前文的“系统需求”部分已经有详细的交代,在此不再赘述。编辑即对应用户对于相关信息的创建和修改,在程序中用户可通过一条一条翻阅相关信息进行修改、保存,还可以进行删除和添加。一个编辑信息的界面如图一所示。至于查询功能,用户可通过在对应文本框中输入对应的信息,即可实现查询功能。一个查询信息的界面如图二
9、所示。 图一 学生处方编辑 图二 病人挂号记录查询在数据库表中原本保存了几条各类型用户的信息,原始的用户可通过查询数据表中自己的信息将自己的信息输入登录界面,进而登录该系统。当用户登录该系统以后,不同的用户会拥有不同的权限,即对于一类用户而言界面上出现的部分功能不能使用,只能使用自己的类型相对应的功能。每一类用户都可添加新用户,但是建议用户添加与自己类型相同的用户,这样可以便于各种职业的用户各司其职,不会看到自己的用户类型本不应该看到的信息,更好地保护用户的隐私。每一次添加新用户之前,系统会对用户进行提醒,请用户注意要添加与自己类型相同的新用户。当用户打算结束本次使用的时候,用户可以在主界面中
10、选择“退出系统”选项,这时会弹出一个带有作者信息的消息框,点击确定之后即可退出系统。b.程序中所用到的查询语句 这个VB程序采用ADO数据控件连接数据库,当它的CommandType 属性被设置为2-adCmdTable时,可以直接选择要连接的表或存储过程。而当CommandType属性被设置为1-adCmdText时,则需要用SQL语句获取所需记录集,需要将相应SQL语句设置为ADO控件的RcordSource属性。在这个程序所用到的所有SQL查询语句如下: SELECT * From 药品信息表(Form11) SELECT * From 诊疗项目信息表(Form13) SELECT *
11、From 医保报销记录(Form15) SELECT * From 诊疗记录(Form5) SELECT * From 病人信息表(Form6) SELECT * From 处方信息(Form7) SELECT * From 费用(Form9)c.关键代码 在这个程序中要实现相应的功能,我认为较为关键的代码有实现查询和编辑功能的代码,还有实现对不同用户进行权限设置的代码。 (I)实现查询功能的代码(以Form9为例): 在窗体Form9中插入ADO数据控件,将其命名为“Adodc1”,将其CommandType属性设置为“1-adCmdText”,RcordSource属性设置为“SELECT
12、 * From 费用”。而“查询”按钮的名称为“Command1”。将数据网格“DataGrid1”的DataSource属性设置为”Adodc1”,AllowUpdate属性设置为“False”。在使用时,用户将要查询的学号输入名为“Text1”的文本框中。此时该窗体的代码如下:Private Sub Command1_Click()Adodc1.RecordSource = SELECT * From 费用 Where 学号= & Trim(Text1.Text) & Adodc1.RefreshEnd Sub Private Sub Command2_Click()Unload MeEn
13、d Sub这样,当用户输入了想要查询费用的病人的学号并且点击了“查询”按钮之后,这个病人的缴费记录就能单独显示在数据网格中。Form9的窗口显示如图三所示: 图三 使用Form9窗口进行查询(II)实现编辑功能的代码(以Form2为例)“添加”、“修改”、“删除”、“保存”、“第一条”、“下一条”、“上一条”、“最后一条”的按钮的名称分别为“Command1”、“Command2”、“Command3”、“Command4”、“Command5”、“Command6”、“Command7”、“Command8”。窗体中插入ADO控件,关联到数据表“处方信息”中。此时这个窗口中以上功能的代码如下
14、:Private Sub Command1_Click()Adodc1.Recordset.AddNewCommand1.Enabled = FalseCommand4.Enabled = TrueEnd SubPrivate Sub Command2_Click()Adodc1.Recordset.DeleteAdodc1.Recordset.MoveNextEnd SubPrivate Sub Command3_Click()Adodc1.Recordset.UpdateEnd SubPrivate Sub Command4_Click()Adodc1.Recordset.UpdateCo
15、mmand1.Enabled = TureCommand4.Enabled = FalseEnd SubPrivate Sub Command5_Click()Adodc1.Recordset.MoveFirstEnd SubPrivate Sub Command6_Click()Adodc1.Recordset.MoveNextIf Adodc1.Recordset.EOF ThenAdodc1.Recordset.MoveLastEnd IfEnd SubPrivate Sub Command7_Click()Adodc1.Recordset.MovePreviousIf Adodc1.R
16、ecordset.BOF ThenAdodc1.Recordset.MoveFirstEnd IfEnd SubPrivate Sub Command8_Click()Adodc1.Recordset.MoveLastEnd Sub (III)实现权限设置的代码 定义一个模块“Module1”,内容如下: Public usertype As Integer 在Form1中使得用户的类型被usertype的“1”、“2”、“3”、“4”所表示,这些数字的含义在开头有提及,在此不再赘述。 以实现“医生”用户的“处方编辑”功能的权限为例,在MDIForm1中有如下代码:Private Sub 学生
17、处方记录编辑_Click()If usertype = 1 ThenForm2.Show/Form2为“处方编辑”窗口ElseMsgBox 对不起,您没有访问权限, , 提示End IfEnd Sub三 程序运行结果展示 以“挂号人员”用户使用此系统为例展示运行结果,其他用户的运行方式和所见到的各界面与此类似。 首先,在开始运行这个程序的时候会出现一个登录窗口,用户应该在这个登录窗口中输入自己的登录信息,如下图示:(之所以没有将用户的密码隐藏起来是考虑到用户修改方便)如果输入的信息正确则进入主界面: 如果输入的用户名没有定义则会弹出一个消息框显示“没有这个用户”,如果输入的密码不正确则会弹出一
18、个消息框显示“密码不正确”,如果输入的用户类型不对则会弹出一个消息框显示“没有符合条件的用户”,而这三个消息框出现之后用户可以点击“确定”按钮然后回到登录窗口修改信息之后再登录。1.挂号记录编辑当“挂号人员”进入主界面时,可以选择“病人管理”中的“学生挂号记录编辑”来查询学生的挂号记录,如下图所示:当用户单击“添加”按钮时,添加一个新纪录,各输入框显示为空,同时添加按钮变为不可用,避免多次单击“添加”按钮产生多条空记录,而“保存”按钮可以使用,当用户在输入框中输入各字段后,单击“保存”按钮,则将新纪录写入数据库中。例如,现在添加一条记录:学号为“3”,姓名为“六六”,性别为“男”,年龄为“18
19、”,学院为“信息科学与工程学院”,学历为“本科”,医保类型为“城市”,如图示:此时数据表“病人信息表”中增加了关于学生“六六”的信息,而原本这个表中只有两个学生的信息,如图示:对“六六”的年龄进行修改,再按下“修改”按钮,如图示:此时表格中的信息发生了变化,“六六”的年龄变为了19岁:若要删除和“六六”相关的信息,则按下“删除”,之后表格中关于“六六”的信息会被删除:2.学生诊疗记录查询用户还可选择“病人管理”中的“学生诊疗记录查询”来查询诊疗记录,此时出现如下窗口:输入想要查询的病人的学号,然后按下“查询”,对应的学生的诊疗记录出现在网格中:3. 学生处方查询 这个操作与2中的操作一样。4.
20、注意由于前面的两个关系图的存在,所以对于用户使用各功能的顺序有要求,必须先由“挂号人员”录入病人的基本信息,其他用户才能进一步进行信息添加。而用户本人的信息必须先在“系统用户登录表”中录入才能再录入对应表格,对于程序中“添加新用户”的功能而言,也是如此。当用户点击不属于自己的权限的选项时,会弹出消息框提示用户没有该权限。5. 添加新用户当用户点击添加新用户时,系统会有以下提示:点击确定,开始添加新用户:点击保存,系统会弹出消息框显示添加成功,点击消息框中的确定,出现如下界面:将新增挂号人员的姓名“六六”和编号“23”输入,点击确定,系统提示添加成功,此时对应的挂号人员信息表和系统用户登录表中的
21、信息发生变化,六六的信息被加入: 6.退出系统点击“退出系统”选项,弹出写有作者信息的消息框,点击确定退出系统。四 总结与心得 这是一个小型的校医院门诊管理信息系统,基本的功能都已经具备,其中也插入了我的个人信息作为标示。然而这个程序还存在很多的问题,比如说要编辑病人的信息就只能一条一条地翻记录,很麻烦,没有做到像查询功能那样一目了然。而且对于新用户的添加,添加什么用户的类型全靠用户自觉,系统无法做到强制用户只能添加与当前用户类型相同的新用户。诸如此类的问题还有很多。 虽然存在大量的问题,但是经过这一次的小型应用程序设计,我收获了很多。首先是对VB和数据库有了更多的了解和体会,感受到了数据库和高级语言功能的强大。其次,我认识到自己无论在对于数据库知识的理解和应用上都有很大不足,而且编程的能力有待提高。也认识到了编程的能力对于信息专业学生而言的重要性。最后我还锻炼了自己坚持学习和思考的能力,这次的设计让我连续熬了一段时间的夜,但是我也坚持下来了,遇到一些问题暂时没有解决的就主动去查阅资料和虚心请教同学,增强了人际交往能力,也更好地学会了在将来的人生中如何应对挑战。
限制150内