ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:537.09KB ,
资源ID:12324104      下载积分:8 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12324104.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于JAVA的医院管理系统课程设计论文.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于JAVA的医院管理系统课程设计论文.docx

1、基于JAVA的医院管理系统课程设计论文医院管理系统1.课程设计的目的面向对象的开发方法是当今世界最流行的开发方法,它不仅具有更贴近自然的语义,而且有利于软件的维护和继承。现代化的医院也应该有现代化的管理系统。在科技日益发达的今天,人们的身体健康也在不断受到重视。因此,医院进行现代化管理就变得尤为重要,需要建立一个使用的医院管理系统。为了进一步巩固JAVA相关的知识,深刻把握JAVA语言的重要概念及其面向对象的特性,锻炼学生熟练的应用面向对象的思想和设计方法解决实际问题的能力,开设了JAVA程序设计课程设计。 通过此次课程设计,使学生通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌

2、握JAVA语言的编程思想及面向对象程序设计的方法,为今后的学习和工作打下基础。2.设计方案论证2.1开发环境JAVA编程工具JDK 1.5.0 ,操作系统Windows 7.2.2系统功能描述系统需要完成功能主要有:(1)医生各种信息的输入,包括员工基本细细、职称、岗位。(2)医生各种的查询、修改,包括员工基本信息、职称、岗位、工资等。(3)医生的人事调动管理。(4)病人信息、病床、药剂、仪器的管理。(5)系统用户管理、权限管理。2.3系统功能模块设计在系统功能分析的基础上,考虑Microsoft Visual Studio 2008 程序编制的特点,得到如图1所示的系统功能模块图。 图1 系

3、统功能模块图2.4数据库需求分析在数据库应用系统的开发过程中,数据库的结构设计是一个非常重要的问题。数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响,好的数据库结构会减小数据库的存储量,数据的完整性和一致性比较高,系统具有较快的相应速度,简化基于此数据库的应用程序的实现等。在数据库系统开始设计的时候应该尽量考虑全面,尤其应该仔细考虑用户的各种需求,避免浪费不要的人力和物力。 数据库需求分析是数据结构设计的第一阶段,是非常重要的一个阶段。在这个阶段主要是收集基本数据、数据结构以及确定数据处理的流程,组成一份详尽的数据字典,为以后进一步设计打下基础。 在仔细调查医院管理过程的基础上

4、,我们得到本系统所处理的数据关系如图2所示。图2 数据关系图2.5数据库设计通过对医院管理的内容和数据关系分析,我们设计的数据项和数据结构如下: 员工基本状况包括的数据项有员工号、员工姓名、性别、所在部门、身份证号、生日、籍贯、国籍、民族、婚姻状况、健康状况、参加工作时间、员工状态、家庭住址、联系电话等。 员工工资状况包括的数据项有员工号、工资项别、工资金额等。 医院工作岗位信息包括的数据项有工作岗位代号、工作岗位名称等。 医院部门信息包括的数据项有部门代号、部门名称、部门负责人等。 病人信息包括的数据项有病人姓名、病人性别、入院时间、病人所属科室、病人状况、病人主治医生、房间号、病床号等。

5、药剂资源管理信息包括的数据项有药剂代号、药剂名称、药剂价格、药剂库存数量、备注等。 医疗仪器管理包括的数据项有仪器代号、仪器名称、仪器价格、仪器数量、备注等。 这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及确定他们之间的关系,为后面的逻辑结构设计打下基础。本实例根据上面的设计规划出的实体有员工实体、部门实体、岗位实体、病人实体、药剂实体、仪器实体。实体和实体之间的关系E-R图如图3所示。图3 实体之间关系E-R图我们需要将上面的数据库概念结构转化为Microsoft Visual Studio 2008数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。 在上面的

6、实体以及实体之间关系的基础上,我们就可以形成数据库中的表格以及各个表格之间的关系。 医院管理系统数据库中各个表格的设计结果如表。每个表格对应在数据库中的一个表。2 .6功能模块的创建 首先设计的是登录界面(如图4所示,所有程序代码参照“程序原代码”)。 图4 登陆界面然后设计的是登录后的主界面(如图5所示)。图5 主界面之后设计病人挂号界面(如图6所示)。图6 病人挂号界面药品管理界面(如图7所示)图7药品管理界面3. 设计结果分析首先我们运行程序,弹出登录界面在输入用户名和密码之后(如图8所示),进入主界面(如图9所示)。图8登录 图9登录后的主界面 然后我们进行病人登记(如图10所示),在

