2C#课程设计宿舍管理信息系统.docx

上传人:b****6 文档编号:3729400 上传时间:2022-11-25 格式:DOCX 页数:41 大小:566.32KB
下载 相关 举报
2C#课程设计宿舍管理信息系统.docx_第1页
第1页 / 共41页
2C#课程设计宿舍管理信息系统.docx_第2页
第2页 / 共41页
2C#课程设计宿舍管理信息系统.docx_第3页
第3页 / 共41页
2C#课程设计宿舍管理信息系统.docx_第4页
第4页 / 共41页
2C#课程设计宿舍管理信息系统.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

2C#课程设计宿舍管理信息系统.docx

《2C#课程设计宿舍管理信息系统.docx》由会员分享,可在线阅读,更多相关《2C#课程设计宿舍管理信息系统.docx(41页珍藏版)》请在冰豆网上搜索。

2C#课程设计宿舍管理信息系统.docx

2C#课程设计宿舍管理信息系统

吉林工程技术师范学院

信息工程学院

 

《.net程序设计基础》

课程设计报告

 

题目:

宿舍管理信息系统

专业:

软件工程

班级:

R1142

姓名:

郑佩

学号:

04

指导教师:

刘明杨宇晶

时间:

2014年4月21日

摘要

高校学生宿舍管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于后台数据库的建立和维护要求建立起数据一致性和完整性强、数据安全性好的库。

而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友好、使用简单方便等特点。

我们使用Mricosofe公司的VisualStudio2008和SQLServer2000数据库为开发工具,ADO.NET对象被分为两大类,一类是与数据库直接连接的联机对象(称为.NETDataProvider),其中包含了Command对象、DataReader对象以及DataAdapter对象等,通过该类对象,可以在应用程序内完成连接数据源以及数据维护等相关操作;另一类则是与数据源无关的断线对象,例如,DataSet对象以及DataRelation对象等。

用户可以利用连接对象取得数据源所需的原始数据,并且利用断线对象,一次返回给前端用户,前端用户在处理变动数据的过程中,并不需要保持与数据库连接,当对所有数据完成变动操作之后,则再一次通过连接对象将数据返回到数据库。

因为不需要时时保持与数据库的连接,所以能够极大的降低系统资源的消耗。

 

关键词:

高校学生宿舍管理系统VS2008SQL2000

 

一、课程设计的目的

在现代的高校宿舍管理工作中,由于高校扩招,学生人数巨增,传统的管理方法已经不能适合高校宿舍管理的需求,以前使用的管理系统有一些落后,随着学生人数的不断增加,该系统在数据管理方面有一些混乱,越来越不能适应管理的需求,因此需要一个功能更完善,操作更方便,容量更大的管理信息系统。

因此宿舍管理信息系统是各大高校所需要使用的一个管理系统。

本系统后台数据库采用MicrosoftAccess,前台采用VisualC#作为主要开发工具。

采用ADO技术连接数据库,完成对数据库的一系列操作。

该小型数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。

这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。

本系统具有运行速度快、安全性高、稳定性好的优点,并且具备完善的报表生成、修改功能,能够快速的查询学校所需的住宿信息。

二.系统需求

2.1功能需求

2.1.1基本功能需求

通过对用户需求和系统设计思想的分析,可以得出该宿舍管理系统大致可以分为几个大的模块?

宿舍基本信息模块、学生入住模块、卫生检查模块、水电收费模块、房屋报修模块、外来人员登记模块。

1,宿舍基本信息模块

添加、修改、查询删除宿舍基本信息,如宿舍房号、财产、床位等。

2,学生入住模块

添加、修改、查询删除学生入住、退宿信息,包括学生一些基本信息、缴费等。

3,卫生检查模块

对宿舍卫生检查、评比、统计等。

4,水电收费模块

对超出规定部分的水电收费管理。

5,房屋报修模块

对报修情况的登记、时间安排、修理结构检查等。

6,外来人员登记模块

对来访人员的登记、管理等。

2.1.2报表需求

学生宿舍管理系统的某些信息应当能够以报表形式打印出来。

