完整word版java课设 医院管理信息系统.docx
- 文档编号:24680454
- 上传时间:2023-05-31
- 格式:DOCX
- 页数:47
- 大小:342.89KB
完整word版java课设 医院管理信息系统.docx
《完整word版java课设 医院管理信息系统.docx》由会员分享,可在线阅读,更多相关《完整word版java课设 医院管理信息系统.docx(47页珍藏版)》请在冰豆网上搜索。
完整word版java课设医院管理信息系统
医院管理信息系统
1需求分析
1.1现状
当前,医院作为病人就诊的地方,有许多信息需要处理和管理。
现今,有很多门诊信息都是初步开始使用,甚至尚未使用计算机进行信息处理。
根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于医历等很多信息都是用人工计算、手抄进行。
数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。
总的来说,缺乏系统,规范的信息管理手段。
数据处理手工操作,工作量大,出错率高,出错后不易更改。
基于这此问题,我认为有必要建立一个医院管理系统,使医院管理工作规范化,系统化,程序化,避免医院管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改医院情况。
医院信息系统简称HIS,是HospitalInformationSystem的简称,是指利用计算机和网络通信设备,为医院所属的各个部门提供病人诊疗和行政管理信息的手机、存储、处理提取和数据交换的能力。
此次我课程设计的目标就是设计一个能使医院的管理工作系统化、规范化、自动化的系统,从而提高医院管理工作的效率。
1.2模块功能
本系统功能主要包括:
员工信息、病人信息、药剂管理、仪器管理、工资管理、病床管理。
员工信息:
储存了医院的医务人员的基本情况,包括员工编号,姓名,性别,所在部门,联系电话等信息。
员工各种的查询、修改,包括员工基本信息、职称、岗位、工资等。
员工的人事调动管理。
病人信息:
病人基本资料表中所有项目(姓名,性别,婚否,出生日期,职业,职称,门诊诊断),病人基本资料表录入、修改、删除、复制。
药剂管理:
实现对医院药品信息的分类管理和数据分析,从而使信息整理快速、准确、简单,以便于相关部门给予统筹安排,从而提高改进传统的管理方法,提高企业管理水平。
仪器管理:
保存了医院所需医疗用品的基本情况,库存量和单品价格。
以便管理人员查看,随时进行补货。
工资管理:
存储医生员工号,工资级别和工资总额,管理人员可以进行增删查改。
病床管理:
实现床位分配、空床查询、包床/退床、转床出院处理。
图1.功能结构图
1.3用例图
图2.用例图
2系统设计
2.1识别需求文档中的类
1.管理员管理员工编号,姓名,性别,所在部门,联系电话等信息,进行增删查改。
普通用户查看员工信息。
2.管理员设置病人姓名,性别,婚否,出生日期,职业,职称,门诊诊断,进行病人基本资料表录入、修改、删除、查询。
3.管理员实现对医院药品信息的分类管理,进行增删查改。
4.管理员保存医院所需医疗用品的基本情况,库存量和单品价格。
5.管理员录入医生员工号,工资级别和工资总额,进行增删查改。
普通用户查看自己的工资。
6.管理员实现床位分配、空床查询、包床/退床、转床出院处理。
需求文档中的名词/名词短语,按照出现顺序,从左到右排列(不重复):
管理员(admin)、普通用户(person)、病人(invalid)、药品(stuff)、医疗用品)(apparatus、工资(pay)、床位(bed)。
2.2初步建模类及类间关系
员工信息包括:
医生编号、姓名、性别、学历、职务、所在科室。
病人基本情况描述包括病人的病人编号、姓名、性别、联系电话、籍贯、国家、民族、身份证号、健康状况、科室名称、病房号、床号。
病号唯一确定一个病人。
药品信息描述包括:
药品编号、药品名称、库存量、单价。
仪器信息描述包括:
仪器代号、名称、单价、数量。
床位信息描述包括床号、病房号、是否已住人。
一个床号和病房号唯一确定一个床位情况。
2.3初步的UML图
Database
+sql:
String
+url:
String
+user:
String
+password:
String
+<
+OpenConn():
void
+executeQuery(insql:
String):
ResultSet
+executeUpdate(insql:
Sring):
boolean
+closestmt():
void
+closeConn():
void
图3.DatabaseUML设计
Apparatus
+Datas:
String
+Columntitles:
String
+type:
int
+<
String[][],intype:
int)
+actionPerformed(ine:
ActionEvent):
void
图4.ApparatusUML设计
Invalid
+datas:
String
+columntitles:
String
+type:
int
+<
String[][],intype:
int)
+actionPerformed(ine:
ActionEvent):
void
图5.InvalidUML设计
Personcheck
-pclass:
String
+columns:
String
+datas:
String
+<
String[][])
+actionPerformed(ine:
ActionEvent):
void
图6.PersoncheckUML设计
Invalidupdate
+<
+actionPerformed(ine:
ActionEvent):
void
图7.InvalidupateUML设计
Invalidcheck
-pclass:
String
+columns:
String
+datas:
String
+<
String[][])
+actionPerformed(ine:
ActionEvent):
void
图8.InvalidcheckUML设计
Invalidadd
-pclass:
String
+<
+actionPerformed(ine:
ActionEvent):
void
图9.InvalidaddUML设计
InvalidBean
sql:
String
iname:
String
sex:
string
pclass:
String
state:
String
doctor:
String
itime:
String
rno:
String
bno:
String
Add(inname:
String,insex:
String,intime:
String,inplass:
String,instate:
String,indoctor:
String,inrno:
String,inbno:
String):
void
searchInvalidiname(ininame:
String):
String[]
editInvalid(ininame:
String,insex:
String,initime:
String,inplass:
String,instate:
String,indoctor:
String,inrno:
String,inbno:
String):
void
deleteInvalid(ininame:
String):
void
searchAllInvalidor(ininame:
String,initime:
String,inpclass:
String,instate:
String,inrno:
String,inbno:
String):
String[][]
searchAllInvalidand(ininame:
String,initime:
String,inpclass:
String,instate:
String,inrno:
String,inbno:
String):
String[][]
getAlliname():
String[]
refresh():
String[][]
图10.InvalidBeanUML设计
3系统实现
3.1UML类图转换成Java代码框架
1Database.Java是数据库连接,源代码如下:
publicclassDatabase{
publicDatabase(){
}
publicvoidOpenConn()throwsException{
try{
}
catch(Exceptione){
}
}
publicResultSetexecuteQuery(Stringsql){
}
catch(SQLExceptione){
}
}
publicbooleanexecuteUpdate(Stringsql){
}
publicvoidcloseStmt(){
}
}
publicvoidcloseConn(){
publicstaticvoidmain(String[]args)throwsException
}
}
2Personframe.java为员工信息窗口的代码,可以进行查询,删除,刷新,修改,源代码如下:
publicclassPersonFrameextendsJFrameimplementsActionListener
{privateJButtonbutton_add;
privateJButtonbutton_check;
privateJButtonbutton_delete;
privateJButtonbutton_refresh;
privateJButtonbutton_update;
privateJTabletable;//表格组件
privateDefaultTableModeltableModel;
Stringdatas[][];
String[]columntitles={"员工号","员工姓名","性别","所在部门","身份证","生日","籍贯","国家","民族","婚姻状况","健康状况","工作时间","家庭住址","联系电话"};
publicPersonFrame(Stringdatas[][],inttype)
{
publicbooleanisCellEditable(introw,intcolumn)
{
returnfalse;}//表格不允许被编辑
};
}
@Override
publicvoidactionPerformed(ActionEvente){
}
publicstaticvoidmain(String[]args)//测试方法
{
//newPersonFrame(null,0);
}
}
3Invalid.java是病人管理模块的代码,可以进行入院,查询,刷新和更新的操作,源代码如下:
publicclassInvalidextendsJFrameimplementsActionListener
{
privateJButtonbutton_add;
privateJButtonbutton_check;
privateJButtonbutton_edit;
privateJButtonbutton_refresh;
privateJButtonbutton_delete;
privateJTabletable;//表格组件
privateDefaultTableModeltableModel;
Stringdatas[][];
String[]columntitles={"病人姓名","病人性别","入院时间","所属科室","病人状况","主治医生","病房号","病床号"};
publicInvalid(Stringdatas[][],inttype)
{
publicbooleanisCellEditable(introw,intcolumn)
{
returnfalse;}//表格不允许被编辑
};
}
@Override
publicvoidactionPerformed(ActionEvente){
}
publicstaticvoidmain(String[]args)//测试方法
{
//newInvalid(null,0);
}
}
4Apparatus.java是对仪器进行管理,源代码如下:
publicclassApparatusextendsJFrameimplementsActionListener
{
privateJButtonbutton_add;
privateJButtonbutton_check;
privateJButtonbutton_edit;
privateJButtonbutton_refresh;
privateJButtonbutton_delete;
privateJTabletable;//表格组件
privateDefaultTableModeltableModel;
Stringdatas[][];
String[]columntitles={"仪器代号","仪器名称","仪器价格","仪器数量","备注"};
inttype;
publicApparatus(Stringdatas[][],inttype)
{
publicbooleanisCellEditable(introw,intcolumn)
{
returnfalse;}//表格不允许被编辑
};
}
@Override
publicvoidactionPerformed(ActionEvente){
publicstaticvoidmain(String[]args)//测试方法
{
newApparatus(null,0);
}
}
5Stuff.java是药剂管理,可以查询库存药品的信息,源代码如下:
publicclassStuffextendsJFrameimplementsActionListener
{privateJButtonbutton_add;
privateJButtonbutton_check;
privateJButtonbutton_edit;
privateJButtonbutton_refresh;
privateJButtonbutton_delete;
privateJTabletable;//表格组件
privateDefaultTableModeltableModel;
Stringdatas[][];
String[]columntitles={"药剂代号","药剂名称","药剂价格","储存量","备注"};
inttype;
publicStuff(Stringdatas[][],inttype)
{
}
@Override
publicvoidactionPerformed(ActionEvente){
}
publicstaticvoidmain(String[]args)//测试方法
{
newStuff(null,0);
}
}
6Pay.Java是对员工工资进行管理录入的操作,源代码如下:
publicclassPayextendsJFrameimplementsActionListener
{privateJButtonbutton_add;
privateJButtonbutton_check;
privateJButtonbutton_edit;
privateJButtonbutton_refresh;
privateJButtonbutton_delete;
privateJTabletable;//表格组件
privateDefaultTableModeltableModel;
Stringdatas[][];
String[]columntitles={"员工号","工资等级","工资总额"}
publicPay(Stringdatas[][])
{
}
@Override
publicvoidactionPerformed(ActionEvente){
}
publicstaticvoidmain(String[]args)//测试方法
{
newPay(null);
}
}
7Bed.java是对医院病床进行管理,显示病房及病床的使用信息,源代码如下:
PublicclassBedextendsJFrameimplementsActionListener
{privateJButtonbutton_add;
privateJButtonbutton_check;
privateJButtonbutton_refresh;
privateJButtonbutton_delete;
privateJTabletable;//表格组件
privateDefaultTableModeltableModel;
Stringdatas[][];
String[]columntitles={"病床号","病房号","状态"};
publicBed(Stringdatas[][])
{
publicbooleanisCellEditable(introw,intcolumn)
{returnfalse;}//表格不允许被编辑
};
}
@Override
publicvoidactionPerformed(ActionEvente){
}
publicstaticvoidmain(String[]args)//测试方法
{
newBed(null);
}
3.2添加表示层,实现交互功能
3.2.1Login类
系统的用户有管理员、医生,因此,在进入主界面之前,应该先弹出登录界面,要求用户输入用户编号(姓名可能重名)和登录口令,以验证用户身份。
因此,我们首先需要设计一个登录界面——Login类。
设计思路:
实现界面外观,添加交互功能。
登录过程中需要进行用户ID与密码的验证。
importjava.awt.*;
importjavax.swing.*;
importjava.awt.event.*;
publicclassLoginextendsJFrameimplementsActionListener
{
privateJLabeluser,password;
privateJTextFieldtext_user;//用户名文本行
privateJPasswordFieldtext_password;//密码文本行
privateJButtonbutton_ok,button_cancel;
privateJComboBoxtypeBox;
JLabeljlabel;
publicbooleanisLogin=false;//判断登录是否成功
publicLogin()
{super("用户登录");
this.setSize(240,150);
this.setLocation(550,200);
this.setBackground(Color.lightGray);
this.setResizable(false);
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
this.getContentPane().setLayout(newFlowLayout());
jlabel=newJLabel("欢迎登陆医院管理信息系统",JLabel.CENTER);
this.getContentPane().add(jlabel);
user=newJLabel("用户名:
");
user.setFont(newFont("Dialog",0,12));
this.getContentPane().add(user);
text_user=newJTextField(15);
text_user.setEditable(true);
this.getContentPane().add(text_user);
password=newJLabel("密码:
");
password.setFont(newFont("Dialog",0,12));
this.getContentPane().add(password);
text_password=newJPasswordField(15);
this.getContentPane().add(text_password);
Stringtypes[]={"普通用户","管理员"};
typeBox=newJComboBox(types);
button_ok=newJButton("登录");
button_ok.setFont(newFont("Dialog",0,12));
this.getContentPane().add(newLabel());
this.getContentPane().add(typeBox);
this.getContentPane().add(button_ok);
button_ok.addActionListener(this);
button_cancel=newJButton("取消");
button_cancel.setFont(newFont("Dialog",0,12));
this.getContentPane().add(button_cancel);
button_cancel.addActionListener(this);
this.setVisible(true);
}
publicvoidactionPerformed(ActionEvente)//单击事件处理方法
{Stringusername=text_user.getText();
String
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整word版java课设 医院管理信息系统 完整 word java 医院 管理信息系统