7、输入一系列的信息之后,单击添加挂号,成功添加一个新挂号。图10病人挂号界面 之后我们在数据库中添加一系列的相关数据,再进行退药管理(如图11所示)。图11退药界面4.设计体会通过这一次JAVA课程设计,我深深的理解到面向对象编程的方便与快捷和JAVA的重要性,也使我本学期所学的JAVA知识得到巩固和应用,在设计的过程中我遇到了很到问题,为了解决问题进行了各种各样的实验和资料的查找,这此课程设计还让我懂得了写程序不能闭门造车,要努力拓宽知识面,丰富知识。它还让我学会了在网上查阅那些无限的资料。通过对此课题的开发,使我对用JAVA开发系统有了一个比较清楚的认识,体会到理论和实践的重要性。由于自己的

8、分析设计和程序经验不足,该系统设计和实现过程中,还有许多没有完善的地方,比如用户界面设计不够美观,异常出错处理比较差等多方面问题,这些都有待进一步完善和提高。本次课程设计对我将来的学习工作必会起到很大的帮助作用。5.参考文献1.范立南,刘天惠等. SQL Server 2000 实用教程M. 北京:清华大学出版社,2004.02:47-1382.李诚等. Java2简明教程M,第2版. 北京:清华大学出版社,2004.08:165-2013. 陈轶.姚晓昆编著.Java程序设计实验指导.北京:清华大学出版社,20064. 杨昭编著.二级Java语言程序设计教程.北京:中国水利水电出版社,200

9、65 .美Herbert Schidt著.Java参考大全.鄢爱兰.鹿江春译.北京:清华大学出版社,2006附录:namespace Hospital_MIS public partial class Frm_login : Form databaseoperate myoperate = new databaseoperate(); public Frm_login() InitializeComponent(); private void btn_exit_Click(object sender, EventArgs e) Application.Exit(); private void

10、Frm_login_FormClosed(object sender, FormClosedEventArgs e) Application.Exit(); private void btn_ok_Click(object sender, EventArgs e) /首先查询数据库,获取与指定用户名和密码匹配的信息 SqlDataReader sqlread = myoperate.getread (select name,password,discipline from employee + where name= + txt_name.Text.Trim() + and password=

11、 + txt_pwd.Text.Trim() + ); try sqlread.Read();/读取SqlDataReader if (sqlread.HasRows)/如果存在匹配行 /在operateinfo中记录用户名信息 operateinfo.operatename = txt_name.Text.Trim(); /显示主窗体 Frm_Main newfrm = new Frm_Main(); this.Hide(); newfrm.Show(); else /如果密码错误,则显示提示信息并要求用户重新输入 MessageBox.Show(用户名或密码错误!, 提示, Message

12、BoxButtons.OK, MessageBoxIcon.Information); txt_name.Text = ; txt_pwd.Text = ; txt_name.Focus(); finally /如果己经实例化了SqlDataReader if (sqlread != null) /关闭SqlDataReader sqlread.Close(); 主界面代码及挂号界面代码namespace Hospital_MIS public partial class Frm_appointment : Form databaseoperate myoperate = new databa

13、seoperate(); public Frm_appointment() InitializeComponent(); private void button3_Click(object sender, EventArgs e) /获取病人的编号 operateinfo.patientno = txt_patientno.Text.Trim(); /实例化并显示打印预览窗口 Frm_printreg frm = new Frm_printreg(); frm.Show (); private void Frm_appointment_Load(object sender, EventArgs

14、 e) /进行病人名称的自动完成操作 this.cmb_name.AutoCompleteMode = AutoCompleteMode.SuggestAppend; this.cmb_name.AutoCompleteSource = AutoCompleteSource.ListItems; /添加要进行操作的类型 cmb_optype.Items.Add(预约); cmb_optype.Items.Add(预约挂号); cmb_optype.Items.Add(现场挂号); cmb_optype.SelectedIndex = 0; /将病人信息的文本框控件设置为不可用 SetContr

15、olFalse(); /加载病人姓名 this.getname(); /添加医师名称以及预约科室 DataSet getdocnameds = myoperate.getds (select ID,name,discipline from employee, employee); for (int i = 0; i getdocnameds.Tables0.Rows.Count; i+) /将预约科室添加到ComboBox控件中 this.cmb_docdiscipline.Items.Add(getdocnameds.Tables0.Rowsi2); /对医师信息进行数据绑定 cmb_doc

16、name.DataSource = getdocnameds.Tables0; cmb_docname.DisplayMember = name; cmb_docname.ValueMember = ID; /添加员工表中所有员工的信息,绑定到预约医生ComboBox控件中 DataSet getappointdocds = myoperate.getds(select ID,name from employee, employee); cmb_appointdoc.DataSource = getappointdocds.Tables0; cmb_appointdoc.DisplayMemb

17、er = name; cmb_appointdoc.ValueMember = ID; /添加挂号名称到ComboBox控件中 DataSet getregnameds = myoperate.getds(select name from dict_reg, dict_reg); for (int i = 0; i getregnameds.Tables0.Rows.Count; i+) this.cmb_regname.Items.Add(getregnameds.Tables0.Rowsi0); cmb_regname.SelectedIndex = 0; private void Set