基本上应该能够实现学生基本信息的报表打印、某宿舍具体住宿情况的报表打印、以及某栋宿舍楼的所有学生信息打印等的功能。

2.1.3用户界面需求

学生宿舍管理系统应提供简单、层次关系明了、清晰的操作界面,使用户一目了然。

尽可能的为用户的录入、查询等功能操作提供方便。

快捷按钮的创建也是非常需要的,以方便用户操作。

2.2性能需求

2.2.1系统安全性

对于系统为方便学校管理学生宿舍而开发,便于统一管理,设一个超级用户,及几个普通用户(便于输入相关信息)。

在登录时,使用用户验证控件,来确认用户是否为合法用户,以保证信息安全。

2.3数据库选择

由于用到的数据表格多,另外考虑到实际情况,学生基本信息的变动,还有员工信息的多少的变化,我们选用MicrosoftAccess。

降低了程序对硬件操作系统版本的要求。

并且Access数据库操作方便,配置简单,只需要把数据库文件放置到合适的目录下即可。

2.4环境

本系统后台数据库采用MicrosoftAccess,前台采用VisualC#作为主要开发工具。

采用ADO技术连接数据库,完成对数据库的一系列。

三.系统设计

3.1系统设计思想

系统设计主要由系统功能划分、系统环境配置、子系统与模块的处理流程设计、大麻设计、输入输出界面设计、数据存储设计等阶段构成,最终形成实施方案。

学生宿舍管理的主要工作是学校宿舍基本信息的录入;为学生分、退宿舍和交费;宿舍卫生检查;水电费的收取;宿舍、学生的查询以及对来访人员的登记。

宿舍分配的过程是:

新生入学之前,每个园区将接到安排在校园去住宿的同学名单,并根据学生基本信息按约定的分配原则给每个学生初定宿舍床位。

一般的分配原则是:

统一学院的学生应分配在同一栋楼,同一个班级的学生应分配在房号连续的寝室。

当学生报到后,宿舍管理员根据住宿分配情况开出需支付的住宿费清单给学生,学商道财务处交费后方可入住。

宿舍分配结束后,宿舍管理员对学生住房情况、房产信息进行维护、查询、管理、统计。

3.2系统功能模块设计

通过对用户需求和系统设计思想的分析,可以得出该宿舍管理信息系统大致可以分为几个大模块:

宿舍基本信息模块、学生入住模块、卫生检查模块、水电收费模块、房屋报修模块、外来人员登记模块。

(1)宿舍基本信息模块

添加、修改、查询删除宿舍基本信息,如宿舍房号、财产、床位等。

(2)学生入住模块

添加、修改、查询删除学生入住、退宿信息,包括学生一些基本信息、缴费等。

(3) 卫生检查模块

对宿舍卫生检查、评比、统计等。

(4)水电收费模块

对超出规定部分的水电收费管理。

(5)房屋报修模块

对报修情况的登记、时间安排、修理结构检查等。

(6)外来人员登记模块

对来访人员的登记、管理等。

宿舍管理信息系统的系统功能结构土如2.1所示。

新建用户

修改密码

重新登录

系统管理

添加宿舍

修改宿舍

查询宿舍

宿舍基本信息

删除宿舍

宿舍管理信息系统

添加学生

查询学生

学生入住

删除学生

修改学生

添加检查

查询检查

卫生检查

添加收费

水电收费

查询收费

房屋报修

添加报修

查询报修

添加登记

外来人员登记

查询登记

图3.1 系统功能模块图

3.3数据库设计

数据库是管理系统的核心和基础,一个管理系统的功能是否健全,关键在于数据库的设计,只有对数据库进行合理的设计,才能开发出完善而有效的管理系统。

根据数据管理信息系统的功能要求和数据类图分析,该系统的数据库名称为dormMIS,数据库中包括:

1,宿舍信息表(dorm);2,学生信息表(student);3,卫生检查信息表(checkinfo);4,水电收费信息表(charge);5,房屋白修信息表(repair);6,外来人员登记表(refister);7,用户信息表(userinfo)。

下面列出各个表的数据结构,如表2.1~2.7所示。

表3.1   宿舍信息表(dorm)

字段名

数据类型

描述

DormID

