宿舍管理信息系统.docx
《宿舍管理信息系统.docx》由会员分享,可在线阅读,更多相关《宿舍管理信息系统.docx(29页珍藏版)》请在冰点文库上搜索。
宿舍管理信息系统
宿舍管理信息系统
——实训报告
系部:
计算机系
班级:
13网络技术
教师:
张业文
姓名:
邓天顺
Ø实训目的
综合项目实训是完成课程教学计划的重要一环,有较强的实践性和综合性,对于帮助学生进一步理解课堂教学技术、方法和内容,培养学生的应用实践能力,为进一步学习更高阶段课程巩固基础本领。
综合项目实训是C#程序设计的配套训练,在课程教学的最后阶段实施,主要实战目的是:
(1)进一步巩固和加深学生对C#程序设计基础知识、技术、方法的理解和掌握度,培养学生综合运用C#语言知识和技术分析解决实际问题的能力。
(2)通过一个信息管理系统,使学生了解项目开发过程,培养学生创造性思维,提高项目设计、编码与调试能力。
(3)通过项目实训,使学生能够按照软件工程的基本方法开发小型的信息管理系统。
Ø实训对象
面向软件技术、计算机应用技术、计算机网络技术等计算机类专业,开设C#程序设计课程,并学会C#程序技术的高职类型学生开设。
Ø实训项目
选择“宿舍管理信息系统”作为综合实训项目,更有利于初学者对项目的整体把握和开展,更有利于根据实际校园生活有针对性地开发特色功能,故此,以“宿舍管理信息系统”为例开展实训更适合C#初学者。
Ø实训要求
实训结束时,学生必须提交以下材料:
(1)“宿舍管理信息系统”的源代码,存放在以学号为名称的文件夹。
(2)实训报告。
应包含以下内容:
1.实训题目
2.实训目的
3.实训内容
4.实训步骤
5.实训结果
6.实训心得
(3)考核方式。
1 实训成绩由项目训练成绩、答辩成绩和实训报告成绩三部分组成,各占总成绩的40%、30%、30%。
平时训练成绩包括阶段项目完成情况、课堂表现等,答辩成绩包括最终项目效果、计数数量程度等,实训报告成绩包括实训报告的规范性、完整性、正确性和实践性。
2 实训成绩分为优良、中、及格、不及格。
宿舍管理信息系统
系统功能结构图…………………………………………………………………………………………………….………….5
数据表关系图.......................................................................................................................7
系统功能
宿舍管理系统具有6项功能,即:
宿舍信息管理、学生入住手续办理、卫生情况检查、水电费收取、房屋保修和外来人员登记。
这些功能基本上覆盖了学生公寓管理的主要部分。
系统效果
宿舍管理信息系统的登陆界面如下图所示。
宿舍管理员输入用户名和密码后,单击“确定”按钮,进入系统主界面,如下图所示
宿舍管理信息系统的系统功能结构图如下图所示:
数据库设计
数据库是信息管理系统的后台数据管理中心,一个信息管理系统的功能是否健全,关键在于对数据库的设计,只有对数据库进行合理的设计,才能开发出完善而有效的管理系统。
宿舍管理信息系统系统的数据库中心包括以下几张表:
1 宿舍信息表(dorm);
2 学生信息表(student);
3 卫生检查信息表(checkinfo);
4 水电收费信息表(charge);
5 房屋保修信息表(repair);
6 外来人员登记信息表(register);
7 用户信息表(userinfo)。
启动MicrosoftSQLServer2005,按照以下介绍的表信息,创建数据库dormMIS。
数据表dorm存储宿舍的相关信息,包括宿舍号、电话、住宿费、床位费、椅子数、桌子数和备注。
各字段的说明如下表所示:
数据表student存储学生信息,包括学号、姓名、性别、班级、宿舍号。
各字段的说明如下表:
数据表checkinfo存储卫生检查信息,包括检查编号、宿舍号、检查日期、检查情况和备注。
各字段的说明如下表所示:
数据表charge存储水电收费信息,包括收费编号、宿舍号、收费日期、购买电量、缴费人和电费。
各字段的说明如下表所示:
数据表repair存储房屋保修信息,包括保修编号、宿舍号、保修日期、修理日期、报修人和修理情况。
各字段的说明如下表所示:
数据表register存储外来人员等登记信息,包括来访人员编号、来访人新明、来访日期、被访人姓名、宿舍号、离开日期和备注。
各字段的说明如下表所示:
数据表userinfo存储用户信息,包括用户名和密码。
各字段的说明如下表所示:
七张数据表关系图,如下图所示:
系统详细设计与实现
启动VisualStudio2010,新建Windows应用程序,取名为dormMIS。
在该项目中,添加以下窗体:
●mainForm.cs
●adduser.cs
●modifyPWD.cs
●reLogin.cs
●addDorm.cs
●browseDorm.cs
●updateDorm.cs
●addStudent.cs
●browseStd.cs
●updateStd.cs
●addCheck.cs
●browseCheck.cs
●updateCheck.cs
●addCharge.cs
●browseCharge.cs
●addRepair.cs
●browseRepair.cs
●addRegister.cs
●browseRegister.cs
数据库连接
本系统采用SQLServer2005数据库,在程序中专门设计了连接字符串模块dbConnection.cs,具体操作如下:
再dormMIS项目的解决方案中,右击项目名称,选择“添加”→“类”来添加dbConnection.cs类文件,在该类中创建连接字符串的属性。
详细代码如下:
NamespacedormMIS
{PublicclassdbConnection
{Publicstaticstringconnection
{get
{Return“datasource=.;database=dormMIS;integratedsecurity=SSPI”;
}
}
}
}
系统登录界面设计
宿舍管理信息系统一旦运行,首先进入的是系统登录界面,通过输入合法的用户名和密码。
才可登录宿舍管理信息系统,即进入该系统的主界面。
将dormMIS项目中的Form1.cs重命名为Login.cs。
登陆界面
功能与代码。
单击“确定”按钮:
连接数据库dormMIS,在数据表userinfo中查找是否存在输入的用户名和密码信息,如果存在,即可登录宿舍管理信息系统,打开系统的主界面;否则,提示错误信息。
privatevoidbtnOK_Click(objectsender,EventArgse)
{
if(txtname.Text==""||txtpwd.Text=="")
MessageBox.Show("请输入用户名和密码","提示");
else
{
SqlConnectioncon=newSqlConnection(dbConnection.connection);
SqlCommandcom=newSqlCommand("",con);
com.CommandText="select*fromuserinfowhereuname='"+txtname.Text.Trim()+"'andpwd='"+txtpwd.Text.Trim()+"'";
con.Open();
SqlDataReaderdr=com.ExecuteReader();
if(dr.HasRows)
{
this.Visible=false;
mainFormmf=newmainForm();
mf.Tag=this.FindForm();
mf.toolStripStatusLabel2.Text=txtname.Text.Trim();
mf.Show();
}
else
{
MessageBox.Show("用户名密码错误,请重新登录","登陆失败");
}
con.Close();
}
}
单击“取消”按钮:
关闭当前窗体。
主界面的设计
当用户登录成功之后,进入宿舍管理信息系统的主界面mainForm.cs,如图所示。
主界面中包含菜单栏、工具栏和状态栏。
(1)设计界面。
主界面中的控件如表所示。
主界面mainForm.cs的控件表
(2)功能与代码。
系统时间的显示:
①当运行界面,系统的日期时间将显示toolStripStatusLabel3中。
代码如下:
privatevoidmainForm_Load(objectsender,EventArgse)
{
toolStripStatusLabel3.Text=DateTime.Now.ToLongDateString()+""+
DateTime.Now.ToLongTimeString()+"";
}
②希望显示的时间随着系统时间在变化,这时需要在界面中加入计时器控件Timer,将其interval属性设置为1000,Enabled属性设置为true,编写Timer的Tick事件代码如下:
privatevoidtimer1_Tick(objectsender,EventArgse)
{
toolStripStatusLabel3.Text=DateTime.Now.ToLongDateString()+""+
DateTime.Now.ToLongTimeString()+"";
}
主界面运行时,单击“新建用户”菜单项,即运行adduser.cs界面。
代码如下:
privatevoid新建用户ToolStripMenuItem_Click(objectsender,EventArgse)
{
adduserauForm=newadduser();
auForm.MdiParent=this;
auForm.Show();
}
主界面运行时,单击“修改密码”菜单项,即运行modifypWD.cs界面。
代码如下:
privatevoid修改密码ToolStripMenuItem_Click(objectsender,EventArgse)
{
modifyPWDmodifypwd=newmodifyPWD();
modifypwd.Tag=this.toolStripStatusLabel2.Text.Trim();
modifypwd.MdiParent=this;
modifypwd.Show();
}
主界面运行时,单击“重新登录”菜单项,即显示Login.cs界面。
代码如下:
privatevoid重新登录ToolStripMenuItem_Click(objectsender,EventArgse)
{
((System.Windows.Forms.Form)this.Tag).Visible=true;
this.Close();
}
主界面运行时,单击“添加宿舍”菜单项,即显示addDorm.cs界面。
代码如下:
privatevoid添加宿舍ToolStripMenuItem_Click(objectsender,EventArgse)
{
addDormadForm=newaddDorm();
adForm.MdiParent=this;
adForm.Show();
}
主界面运行时,单击“查询宿舍”菜单项,即显示browseDorm.cs界面。
代码如下:
privatevoid查询宿舍ToolStripMenuItem_Click(objectsender,EventArgse)
{
browseDormbdForm=newbrowseDorm();
bdForm.MdiParent=this;
bdForm.Show();
}
主界面运行时,单击“添加学生”菜单项,即显示addstudent.cs界面。
代码如下:
privatevoid添加学生ToolStripMenuItem_Click(objectsender,EventArgse)
{
addStudentasForm=newaddStudent();
asForm.MdiParent=this;
asForm.Show();
}
主界面运行时,单击“查询学生”菜单项,即显示browseStd.cs界面。
代码如下:
privatevoid查询学生ToolStripMenuItem_Click(objectsender,EventArgse)
{
browseStdbsForm=newbrowseStd();
bsForm.MdiParent=this;
bsForm.Show();
}
主界面运行时,单击“添加检查”菜单项,即显示addCheck.cs界面。
代码如下:
privatevoid添加检查ToolStripMenuItem_Click(objectsender,EventArgse)
{
addCheckacForm=newaddCheck();
acForm.MdiParent=this;
acForm.Show();
}
主界面运行时,单击“查询检查”菜单项,即显示browseCheck.cs界面。
代码如下:
privatevoid查询检查ToolStripMenuItem_Click(objectsender,EventArgse)
{
browseCheckbcForm=newbrowseCheck();
bcForm.MdiParent=this;
bcForm.Show();
}
主界面运行时,单击“添加收费”菜单项,即显示addCharge.cs界面。
代码如下:
privatevoid添加收费ToolStripMenuItem_Click(objectsender,EventArgse)
{
addChargeacForm=newaddCharge();
acForm.MdiParent=this;
acForm.Show();
}
主界面运行时,单击“查询收费”菜单项,即显示browseCharge.cs界面。
代码如下:
privatevoid查询收费ToolStripMenuItem_Click(objectsender,EventArgse)
{
browseChargebcForm=newbrowseCharge();
bcForm.MdiParent=this;
bcForm.Show();
}
主界面运行时,单击“添加报修”菜单项,即显示addRepair.cs界面。
代码如下:
privatevoid添加报修ToolStripMenuItem_Click(objectsender,EventArgse)
{
addRepairarForm=newaddRepair();
arForm.MdiParent=this;
arForm.Show();
}
主界面运行时,单击“查询报修”菜单项,即显示browseRepair.cs界面。
代码如下:
privatevoid查询保修ToolStripMenuItem_Click(objectsender,EventArgse)
{
browseRepairbrForm=newbrowseRepair();
brForm.MdiParent=this;
brForm.Show();
}
主界面运行时,单击“添加登记”菜单项,即显示addsRegister.cs界面。
代码如下:
privatevoid添加来访ToolStripMenuItem_Click(objectsender,EventArgse)
{
addRegisterarForm=newaddRegister();
arForm.MdiParent=this;
arForm.Show();
}
主界面运行时,单击“查询登记”菜单项,即显示browseRegister.cs界面。
代码如下:
privatevoid查询来访ToolStripMenuItem_Click(objectsender,EventArgse)
{
browseRegisterbrForm=newbrowseRegister();
brForm.MdiParent=this;
brForm.Show();
}
系统管理功能的设计
1、添加用户功能的实现
在主界面中选择“系统管理”→“添加用户”命令菜单,即可进入添加用户界面adduser.cs,如图所示。
在该界面中可以建立新的用户。
单击“添加”按钮,如果用户信息输入完整并且用户名成不重复
则显示添加成功,否则添加失败。
(1)运行界面,如图所示。
(3)功能与代码。
单击“添加”按钮:
需要判断信息是否输入完整,用户名是否已经存在,还要判断两次密码的输入是否一致。
代码如下:
privatevoidbtnAdd_Click(objectsender,EventArgse)
{
if((txtname.Text.Trim()=="")||(txtpwd.Text.Trim()=="")||(txtpwd2.Text.Trim()==""))
MessageBox.Show("请输入完整信息","提示");
else
{
if(txtpwd.Text.Trim()!
=txtpwd2.Text.Trim())
MessageBox.Show("两次密码输入不一致","提示");
else
{
SqlConnectioncon=newSqlConnection(dbConnection.connection);
SqlCommandcom=newSqlCommand("",con);
com.CommandText="select*fromuserinfowhereuname='"+txtname.Text+"'";
con.Open();
if(com.ExecuteScalar()==null)
{
com.CommandText="insertintouserinfovalues('"+txtname.Text.Trim()+"','"+txtpwd2.Text.Trim()+"')";
com.ExecuteNonQuery();
txtname.Text="";
txtpwd.Text="";
txtpwd2.Text="";
MessageBox.Show("添加用户成功","提示");
}
else
{
MessageBox.Show("用户名重复","提示");
}
con.Close();
}
}
}
2、修改密码功能的实现
在主界面中选择“系统管理”→“修改密码”命令菜单,即可进入添加用户界面modifypWD.cs,如图所示。
单击“确定”按钮,如果密码正确并且新密码与确认密码相同,则显示修改成功,否则修改
失败。
(1)运行界面,如图所示。
(2)功能与代码。
初始化:
在运行修改密码的界面时,用户名中应该显示当前用户的用户名信息,这就是从状态栏中传递guolde当前登录的用户名。
代码如下:
privatevoidmodifyPWD_Load(objectsender,EventArgse)
{
txtname.Text=this.Tag.ToString();
}
单击“确定”按钮:
需要判断输入密码是否与用户名匹配,如果匹配,再判断新密码和确认密码是否相同,如相同则修改密码成功,如果不相同则提示信息;如果输入的密码与用户名不匹配,则
提示出错信息。
代码如下:
privatevoidbtnmodify_Click(objectsender,EventArgse)
{
if(txtname.Text.Trim()==""||txtpwd.Text.Trim()==""||txtnewpwd2.Text.Trim()=="")
MessageBox.Show("请填写完整信息","提示");
else
{
SqlConnectioncon=newSqlConnection(dbConnection.connection);
SqlCommandcmd=newSqlCommand("",con);
stringsql="select*fromuserinfowhereuname='"+txtname.Text.Trim()+"'andpwd='"+txtpwd.Text.Trim()+"'";
cmd.CommandText=sql;
con.Open();
if(null!
=cmd.ExecuteScalar())
{
if(txtnewpwd.Text.Trim()!
=txtnewpwd2.Text.Trim())
MessageBox.Show("两次密码输入不一致","警告");
else
{
sql="updateuserinfosetpwd='"+txtnewpwd.Text.Trim()+"'whereuname='"+txtname.Text.Trim()+"'";
cmd.CommandText=sql;
cmd.ExecuteNonQuery();
MessageBox.Show("密码修改成功","提示");
this.Close();
}
}
else
MessageBox.Show("原始密码错误","提示");
con.Close();
}
}
宿舍管理功能模块的设计
在主界面中选择“宿舍管理”→“添加宿舍”命令菜单或者但经济工具栏上的按钮,即可进入添加宿舍界面addDorm.cs,如图所示。
用户可以在这个窗体中设置宿舍基本信息。
单击“确定”
按钮,如果宿舍信息输入完整并且宿舍号不重复则显示添加成功,否则添加失败。
在添加宿舍时,必须要填入以下信息:
宿舍号,床位