2024年4月12日发(作者:)

学生宿舍管理系统的设计

摘 要

学生宿舍管理是当代学校中不可或缺的组成部分,在信息化飞速发展的今天,它的出

现已经成了一种必然,本文将从宿舍管理系统的历史和现状进行分析,以求证本系统的设

计具有实际的意义,并得到它在未来的发展,从而跟上时代的脚步,做出一个高质量的、

安全性好的宿舍管理系统,使其不仅能满足学校现在的需要,也能满足将来一段时间的需

要。

学生宿舍管理系统的开发主要包括前台用户界面的开发和后台数据库的开发,对于后

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

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

方便等特点。本系统采用C#和作为前台用户界面的开发语言,而后台的数据库采

用微软的SQL Server 2005。

关键词:宿舍管理系统,功能,住宿。

- 1 -

目录

目录 ........................................................................................................................................................................................ - 2 -

第一章 系统需求分析 ......................................................................................................................................................... - 3 -

1.1功能需求.................................................................................................................................................................. - 3 -

1.1.1 基本功能需求 .............................................................................................................................................. - 3 -

1.1.2 报表需求 ...................................................................................................................................................... - 4 -

1.1.3 用户界面需求 .............................................................................................................................................. - 4 -

1.2 性能需求................................................................................................................................................................. - 4 -

1.2.1系统安全性 ................................................................................................................................................... - 4 -

1.3 数据库选择 ............................................................................................................................................................. - 4 -

1.4 环境 ........................................................................................................................................................................ - 5 -

第二章 需求分析 ................................................................................................................................................................... - 6 -

2.1 数据库分析 ............................................................................................................................................................. - 6 -

2.1.1 数据库实体关系 .......................................................................................................................................... - 6 -

2.1.2 E-R图 ........................................................................................................................................................... - 7 -

2.2 系统模块分析 ......................................................................................................................................................... - 8 -

第三章 系统详细分析 ......................................................................................................................................................... - 10 -

3.1 系统表................................................................................................................................................................... - 10 -

3.2 系统管理模块 ....................................................................................................................................................... - 15 -

3.2.1 用户登录模块 ............................................................................................................................................ - 15 -

3.2.2 宿舍住宿信息 ............................................................................................................................................ - 17 -

3.2.3 公寓评定管理 ............................................................................................................................................ - 24 -

3.2.4 公寓基本信息 ............................................................................................................................................ - 25 -

3.3 后台管理............................................................................................................................................................... - 28 -

3.3.1 用户管理 .................................................................................................................................................... - 28 -

3.3.2 公寓信息 .................................................................................................................................................... - 30 -

3.3.3 每日检查 .................................................................................................................................................... - 33 -

3.3.4 基本设置 .................................................................................................................................................... - 35 -

致谢 ...................................................................................................................................................................................... - 36 -

参考文献............................................................................................................................................................................... - 37 -

- 2 -

第一章 系统需求分析

目前,我们学校的宿舍管理采用的还是最低级人工来进行管理的, 面对目前学校发展

的实际状况,我通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

1.1功能需求

1.1.1 基本功能需求

本课题要实现的是高校学生宿舍管理系统,在设计该系统时,应尽可能的贴近学生,便

于用户操作。系统在实现上应该具有如下功能:

1.系统要求用户必须输入正确的用户名和密码才能进入系统。

2.系统应该提供学生住宿情况的基本登记以及学生离校的基本设置。

3.系统应提供学生在校期间物品出入宿舍楼的详细情况登记。

4.系统应提供查询功能,以方便用户对学生基本信息的查询(要实现按多种条件的查询)

及楼房信息的查询。

5.系统应提供增加、删除、修改用户帐户的功能。

6.系统还应具有添加、修改、删除学生基本信息的功能。

7.系统应具有对学生夜宿情况的登记查询,卫生情况的登记与查看。

- 3 -

1.1.2 报表需求

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

生基本信息的报表打印、某宿舍具体住宿情况的报表打印、某栋宿舍楼的所有学生信息打

印、、及学生物品出入的信息打印等的功能。

1.1.3 用户界面需求

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