文本

宿舍号(主键)

Phone

文本

电话

DMoney

文本

住宿费

bedNum

数字

床位数

chairNum

数字

椅子数

deskNum

数字

桌子数

DRemark

文本

备注

表3.2 学生信息表(Student)的数据结构

字段名

数据类型

描述

SID

文本

学号(主键)

SName

文本

姓名

SSex

文本

性别

class

文本

班级

dormID

文本

宿舍号

表3.3 卫生检查信息表(checkinfo)的数据结构

字段名

数据类型

描述

CheckID

自动编号

检查编号(主键)

dormID

文本

宿舍号

CDate

日期/时间

检查日期

CState

文本

检查情况

CRemark

文本

备注

表3.4 水电收费信息表(charge)的数据结构

字段名

数据类型

描述

ChargeID

自动编号

收费编号(主键)

dormID

文本

宿舍号

MDate

日期/时间

收费日期

EBuy

文本

购买点亮

CPerson

文本

缴费人

CMoney

文本

电费

表3.5 房屋报修信息表(Hrepair)的数据结构

字段名

数据类型

描述

RepairID

自动编号

收费编号(主键)

dormID

文本

宿舍号

DateIn

日期/时间

报修日期

DateRepair

日期/时间

修理日期

Person

文本

报修人

Repair

文本

修理情况

 

表3.6外来人员登记信息表(register)的数据结构

字段名

数据类型

描述

RegisterID

自动编号

收费编号(主键)

PCome

文本

来访人姓名

DateCome

日期/时间

来访日期

PLook

文本

被访人姓名

DormID

文本

宿舍号

DateLeave

日期/时间

离开日期

Remark

文本

备注

表3.7用户信息表(userinfo)的数据结构

字段名

数据类型

描述

UName

文本

用户名

PWD

文本

密码

 

表与表之间的关系,如图3-2所示。

Check

图3.2表与表之间的联系

四、系统实现

4.1登录界面编码

系统登录主要用于对登录系统的用户进行安全性检查,防止非法用户登录系统。

判断用户名和密码与数据库中的用户名和密码是否相同,如果相同则允许登录,否则不允许登录。

代码见附录。

运行结果如下图:

4.2主界面编码

主界面中菜单栏的部分菜单功能代码如附录所示。

运行结果如下图:

4.3系统管理编码

4.3.1新建用户的编码

单击【确定】按钮时需要判断信息是否输入完整,用户名是否已经存在,并且还要判断两次密码的输入是否一致。

该部分代码如例程3-5所示,见附录。

运行结果如下图:

4.3.2修改密码的编码

在修改前首先要得到从statusBar传递过来的当前登录用户名,这样就使用户只能修改自己的密码。

代码如例程3-6所示。

运行结果如下图:

4.4宿舍管理编码

4.4.1宿舍添加的编码

在宿舍添加界面中单击【确定】按钮后,把宿舍信息保存到数据库中,代码如例程3-7所示。

并在添加完成后,把所有空间置空。

运行结果如下图:

4.4.2宿舍查询的编码

单击【查询】按钮的代码后,如果没有查询条件则返回的是所有的宿舍数据。

代码如例程4-8所示。

【删除】按钮的代码如例程4-9所示,在这里首先要判断学生信息表中有没有该宿舍的学生信息,如果有则不能删除,反正则可以删除。

单击【修改】按钮,首先进入修改界面,修改信息后,单击【确定】按钮修改成功。

代码如例程4-10所示。

运行结果如下图:

4.5学生管理编码

4.5.1学生入住的编码

在学生入住界面中单击【确定】按钮后,把学生信息保存到数据库中,代码如例程3-11所示。

在输入宿舍号后首先判断宿舍信息表中有没有该宿舍,如果没有在重新输入;并且要判断该宿舍是否已满,如果已满则不能入住。

并在添加完成后,把所有空间置空。

运行结果如下图:

4.5.2学生查询的编码

单击【查询】按钮后,如果没有查询条件则返回的是所有的宿舍数据。

代码如例程4-12所示。

运行结果如下图:

单击【退宿】按钮,则该学生从该宿舍中退宿,【退宿】按钮的代码如例程4-13所示。