18、ControlFalse() txt_balance.Enabled = false; txt_birthday.Enabled = false; txt_cardname.Enabled = false; txt_celladdress.Enabled = false; txt_cellphone.Enabled = false; txt_email.Enabled = false; txt_patientno.Enabled = false; txt_sex.Enabled = false; txt_sidno.Enabled = false; txt_sidtype.Enabled =

19、false; private void cmb_optype_SelectedIndexChanged(object sender, EventArgs e) this.getname(); if (cmb_optype.SelectedItem.ToString() = 预约) cmb_regname.Enabled = false; cmb_regfee.Enabled = false; if (cmb_optype.SelectedItem.ToString() = 预约挂号) cmb_regname.Enabled = true; cmb_regfee.Enabled = true;

20、if (cmb_optype.SelectedItem.ToString() = 现场挂号) cmb_regname.Enabled = true; cmb_regfee.Enabled = true; private void getname() if (cmb_optype.SelectedItem.ToString() = 预约) cmb_name.Items.Clear(); DataSet getnameds = myoperate.getds(select name from patient, patient); for (int i = 0; i getnameds.Tables

21、0.Rows.Count; i+) this.cmb_name.Items.Add(getnameds.Tables0.Rowsi0); if (cmb_optype.SelectedItem.ToString() = 预约挂号) cmb_name.Items.Clear(); DataSet getnameds = myoperate.getds(select patientname from appointment where appointment_done=1, appoint); for (int i = 0; i getnameds.Tables0.Rows.Count; i+)

22、this.cmb_name.Items.Add(getnameds.Tables0.Rowsi0); if (cmb_optype.SelectedItem.ToString() = 现场挂号) cmb_name.Items.Clear(); DataSet getnameds = myoperate.getds(select name from patient, patient); for (int i = 0; i getnameds.Tables0.Rows.Count; i+) this.cmb_name.Items.Add(getnameds.Tables0.Rowsi0); pri

23、vate void cmb_name_SelectedIndexChanged(object sender, EventArgs e) if (cmb_optype.SelectedItem.ToString() = 挂号 ) string tempstr = cmb_name.Text; DataSet chanagenameds = myoperate.getds(select * from patient where name= + tempstr + , patient); txt_sidtype.Text = chanagenameds.Tables0.Rows0sidtype.To

24、String(); txt_sidno.Text = chanagenameds.Tables0.Rows0sidno.ToString(); txt_sex.Text = chanagenameds.Tables0.Rows0sex.ToString(); txt_patientno.Text = chanagenameds.Tables0.Rows0patientno.ToString(); txt_email.Text = chanagenameds.Tables0.Rows0e_mail.ToString(); txt_cellphone.Text = chanagenameds.Ta

25、bles0.Rows0cellphone.ToString(); txt_celladdress.Text = chanagenameds.Tables0.Rows0celladdress.ToString(); txt_cardname.Text = chanagenameds.Tables0.Rows0cardtype.ToString(); txt_birthday.Text = chanagenameds.Tables0.Rows0birthday.ToString(); txt_balance.Text = chanagenameds.Tables0.Rows0balance.ToS

26、tring(); DataSet appinfods=myoperate .getds(Select * from appointment where patientname= + tempstr + and appointment_done=1,appointment); cmb_docname.SelectedItem = appinfods.Tables0.Rows0doctor.ToString(); cmb_docdiscipline.SelectedItem = appinfods.Tables0.Rows0discipline.ToString(); dtp_thisdate.V

27、alue = Convert.ToDateTime(appinfods.Tables0.Rows0thisdate); dtp_thistime.Value = Convert.ToDateTime(appinfods.Tables0.Rows0thistime); else string tempstr = cmb_name.Text; DataSet chanagenameds = myoperate.getds(select * from patient where name= + tempstr + , patient); txt_sidtype.Text = chanagenamed

28、s.Tables0.Rows0sidtype.ToString(); txt_sidno.Text = chanagenameds.Tables0.Rows0sidno.ToString(); txt_sex.Text = chanagenameds.Tables0.Rows0sex.ToString(); txt_patientno.Text = chanagenameds.Tables0.Rows0patientno.ToString(); txt_email.Text = chanagenameds.Tables0.Rows0e_mail.ToString(); txt_cellphon

29、e.Text = chanagenameds.Tables0.Rows0cellphone.ToString(); txt_celladdress.Text = chanagenameds.Tables0.Rows0celladdress.ToString(); txt_cardname.Text = chanagenameds.Tables0.Rows0cardtype.ToString(); txt_birthday.Text = chanagenameds.Tables0.Rows0birthday.ToString(); txt_balance.Text = chanagenameds.Tables0.Rows0balance.ToString(); private void btn_addappointment_Click(object sender, EventArgs e) if (cmb_optype.SelectedItem.ToString() != 预约) /如果操作类型不为预约时,则提示用户 MessageB

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2