尽可能的为用户的录入、查询等功能操作提供方便。快捷按钮的创建也是非常需要的,以

方便用户操作。

1.2 性能需求

1.2.1系统安全性

对于系统为方便学校管理学生宿舍而开发,便于统一管理,设一个超级用户,及几个

普通用户(便于输入相关信息)。在登录时,使用用户验证控件,来确认用户是否为合法用

户,以保证信息安全。

1.3 数据库选择

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

的多少的变化,我们选用SQL Server 2005 作为数据库开发,而不用Access,主要是因为

Access存放的记录,在实际运用中容易出错,导致相关信息丢失故不适合此系统;而SQL

Server 2005是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户,

- 4 -

故选用SQL Server 2005数据库。

1.4 环境

本系统是以Windows系统为操作平台,用C#编程语言和 .Net 框架、 Web

Application 服务和SQL Server 2005数据库来实现高校学生宿舍管理系统所需功能的。

- 5 -

第二章 需求分析

2.1 数据库分析

2.1.1 数据库实体关系

本系统涉及的实体有:管理员,寝室,宿舍楼,学生,床铺,楼层,班级,系部。

宿舍与学生之间E—R图,如图2-1所示:

图2-1

管理员与宿舍楼之间E-R图,如图2-2所示:

图2-2

学生床铺之间E-R图,如图2-3所示:

- 6 -

图 2-3

宿舍楼与楼层之间的关系,如图2-4所示:

图 2-4

系部与班级的关系,如图2-5所示:

图 2-5

2.1.2 E-R图

E-R图是一种信息模型图,体现了系统实体之间的关系。通过系统需求分析,析各实

体之间的联系。经过分析两两实体之间的联系,然后进行合并优化,给出所有实体的联系

图即E-R图,即得到系统E-R图,如图2-6所示:

- 7 -

图2-6系统E—R图

2.2 系统模块分析

本系统涉及的主要数据项有:管理员用户,用户,班级信息,系信息,寝室信息,寝

室损坏信息,专业信息,查夜信息,查卫生信息。

(1)管理员用户=编号+管理员名+管理员密码+访问人数;

(2)学生(室员/寝室长)=用户ID+姓名+班级+系+专业+密码+性别+生日+

+指导老师+身份+入学日期+电话+家庭住址;

(3)查夜信息=编号+查夜时间+查房人员+床铺号;

(4)床铺=床铺号+宿舍号+状态+床铺名

(5)寝室=寝室号+寝室类型+寝室楼+寝室号+寝室人数+寝室电话+寝室分数;

(6)查卫生=编号 +查访名+寝室楼号+寝室类型+分数+时间;

- 8 -

(7)系=编号+系名;

(8)专业=编号+专业名。

- 9 -

第三章 系统详细分析

3.1 系统表

系统所需的表为用户表,学生表,住宿表,宿舍楼表,楼层表,宿舍表,床铺表,班

级表,调换宿舍表,系表,查宿舍表,查卫生表,物品出入表,访问表。

表3-1 用户表

表3-2 住宿表

表3-3 宿舍楼表

- 10 -

表3-4 楼层表

表3-5 宿舍表

表3-6 床铺表

表3-7 班级表

- 11 -

表3-8 学生表

表3-9 查卫生表

表3-10 夜间查房表

- 12 -

表3-11 系表

表3-12 宿舍调整表

表3-13 物品出入表

表3-14 来访表

- 13 -

- 14 -

3.2 系统管理模块

3.2.1 用户登录模块

模块包括:用户登录,用户添加,用户密码修改等

图3-15 用户登录页面

(1)用户登录是根据角色来登录的,当角色是admin时,跳转到管理员页面,当用

户为其他时,跳转到用户页面。

部分代码:Session["CurrentPageUrl"] =

dQuery;

DataTable dtUser = tTable(());

if ( > 0)