运行结果如下图:

单击【修改】按钮,首先进入修改界面,修改信息后,单击【确定】按钮,判断宿舍号是否存在,如果存在则修改成功,否则修改失败。

代码如例程4-14所示。

运行结果如下图:

 

五、系统测试

5.1数据库连接

本系统采用Access文件数据库,降低了程序对硬件操作系统版本的要求。

并且Access数据库操作方便,配置简单,只需要把数据库文件放置到合适的目录下即可。

在本系统中,数据库文件放置的目录是光盘CH10\DormMIS\DormMIS\bin\Debug\dormMIS.mdb。

在程序中专门设计了连接字符串模块database\dbConnection.cs,代码如例程1.1所示。

并且在程序中设置变量调用这个连接,代码如例程2.2所示。

例程1.1:

UsingSystem;

NamespaceDormMIS.database

{\\\

\\\dbConnection的摘要说明。

\\\

pubicclassdbConnection()

{

Pubicstaticstringconnection

{get{return”DataSource=dormMIS.mdb;JetOLEDB:

EngineType=5;Provider=Microsoft.Jet.OLEDB.4.0;”;}}}}

例程2.2:

PrivateOleDbConnection(DormMIS.database.dbConnection.connection);

5.2系统管理设计

在主界面中选择【系统管理】|【添加用户】命令菜单,即可进入添加用户界面,如图2.4所示。

在该界面可以建立新的用户。

单击【确定】按钮,如果用户信息输入完整并且用户名称不重复则显示添加成功,否则添加失败。

例程2.3

PrivateSystem.Windows.Forms.TextboxtextPWDNEW;//密码确认文本框

PrivateSystem.Windows.Forms.TextBoxtextPassword;//密码文本框

PrivateSystem.Windows.Forms.TextBoxtextName;//用户名文本框

PrivateSystem.Windows.Forms.ButtonbtClose;//取消按钮

PrivateSystem.Windows.Forms.ButtonbtAdd;//添加按钮

图3.3修改密码界面

图3.4添加用户界面

在主界面中选择【系统管理】|【修改密码】命令菜单,即可进入修改密码界面,如图2.3所示。

单击【确定】按钮,如果密码正确并且新密码与确认密码相同,则显示修改成功,否则修改失败。

例程2.4

PrivateSystem.Windows.Forms.TextBoxtextPWDNew;//新密码文本框

PrivateSystem.Windows.Forms.TextBoxtextPWD2;//新密码确认文本框

PrivateSystem.Windows.Forms.TextxBoxtextPWD;//原密码文本框

PrivateSystem.Windows.Forms.TextBoxtextName;//用户名文本框

PrivateSystem.Windows.Forms.ButtonbtClose;//退出按钮

PrivateSystem.Windows.Forms.ButtonbtSave;//确认按钮

5.3宿舍管理设计

在主界面中选择【宿舍基本信息】|【添加宿舍】命令菜单或者单击工具栏上的

【宿舍】按钮,即可进入减价宿舍界面,如图2.5所示。

用户可以在这个窗体中设置宿舍基本信息。

单击【确定】按钮,如果宿舍信息输入完整并且宿舍号不重复则显示添加成功,否则添加失败。

图3.5添加宿舍界面

例程2.5

PrivateSystem.Windows.Forms.TextBoxtextphone;//电话本文本框

PrivateSystem.Windows.Forms.TextBoxtextDormID;//宿舍号文本框

PrivateSystem.Windows.Forms.TextxBoxtextBed;//床位数文本框

PrivateSystem.Windows.Forms.TextBoxtextDesk;//桌子数文本框

PrivateSystem.Windows.Forms.TextBoxtextChair;//椅子数文本框

PrivateSystem.Windows.Forms.TextxBoxtextRemark;//备注文本框

PrivateSystem.Windows.Forms.TextBoxtextMoney;//住宿费文本框

PrivateSystem.Windows.Forms.ButtonbtClose;//取消按钮

PrivateSystem.Windows.Forms.ButtonbtAdd;//确认按钮

选择【宿舍基本信息】|【查询宿舍】命令菜单,即可进入查询界面,如图3.6所示。

