医院管理系统
课程设计(论文)任务及评语
院(系):软件学院 教研室:软件教研窒 学 号 课程设计(论文)题目 课程设计任务及要求: 1、掌握C#程序设计语言的基础知识。 2、设计所选择的题目,对具体功能进行详细的分析,根据系统的要求合理 学生姓名 专业班级 计算机信息管理092班 课程设计(论文)任务 化设计Windows应用程序。 3、了解C#与数据库的连接方法。 4、编写代码,实现系统的功能。 5、通过调试程序,加深对面向对象程序设计及使用C#语言开发Windows应用程序的基本技巧方法的理解。 课程设计过程中,要严格遵守实践环节的时间安排,听从指导教师的指导。正确地完成上述内容,记录实习日记,规范完整地撰写出课程设计论文。 指导教师评语及成绩 成绩: 指导教师签字: 2011年 7 月 11日 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
目 录
第1章 课程设计目的与要求 ..................................................................................................... 1
1.1 课程设计目的 ........................................................................................................... 1 1.2 课程设计的实验环境 ............................................................................................... 1 1.3 课程设计的预备知识 ............................................................................................... 1 1.4 课程设计要求 ........................................................................................................... 1
第2章 课程设计内容....................................................................................................... 2
2.1 系统功能设计 ........................................................................................................... 2 2.2 系统详细设计 ........................................................................................................... 2.3 数据库访问技术 .......................................................................................................
第3章 课程设计总结....................................................................................................... 参考文献 ................................................................................................................................
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
第1章 课程设计目的与要求
1.1 课程设计目的
本课程的课程设计实际是学生学习完《基于C/S客户端程序设计》课程后,进行的一次全面的综合训练,其目的在于加深对客户端程序设计基本知识的理解,掌握运用c#开发应用程序的基本方法及基本技巧。 1.2 课程设计的实验环境
硬件要求能运行Windows 9.X以上操作系统的微机系统。 软件: Microsoft Visual C# 2005+SQL Server 2000 1.3 课程设计的预备知识
熟悉C#程序设计的基本语法知识及常用技巧。使用C#连接数据库的方法。 1.4 课程设计要求
按课程设计指导书提供的课题,每个小组设计一个完整的管理系统应用程序。要求根据规定设计系统的具体要求,按照应用程序的设计步骤和C#的基本知识应用程序的分析与实现。应根据基本学时分配合理安排设计时间,并完成各方面的设计。选择同一题目的同学,可以共同协作完成一个应用程序的开发任务。要求书写详细的设计说明书,对有复杂的代码段和程序段的部分,应画出程序流程图,写出全部的代码。在界面设计中,需画出每个窗体的布局,进行属性说明,杜绝雷同。
1
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
第2章 课程设计内容
2.1系统功能设计
2.1.1 系统功能分析
随着科技的日益发达,计算机在各行各业不断受到人们的重视,同时得到越来越广泛的应用,医院同样面临着信息时代的挑战。医院信息管理的计算机化、网络化将是建设现代化医院必不可少的条件的重要手段。
医院要紧跟时代发展的步伐和潮流,必须实现医院全面的信息化管理,为病人提供现代化的服务,提高对病人的服务水平,方便、准确、快捷地为病人提供医疗服务和医疗费用信息,进而增强病人对医院的信任和支持。当前,医院还面临着越来越激烈的市场竞争、要想在竞争中取胜,也必须采用先进的管理方法和手段。
本系统基本功能包括了医院在门诊、住院、药库、药房、住院和管理这六个方面,充分运用计算机技术、网络技术、数据库技术;采用灵活的模块化结构设计方法进行设计。为用户提供强大的数据操纵功能,界面友好、使用简单方便,同时基于客户机/服务器模式,系统维护成本低。
本系统采用了C#作为开发工具,在Windows XP操作系统下,基于Web服务器和浏览器IE6.0及其以上的版本。本系统主要由使用ASP.NET C#以及HTML开发的页面和由SQL SEVER 2000开发的数据库,利用ADO、BDE技术实现对数据库的存取。
在随后的说明中我将介绍所采用的开发工具的特点,如何开发医院信息管理系统的过程,此系统的操作界面以及此系统的部分开发代码。
本系统主要研究的是:导师服务:病人登陆、病人预约、前台缴费、药品退费、欠费催款、评价管理;医师服务:主要是医生针对病症对病情开药,医治;药房服务:药品管理、发放药品、退药入库;门诊统计:按科室统计、每日统计、交汇总;基本设置:检验设置、检查设置、科室设置、员工值班设置、挂号设置、用户管理、折扣卡设置。
2
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
2.1.2 系统功能模块设计
模块设计的主要方法是结构化方法,主导思想是以系统的逻辑功能设计和数据流关系为基础,采用“自顶向下,逐步求精”的设计方法,将本系统分解为功能明确,易于修改,大小适中的模块结构。
系统的功能结构图分析如下:
用户登导医服医师服药房服门诊统基本设病人登记 病人预约 前台交费 开医令 药品管理 发放药品 退药入按科室统计 每日统计 交汇医生会诊
图2.1系统功能模块图
从该图可以比较清楚的了解到系统要完成的基本逻辑功能。系统实现具体功能如下:
1)医院登记管理:主要负责记录医院病人的详细信息:病人编号、入院日期自动生成,登记个人详细信息,并根据所属科室分配病房和床号,交纳预交金额。
A、患者治疗包括:
[病人用药情况]:给病人用药,可以添加,修改,删除、保存用药信息,并且合计出所用药品的费用,自动添加到数据库中。
3
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
[其它费用情况]:可记录病人的其他费用明细:检查费、医院费等,并合计出费用总和。
B、病人转科:主要负责病人的转科情况,并将情况写入病案。
C、病案管理:能够根据给定的条件很方便的查询病人的基本情况,并且打印病人的情况,是面向操作者的又一病人详细信息的体现。
2)费用管理包括:
[费用项目档案]:添加、删除项目,并可以查询项目的名称、单价等。 [查询病人费用]:可实现根据病人编号查询病人医院时的各项费用,病科查询出总费用,是否欠费等。
[药品收入统计]:统计所有病人用药的费用,来查看医院部药品方面的收入。 [其它费用收入统计]:统计所有病人除药费外的费用,查看医院部其它方面的收入。
[各科室收入统计]:统计各科室药品和其它方面的收入,来查看各科室的收入利润。
3)出院结算: 根据病人编号查出病人信息,并自动计算病人的费用合计,是否欠款,是否需要结帐,还是直接出院。并自动生成出院日期,自动计算医院天数,添加到病案信息中。可以查询打印费用清单。
4)系统维护包括:
[数据备份]:备份系统数据库。
[更改密码]:科室用户修改自己的密码,但不能修改别人的密码。 [用户管理]:添加、删除管理员,设置管理员权限,此项只有高级管理员才能使用。[日志查询]:可查询用户的操作时间、操作内容。保证系统的安全。
5)系统维护包括:
[计 算 器] :方便用户计算数据。 [记 事 本] :方便用户备份文本。
[帮 助] :提供本软件的开发使用说明。
4
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
2.2系统详细设计
2.2.1 交费模块设计
1.界面设计
主要思想:在一个主窗口中添加数据窗口来实现,该数据窗口最主要的功能是用来交医疗费用时将手动搜索以添加医疗费用,从而得到所交的费用,通过输入交费的票号可以查找到这个病人的交费信息还可以看到这个病人的主治医师以及医生所在的。图示如下:
图2.2 交费界面
2.代码设计
myoperate.getcom(\"insert into 费用记录(票号,病历号,姓名,医师,科室,卡名,药费,
检验费,看诊费,挂号费,本次付,总计,付款方式,日期,检查费) values('\" + txt_payno.Text.Trim() + \"','\" + txt_patientno.Text.Trim() + \"'\"
+ \+ txt_patientname.Text.Trim() + \"','\" +
5
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
txt_paydoctor.Text.Trim() + \"','\" + txt_discipline.Text.Trim() + \"','\" + txt_cardname.Text.Trim() + \"','\" + txt_medcipayfee.Text.Trim() + \"','\" + txt_paycheckfee.Text.Trim() + \"'\" txt_cardname.Text.Trim() \"','\"+txt_check
.Text
+
\"','\"
+
txt_medci.Text.Trim()
.Text
+
.Trim ()+\"','\"+txt_treat .Trim
()+\"','\"+txt_note .Text .Trim ()+\"')\");
txt_cardname.Enabled = false; txt_check.Enabled = false; txt_medci.Enabled = false; txt_note.Enabled = false; txt_treat.Enabled = false;
savevalue = 0; SqlDataReader sqlread =
myoperate.getread(\"select name,password,discipline from employee where name='\" + txt_name.Text.Trim() + \"' and password='\" + txt_pwd.Text.Trim() + \"'\");
sqlread.Read(); if (sqlread.HasRows)
{ operateinfo .operatename = txt_name .Text .Trim(); Frm_Main newfrm = new Frm_Main(); this.Hide(); newfrm.Show() +
\
+
txt_paytreatfee.Text.Trim()
+
\"','\"
+
txt_regfee.Text.Trim() + \"','\" + nup_nowpaymoney.Value.ToString() + \"','\" + txt_total.Text.Trim() + \"','\" + cmb_paytype.SelectedItem.ToString() + \"','\" + dtp_paydate.Value.ToShortDateString() + \"','\" + txt_paytreatfee.Text.Trim() + \"')\"); returnvalue
=
myoperate.payproc(txt_patientno.Text.Trim(),
txt_regno.Text.Trim(), nup_nowpaymoney.Value,
Co values('\" + txt_name.Text.Trim() + \"','\" + txt_code.Text.Trim() +
6
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
\"','\"+txt_chinaese .Text .Trim ()+\"'\"
+\
()+\"','\"+nud_price .Value.ToString () +\"','\"+txt_usuresalt .Text .Trim ()+\"','\"+cmb_depart .SelectedItem .ToString ()+\"','\"+txt_note .Text .Trim ()+\"')\");
nvert.ToDecimal(txt_total.Text.Trim()), Convert.ToDecimal(txt_balance.Text.Trim())); if(returnvalue==1)
MessageBox.Show(\"付款成功!\");
2.2.2 药品管理模块设计 1.界面设计
根据药品的名称,规格,单位,价格,以及库存的数量等进行药品的管理,同时在下拉框中进行对具体信息的相应的查看。图示如下:
7
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
图2.3药品管理项目
2.代码设计
txt_id.Text = Convert.ToString(dataGridView1[0, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_name.Text = Convert.ToString(dataGridView1[1, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_num.Text = Convert.ToString(dataGridView1[9, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_style.Text = Convert.ToString(dataGridView1[4, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_unit.Text = Convert.ToString(dataGridView1[2, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_factory.Text = Convert.ToString(dataGridView1[8, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_class.Text = Convert.ToString(dataGridView1[6, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_chinese.Text = Convert.ToString(dataGridView1[5, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_better.Text = Convert.ToString(dataGridView1[7, dataGridView1.CurrentCell.RowIndex].Value).Trim(); c txt_name.Text = Convert.ToString(dataGridView1[1, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_num.Text = Convert.ToString(dataGridView1[9, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_style.Text = Convert.ToString(dataGridView1[4, dataGridView1.CurrentCell.RowIndex].Value).Trim(); txt_unit.Text = Convert.ToString(dataGridView1[2, hk_ableuse.Checked = Convert.ToBoolean (dataGridView1[10,
8
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
dataGridView1.CurrentCell.RowIndex].Value);
nud_price.Value=Convert.ToDecimal(dataGridView1[3, dataGridView1.CurrentCell.RowIndex].Value);
txt_usuresalt.Enabled = false;
txt_unit.Enabled = false; txt_note.Enabled = false; txt_name.Enabled = false; txt_code.Enabled = false; txt_chinaese.Enabled = false; cmb_depart.Enabled = false; nud_price.Enabled = false;
savevalue = 0; SqlDataReader sqlread =
myoperate.getread(\"select name,password,discipline from employee where name='\" + txt_name.Text.Trim() + \"' and password='\" + txt_pwd.Text.Trim() + \"'\");
sqlread.Read(); if (sqlread.HasRows)
{ operateinfo .operatename = txt_name .Text .Trim(); Frm_Main newfrm = new Frm_Main(); this.Hide(); newfrm.Show();
2.3数据库访问技术
利用代码和控件来连接数据库,使用的是访问技术,在sql中设置权限,利用访问技术来访问sql中的数据并完成一系列的操作,而且还考虑到异常的处理如果输入三次是错误的那么系统将自动关闭,具体的连接代码和运行后的窗体如下所示:
9
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
图2.4 用户登入
public denglu() {
InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) {
if (this.textBox1.Text == \"\" ) {
MessageBox.Show(\"用户名不能为空!\"); this.textBox1.Focus(); }
else if (this.textBox2.Text == \"\") {
MessageBox.Show(\"密码不能为空!\"); this.textBox2.Focus(); } else {
SqlConnection conn = new SqlConnection();
conn.ConnectionString = \"server=.;database=仓库;integrated
security=true\";
SqlCommand comm = new SqlCommand(); comm.CommandType = CommandType.Text;
comm.CommandText = \"select * from username where 用户名=@aa and
密码=@bb\";
comm.Connection = conn;
comm.Parameters.AddWithValue(\"@aa\", this.textBox1.Text); comm.Parameters.AddWithValue(\"@bb\", this.textBox2.Text);
10
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
conn.Open();
if (comm.ExecuteScalar() != null) {
MessageBox.Show(\"登录成功!\"); flag = 0;
gloInfo.IsLogin = true;
//if (this.textBox1.Text == \"admin\" && this.textBox2.Text ==
\"123\")
// gloInfo.qx = true; this.Close(); } else {
flag++;
if (flag == 3) {
flag = 0;
MessageBox.Show(\"三次错误,系统即将关闭!\"); Application.Exit(); } else {
MessageBox.Show(\"用户名或密码错误,请重新输入!\"); }
textBox1.Text = \"\"; textBox2.Text = \"\"; textBox1.Focus(); }
conn.Close(); } }
private void button2_Click(object sender, EventArgs e) {
Application.Exit(); }
private void denglu_Load(object sender, EventArgs e) {
textBox1.Focus();}
11
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
第3章 课程设计总结
通过这次设计,我从中受到了很大的教育和启迪,在项目设计过程中用到了很多以前上课时学的知识,尤其是老师上课教给我们的一些分析问题、解决问题的方法和思路,在这次项目中都得到了很好的运用。基本满足了医院管理系统的基本需要,将理论知识应用到实践中去,实现了用户使用的方便以及管理员管理的方便,在界面上力求做到简单实用,在操作方面尽量做到满足用户使用的习惯,但由于自己的水平有限和时间的不足,在很多方面还不完善,有些功能没有在全局上把握好,比如一些代码的应用,各种语句语句的执行效果也存在效率不高的问题,关于仓库管理的所有操作集中在一个页面实现,最重要的问题就是C#和后台链接时,出现了一些混淆,程序更改,测试时很不好等,但经过我们的努力查阅了书籍网上知识和书本知识的运用使我们程序完成的效果得到了进一步的提高,本系统不仅需要考虑界面的美观还要完成增加、删除、更改、刷新、等一系列的操作还要充分地掌握各种所学控件的属性和功能,这让自己在今后的学习当中将继续完善此系统,更加的掌握C#的用途,使其功能更加强大,满足用户的需求。
12
辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)
参考文献
1. 王奇.C# 实用教程.电子工业出版社 2. 李煊.C#系统概论.铁道出版社
3. 朱如龙.SQL Server 2000 数据库应用系统开发技术.机械工业出版社 4. 章立民.SQL Server2000 中文版完全实战. 中国铁道出版社 5. 李利.SQL Server 2000课程设计案例精编.中国水利水电出版社 6. 吴晨.C#程序设计教程. 电子工业出版社 7. 刘小迎.C#程序设计教程. 机械工业出版社 8. 廖望.SQL Server 2000案例教程.冶金工业出版社 9. 周存杰.C#网络编程实例教程. 希望电子出版社 10.崔丽丽.C和C++实务精选. 北京人民邮电出版社 11.张小辉.server 2000数据仓库.中国电力出版社
12.陆永祯.SQL Server 2000 数据库管理和程序开发一周通.中国铁道出版社 13.徐腾飞.SQL Server 2000数据挖掘实例分析. 中国水利水电出版社 14.赵晓乔.SQL Server数据库管理系统项目教程. 化学工业出版社 15.郭峰.C#编程软件. 清华出版社
13
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- awee.cn 版权所有 湘ICP备2023022495号-5
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务