{

- 15 -

Session["UserName"] = ();

user = el(Session["UserName"].ToString());

if ( == "Admin")

{

ct("Admin/");

}

if ( == "User")

{

string url = Session["CurrentPageUrl"].ToString();

ct("");

}

if ( == "Student")

{

- 16 -

string url = Session["CurrentPageUrl"].ToString();

ct("");

}

(2)添加角色:是把他加入到Users 表中,给它设置权限。

3.2.2 宿舍住宿信息

宿舍住宿信息包括:学生注册,学生入主信息填写。

(1)学生注册是填写学生的基本信息,是为了宿舍的方便管理

- 17 -

图 3.15 新生注册页面

学生注册是调用ts中的Add方法进行插入的,其中入学时间应用到了ajax

空间,还有datagridview 的绑定。

关键代码:

eDay = ( ());

以及

urce = tTable(());

nd();

(2)学生入住登记是先从学生表中找到这个学生,如果他存在,而且也没分配宿舍呢,

就选择他进行插入。

- 18 -

图 3.16 学生入住页面

说明:首先,是选择是根据姓名还是学号查询这个学生的信息,然后确定是否分配宿

舍,如若没有就点击选择按钮,把它插入到下列文本框中,在选择宿舍,这其中用到了 联

动 的效果。

查询关键代码:

if (dName == "Select")

{

stuMode =

- 19 -

el(ng());

= tID;

= tName;

= ame;

bool sex = ;

if (sex)

{

= "男";

}

else

{

= "女";

}

- 20 -

}

根据姓名查询:

if (edValue == "StudentName")

{

DataTable arrangeRoom =

tTableByName(());

if ( > 0)

{

e = true;

urce =

tTableByName(());

nd();

urce =

tTableByName(());

nd();

- 21 -

}

else

{

urce =

tTableByName(());

nd();

}

}

联动代码:

protected void ddlBuildingID_SelectedIndexChanged(object sender,

EventArgs e)

{

urce =

tTable(edValue);

xtField = "FloorName";

- 22 -

lueField = "FloorID";

nd();

}

protected void ddlFloor_SelectedIndexChanged(object sender, EventArgs

e)

{

urce =

tTable(edValue);

xtField = "DormID";

lueField = "DormID";

nd();

}

protected void ddlDromID_SelectedIndexChanged(object sender,

EventArgs e)

- 23 -

{

urce = tTable(edValue);

xtField = "BedName";

lueField = "BedID";

nd();

}

3.2.3 公寓评定管理

公寓评定管理包括:夜间查房查看和卫生查询查看以及专项管理查看。

(1)夜间查房查看:是根据是根据宿舍编号查看的。

图 3.17 查夜查看页面

- 24 -

(2)卫生成绩查看:是根据宿舍编号查看的,查看这个宿舍的 每天的卫生情况。

图 3.18 卫生情况查看页面

(3)专项检查查询:是定期时间对每个宿舍的电器什么的检查,检查是否有违禁电器

的使用。

3.2.4 公寓基本信息

公寓基本信息包括:公寓楼基本信息查看,房源基本信息的查看以及床铺基本信息的查

看。

(1) 公寓楼的基本信息:是根据公寓楼编号查看公寓楼的基本信息看看它是否注满还

有几个空房间等。

(2) 房源基本信息:是根据宿舍编号查看房间的信息以及房间是否注满。

- 25 -

图 3.19 查看床铺页面

(3) 床铺基本信息:是根据宿舍编号查看空床铺情况,根据床铺好查询空床铺,根据

床铺号查看搜有空床铺。若查出床铺以分配就把它显示出来。

关键代码:

if (edValue == "DormID")

{

urce =

tTableByDormID( ());

nd();

}

- 26 -

if (edValue == "BedNull")

{

urce = tTableByBedNull();

nd();

}

if (edValue == "InBed")

{

urce = tTableByTrue("");

nd();

DataTable dt =

tTableByBedID(());

if ( == 0)

{

e = true;

- 27 -

}

urce

=tTableByBedID(());

nd();

}

3.3 后台管理

3.3.1 用户管理

用户管理分为:新增用户,学生离校,以及修改用户信息。

(1)新增用户就是添加Users中的用户,并且给他们设置权限。

(2)学生离校是系统中重要的一个环节,学生一离校,就要把他的学生表的状态改为

False,床铺变成False,而且入住表的记录要删除。

- 28 -

图 3.20 学生离校页面

说明,首先根据学号查询出来学生是否在校,若在久把他的状态改为离校,然后点击

按钮。其中要更新学生表和床铺表中的状态(state),删除这个学生入住的信息。

关键代码:

tID = ();

= edValue;

(studentModel);

urce =

tTable(tID);

nd();

- 29 -

();

=tTable(()).Rows[0]["B

edID"].ToString();

= false;

(bedModel);

(tID);

3.3.2 公寓信息

公寓信息就是对公寓的管理,分为:新增宿舍楼、分配楼层、宿舍调整、分配宿舍等。

(1) 新增宿舍楼:若是学校新建个宿舍楼,就要添加宿舍楼了。

图 2.1 增加宿舍楼页面

说明,要输入新增的楼号(int)、电话(int)、楼长名。添加时,楼层名根据楼号自动

- 30 -

生成,楼层是固定的6层。然后就是调用Add()方法。

ngName = (()) + "号楼";

(2) 增加楼层:先输入宿舍楼号,查看是宿舍楼层信息,然后输入楼层号,添加楼层,

并且选择是男生宿舍还是女生宿舍,楼层名是在DropDownList中选择的,然后调用Add()

方法。

(3) 增加宿舍:是查看新建宿舍楼,然后输入宿舍号,选择宿舍楼号、楼层号。然后

添加。

(4) 宿舍调整:这是进行两个人的床铺调整。

图 2.2 宿舍调整页面

说明:先输入学号,查出他的床铺号txtOldbedID,然后选择要挑到的宿舍床铺位,查

出这里是否存在学生,存在就把他的学号填到txtSudentname中,然后调整。

- 31 -

关键代码:

查看是否存在要调整到的床铺的学生:

bedModel = el(edValue);

if ( == edValue)

{

if ( == true)

{ arrangeroomModel=

eByBedID(edValue);

= tID;

} else

{ = "Null";

}

}

else{ }

- 32 -

床铺表的调整以及入住表的更新代码:

tID = StudentID1;

tname = StudentName1;

= BedID2;

ame = ClassName1;

tID = StudentID2;

tname = StudentName2;

= BedID1;

ame = ClassName2;

(arrangRoomModel2);

(arrangRoomModel1);

3.3.3 每日检查

每日检查分为:夜间查房登记,卫生检查登记,专项检查登记。

- 33 -

(1) 夜间查房:就是检查每日学生在校情况。

图 2.3 夜间查房页面

说明,根据宿舍选中每个床铺学生的夜宿状态,宿舍号与床铺号用到而来联动,这里

面查房时间用到Ajax空间CalenderEntender,然后把输入的信息在GridView中显示。

(2)卫生检查:录入每日每个宿舍的卫生情况。

图 2.4 卫生检查页面

(3)专项检查:就是每周四对每个寝室的寝室情况进行检查,查看是否存在违禁电器

还有什么不好的情况。

- 34 -

3.3.4 基本设置

基本设置包括:系部设置、班级设置等。

(1) 系部设置:就是添加新的系,用到Add()方法。

(2) 班级设置:就是根据添加的系部,添加班级,有班级编号,班级名等。也一样用

到Add()方法。

- 35 -

致谢

从这次的设计中,我体会到交流的重要性,而这次知道我的老师陈林老师,每次的辅

导都深切的点到了我做系统的关键,让我对系统的功能,关系等都做到了非常深入的了解。

感谢陈林老师以及对我帮助的同学的支持,他们的知道从质、量、形式等多方面的提

点让我受益匪浅。

- 36 -

参考文献

[1]周奇.SQL Server2005 数据库基础鸡应用技术教程与实训[M].北京:北京大学出版

社,2008-1,1-349

[2]邵鹏明.C#面向对象程序设计[M].北京:清华大学出版社,2008-4,1-465

[3]金旭亮..NET2.0面向对象编程揭秘—北京:电子工业出版社,2007-6,1-633

[4]唐学韬. AJAX编程指南—北京:机械工业出版社,2008-7,1-434

- 37 -