在该界面中可以查询所有的宿舍信息,也可以根据输入的宿舍号进行精确查询。

图3.6查询宿舍界面

例程3.6

……

PrivateSystem.Windows.Forms.DataGriddataGridl;//显示查询数据

PrivateSystem.Windows.Forms.ButtonbtDel;//删除按钮

……

该界面中如果宿舍号为空,怎查询到的数据就是所有的宿舍信息;如果不为空则是根据输入的宿舍号查询道德数据。

选择查询到的一条数据后单击【修改】按钮,进入就该宿舍界面,如图2.7所示;单击【删除】按钮则把那条数据删除。

图3.7修改宿舍界面

3.2.4学生管理设计

在主界面中选择【学生入住】|【学生入住】命令菜单或者单击工具栏上的入住按钮,即可进入学生入住界面,如图2.8所示。

用户可以在这个窗体中设置学生基本信息。

单击【确定】按钮,如果学生信息输入完整,学号不重复并且该宿舍没有注满则显示添加成功,否则失败。

图3.8学生入住界面

privateSystem.Windows.Forms.TextBoxtextDormID;//宿舍号文本框

privateSystem.Windows.Forms.ButtonbtClose;//取消按钮

privateSystem.Windows.Forms.ButtonbtSure;//确定按钮

privateSystem.Windows.Forms.TextBoxtextName;//姓名文本框

privateSystem.Windows.Forms.TextBoxtextClass;//班级文本框

privateSystem.Windows.Forms.TextBoxtextSID;//学号文本框

privateSystem.Windows.Forms.ComboBoxcomboSex;//性别下拉框

选择【学生入住】|【学生查询】命令菜单,即可进入查询学生界面,如图3.9所示。

图3.9查询学生界面

…………

该界面中如果所有文本框为空,则查询到的数据就是所有的学生信息;如果不为空则是根据输入的查询条件查询到的学生数据。

选择查询到的一条数据后单击【修改】按钮,进入修改界面,如图3.10所示;单击【删除】按钮则把那条数据删除。

图3.10修改学生界面

…………

六.总结与体会

总结:

通过这次课程设计,我对很多函数有了新的认识,也学会了运用多种函数,我也明白了写软件的基本过程和基本方法。

写软件的过程中我又学到了曾经自己不知道的函数或是自己不会的函数的用法。

特别是文件的开启和关闭,读与写。

这次课程设计课总的来说让我受益匪浅。

参考文献

【1】段德亮余健张仁才C#课程设计案例精编。

北京:

清华大学

【2】周靖JohnSharpVisualC#2005从入门到精选。

北京:

清华大学

【3】刘培文耿小芬SQLServer2000数据库原理及应用教程北京:

科海电子

附录

1.登录界面部分代码

staticvoidMain()

{

Application.Run(newLogin());

}

privatevoidbtAdd_Click(objectsender,System.EventArgse)

{

if(name.Text.Trim()==""||password.Text.Trim()=="")

MessageBox.Show("请输入用户名和密码","提示");

else

{

oleConnection1.Open();

OleDbCommandcmd=newOleDbCommand("",oleConnection1);

stringsql="select*fromuserinfowhereUName='"+name.Text.Trim()+"'andPWD='"+password.Text.Trim()+"'";

cmd.CommandText=sql;

if(null!

=cmd.ExecuteScalar())

{

//隐藏登录窗口

this.Visible=false;

//创建并打开主界面

Mainmain=newMain();

main.Tag=this.FindForm();

OleDbDataReaderdr;

cmd.CommandText=sql;

dr=cmd.ExecuteReader();

dr.Read();

main.statusBarPanel2.Text=name.Text.Trim();

main.ShowDialog();

}

else

MessageBox.Show("用户名或密码错误","警告");

}

oleConnection1.Close();

}

privatevoidbtClose_Click(objectsender,System.EventArgse)

{

this.Close();

}

 

例程4-2部分菜单功能代码

AddUseraddUser;

privatevoidmenuItem9_Click(objectsender,System.EventArgse)

{

addUser=newAddUser();

for(intx=0;x

{

FormtempChild=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1