《web系统开发学生宿舍管理系统.doc》由会员分享,可在线阅读,更多相关《web系统开发学生宿舍管理系统.doc(17页珍藏版)》请在三一办公上搜索。
1、-学生宿舍管理系统 -Web系统开发需求分析:1.背景高校学生宿舍管理系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于后台数据库的建立和维护要求建立起数据一致性和完整性强、数据平安性好的库。而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友好、使用简单方便等特点。旧的手工纪录的宿舍管理方式已经不能适应高速开展的信息化时代,新的宿舍管理系统开发出来之后,学校的现有的宿舍信息管理将有很大的改观,由过去的人工方式转变为计算机方式,由效率低、数据冗余、易产生错误转变为检索迅速、查找方便、可靠性高、存储量大。这些优点能够极大地提高效率,也是学校科学化、正规
2、化管理的重要条件。2. 目的对软件工程的全过程有感性的认识和初步的经历。熟悉对数据库和A的使用方法及B/S系统认识。编制软件、编写软件开发文档和实验报告。3.功能需求3.1系统需求:系统管理员必须先从登录界面进入系统,在登录页面输入用户名和密码,通过身份验证后,才可以进入系统的首页。如果未能通过系统的身份验证,系统自动给出登录错误的提示信息。2通过身份验证的系统管理员进入系统首页。在首页中可以通过房间编号、所在楼名和房间类型对宿舍的房间信息进展查询。可以选择相应的房间信息来更新该房间的信息。同时,还可以对房间信息进展单一的或批量的删除操作。当然,添加房间信息的功能还是必不可少的。3系统管理员能
3、够对学生进展入住宿舍信息的登记,也使用学生*、学生*、所在宿舍楼名和房间的编号对宿舍信息进展查询,并且可以对学生的换宿舍房间和退出宿舍房间进展操作。4系统管理员通过学生*、学生*和缴费类别查询学生的缴费信息,可以选择相应的缴费信息来更新。同时,还可以对学生缴费的信息进展删除操作,以及登记新的宿舍的缴费信息。5系统管理员还能够通过学生*、学生*和学生的专业查询学生的信息。同样,具有删除和修改的功能。6在系统设置的菜单中,能够设置学生的专业信息和修改登录的密码。 3.2 用户界面需求学生宿舍管理系统应提供简单、层次关系明了、清晰的操作界面,使用户一目了然。尽可能的为用户的添加、查询等功能操作提供方
4、便。3.3开发语言和开发语言本学生宿舍管理系统的用的开发环境与开发语言为Microsoft Visual Studio 2013和Microsoft SQL Server 2008.4试验容和要求完成学生宿舍管理软件的开发全过程,从分析一直到软件完成。该软件的根本需:1. 数据输入:从键盘输入各类根本信息。宿舍的根本信息:地点、位置、楼层、面积、标准人数、部设置、收费标准、类别等;班级根本信息:专业、年级、人数、辅导员、班长等;学生根本信息:年龄、性别等。2. 能对根本信息进展插入、删除、修改等操作。3. 完成宿舍的学生住宿分配,可以自动分配或手动分配。4. 数据查询:按宿舍、专业、年级、班级
5、、学生等进展分类查询,能进展准确和模糊查询5设计过程51用户要求设计一款依据大学的大学学生宿舍管理系统,要求操作简单、界面清晰明了。52系统功能模块在整体设计中,我们将宿舍管理系统分为七个大的模块:楼房管理模块、住宿管理模块、班级管理模块、房间管理模块、信息查询功能模块、数据统计功能模块和迁出记录功能模块。每个模块将实现不同的功能。各个模块包含的容如下列图示:学生宿舍管理系统数据统计迁出记录住宿管理房间管理楼房管理班级管理信息查询房间统计班级信息修改班级录入房间删除房间信息修改房间录入修改楼房删除楼房添加楼房查看*学生是否迁出查看迁出学生信息学生人数统计房间查询学生信息查询办理迁出办理人员入住
6、住宿情况查看班级删除 学生宿舍管理系统功能模块图53管理系统模块该管理系统模块包括:添加编辑、按输入信息查找编辑和全库浏览三个局部。 5.3.1 添加编辑:对数据表格进展信息添加编辑。 5.3.2 按信息查找编辑:通过输入的信息对表格进展查找,也可以对查找出来的信息进展修改和删除。 5.3.3 全库浏览:直接查看整个表格信息。 5.3 系统E-R图 入住分配宿舍宿舍号楼号面积标准人数等级收费标准层数学生*性别年龄班级所在专业年级人数辅导员班长 1NN 1 图5.2 系统ER图5.4统所需表格综和以上分析,要实现是那个面的所有功能模块,共需要设计7个表格,他们分别是:楼房根本情况表、宿舍根本情况
7、表、宿舍等级表、班级根本情况表、学生根本情况表、迁出记录表和管理员表。楼房根本信息表:详细登记学校楼房根本信息create table building/宿舍楼表(buildingid int not null primary key,/宿舍楼ID administrator varchar(10),/宿舍楼楼管 flooramount char(80),/宿舍楼层 areaamount int,/宿舍楼面积 buildingse* char(2)/性别);宿舍根本信息表:详细登记学校宿舍根本信息 create table dormitory/宿舍表 (dormitoryid int not
8、null primary key,宿舍ID buildingid int not null,/楼号ID kindid int,/宿舍等级 telephonenum int,/宿舍 dormitoryse* char(2),/宿舍性别 stayingamount int/已住人数 );宿舍等级表:记录等级信息和相关的宿舍费用create table dormitorykind/宿舍等级(kindid int not null primary key,/宿舍等级ID standardamount char(10),/标准人数 standardfee int/费用);班级根本信息表:详细登记学校班级
9、根本情况create table class/班级(classid int not null primary key,/班级号 classname varchar(10) not null,/班级名 studentamount int,/学生数目 classmoniter char(10),/班长 instructor char(10),/导员 major char(10)/专业 );学生根本信息表:详细登记学校学生根本情况create table studdent/学生表.(studentid int not null primary key,/学生* studentname varchar
10、(10) not null, /学生* buildingid int,/宿舍楼号 dormitoryid int,/房间号 bedid int,/床铺号 studentse* char(2) not null,/学生性别 studentage int,/学生年龄 stayingtime char(10),/ classid char(10),/班级 major char(10),/ telephone int,/学生 intime datetime/入住时间);迁出记录表:记录迁出出信息create table out/迁出记录表(studentid int not null primary
11、key,/学生* studentname varchar(10) not null, /学生* outtime datetime not null,/迁出时间 reason char(50)/迁出原因);管理员表:记录登陆管理员的账号和密码,create table admin/管理员表( adminname char10 not null primary key,/管理员账户名 adminpsw char(10) not null/管理员密码);六 、功能模块实现代码和运行截图:登录页:输入正确的用户与密码,进入系统。住宿情况查看:住宿情况查看功能代码:protectedvoid Butto
12、n2_Click(objectsender, EventArgs e) SqlConnection s =newSqlConnection(ConfigurationManager.ConnectionStringsConnectionString.ConnectionString); s.Open();Sqlmand scm =newSqlmand(weizhuman, s); scm.mandType =mandType.StoredProcedure;SqlParameter spa =null; spa = scm.Parameters.Add(newSqlParameter(buil
13、dingid, SqlDbType.Int); spa.Direction=ParameterDirection.Input; spa.Value=DropDownList1.Te*t;SqlDataAdapter sda=newSqlDataAdapter (scm);DataSet ds=newDataSet(); sda.Fill(ds); GridView1.DataSource=ds; GridView1.DataBind(); protectedvoid Button1_Click(object sender, EventArgs e) SqlConnection s =newSq
14、lConnection(ConfigurationManager.ConnectionStringsConnectionString.ConnectionString); s.Open();Sqlmand scm =newSqlmand(yizhuman, s); scm.mandType =mandType.StoredProcedure;SqlParameter spa =null; spa = scm.Parameters.Add(newSqlParameter(buildingid, SqlDbType.Int); spa.Direction =ParameterDirection.I
15、nput; spa.Value = DropDownList1.Te*t;SqlDataAdapter sda =newSqlDataAdapter(scm);DataSet ds =newDataSet(); sda.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind();办理入住:办理入住功能代码:try SqlConnection s =newSqlConnection(ConfigurationManager.ConnectionStringsConnectionString.ConnectionString); s.Open
16、();Sqlmand scm =newSqlmand(dbo.StoredProcedure1, s); scm.mandType =mandType.StoredProcedure;SqlParameter sprocParams =null; sprocParams = scm.Parameters.Add(newSqlParameter(studentid, SqlDbType.Int); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = Te*tBo*1.Te*t; sprocParams = sc
17、m.Parameters.Add(newSqlParameter(studentname, SqlDbType.VarChar, 10); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = Te*tBo*2.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(buildingid, SqlDbType.Int); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value =
18、DropDownList1.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(dormitoryid, SqlDbType.Int); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = DropDownList2.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(bedid, SqlDbType.Int); sprocParams.Direction =ParameterDirection
19、.Input; sprocParams.Value = Te*tBo*7.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(studentse*, SqlDbType.Char, 2); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = DropDownList4.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(studentage, SqlDbType.Int); sprocParam
20、s.Direction =ParameterDirection.Input; sprocParams.Value = Te*tBo*4.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(stayingtime, SqlDbType.Int); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = Te*tBo*3.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(classname, SqlD
21、bType.Char, 10); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = DropDownList5.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(intime, SqlDbType.Char, 10); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = Te*tBo*5.Te*t; sprocParams = scm.Parameters.Add
22、(newSqlParameter(classid, SqlDbType.Int); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = DropDownList6.Te*t;if (scm.E*ecuteNonQuery() 0) Label2.Te*t =录入成功_;else Label2.Te*t =录入失败!; catch (E*ception) Label2.Te*t =录入失败!; 办理迁出:办理迁出功能代码:publicvoid qianchu() SqlConnection sn =newSql
23、Connection(ConfigurationManager.ConnectionStringsConnectionString.ConnectionString); sn.Open();Sqlmand scmm =newSqlmand(goout, sn); scmm.mandType =mandType.StoredProcedure;SqlParameter param1 =null; param1 = scmm.Parameters.Add(newSqlParameter(studentid, SqlDbType.Int); param1.Direction =ParameterDi
24、rection.Input; param1.Value = DropDownList1.Te*t; param1 = scmm.Parameters.Add(newSqlParameter(studentname, SqlDbType.NChar, 10); param1.Direction =ParameterDirection.Input; param1.Value = DropDownList2.Te*t; param1 = scmm.Parameters.Add(newSqlParameter(outtime, SqlDbType.NChar, 10); param1.Directio
25、n =ParameterDirection.Input; param1.Value = Te*tBo*4.Te*t; param1 = scmm.Parameters.Add(newSqlParameter(reason, SqlDbType.VarChar, 50); param1.Direction =ParameterDirection.Input; param1.Value = Te*tBo*3.Te*t; scmm.E*ecuteNonQuery(); Label2.Te*t +=成功放入到out表中;学生信息查询:查询*一栋楼的全部学生:学生信息查询功能代码:SqlConnecti
26、on s =newSqlConnection(ConfigurationManager.ConnectionStringsConnectionString.ConnectionString); s.Open();Sqlmand scm =newSqlmand(*uehao, s); scm.mandType =mandType.StoredProcedure;SqlParameter sprocParams =null; sprocParams = scm.Parameters.Add(newSqlParameter(studentid, SqlDbType.Int); sprocParams
27、.Direction =ParameterDirection.Input; sprocParams.Value = Te*tBo*2.Te*t;SqlDataAdapter sda =newSqlDataAdapter(scm);DataSet ds =newDataSet(); sda.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind();学生信息查询:以专业进展查询学生信息查询:以班级进展查询学生信息查询:以宿舍进展查询学生信息查询:以*进展查询学生信息查询:以*进展查询查询房间信息:以楼号与宿舍号进展查询房间信息查询:SqlC
28、onnection s =newSqlConnection(ConfigurationManager.ConnectionStringsConnectionString.ConnectionString); s.Open();Sqlmand scm =newSqlmand(peoplenum, s); scm.mandType =mandType.StoredProcedure;SqlParameter sprocParams =null; sprocParams = scm.Parameters.Add(newSqlParameter(peoplenum, SqlDbType.Int); s
29、procParams.Direction =ParameterDirection.Input; sprocParams.Value = Te*tBo*3.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(buildingid, SqlDbType.Int); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = DropDownList4.Te*t;SqlDataAdapter sda =newSqlDataAdapter(scm);DataSet d
30、s =newDataSet(); sda.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind();房间信息查询:以楼栋性别所住是男、女与楼号、空缺人数进展查询人数统计:可以以楼号、楼号+班级、班级、专业等进展统计人数统计功能代码:SqlConnection s =newSqlConnection(ConfigurationManager.ConnectionStringsConnectionString.ConnectionString); s.Open();Sqlmand scm =newSqlmand(classcount, s)
31、; scm.mandType =mandType.StoredProcedure;SqlParameter sprocParams =null; sprocParams = scm.Parameters.Add(newSqlParameter(buildingid, SqlDbType.Int); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = DropDownList1.Te*t; sprocParams = scm.Parameters.Add(newSqlParameter(classname, S
32、qlDbType.Char,10); sprocParams.Direction =ParameterDirection.Input; sprocParams.Value = DropDownList2.Te*t;SqlDataAdapter sda =newSqlDataAdapter(scm);DataSet ds =newDataSet(); sda.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind();房间数量统计:统计每栋楼的房间数房间数量统计功能代码:SqlConnection s =newSqlConnection(C
33、onfigurationManager.ConnectionStringsConnectionString.ConnectionString); s.Open();Sqlmand scm =newSqlmand(dormitorycount, s); scm.mandType =mandType.StoredProcedure;SqlParameter nwparam =null; nwparam = scm.Parameters.Add(newSqlParameter(buildingid, SqlDbType.Int); nwparam.Direction =ParameterDirect
34、ion.Input; nwparam.Value = DropDownList1.Te*t;SqlDataAdapter sda =newSqlDataAdapter(scm);DataSet ds =newDataSet(); sda.Fill(ds); GridView1.DataSource = ds; GridView1.DataBind();查看所有迁出记录:迁出记录:以*、*进展查看。7、 程序设计中遇到的问题和解决方法1在连接数据库时我用sqldatasource控件绑定数据源再绑定了gridview,可是关机重启后,再运行就错误,找不到数据库文件。 解决方法:通过询问同学和网上
35、查询然后更新绑定数据库的代码,发现是连接字符串出现问题然后我将绝对位置改成相对位置DataSource=.SQLE*PRESS;AttachDbFilename=|DataDirectory|ZY.mdf;Integrated Security=True;User Instance=True,其中|DataDirectory|代表的是App_Data在文件夹里添加你要用的数据库。 2在学生入住录入的时候,一直显示录入失败 解决方案:通过查看代码,发现录入按钮没有数据库的连接代码无法连接数据库,加上就可以了。 3在设计时总是没方法将控件放到自己想要的位置,通过插入表格也总是出现混乱。 解决方案:八、总结: 通过这次基于c*的web学生宿舍管理系统的开发,我对web系统的设计有了一定的认识、了解和掌握。该系统是一功能比拟完备的学生宿舍管理系统,它集各种功用于一身,可以对学生宿舍管理的的各种操作,如对学生的信息入住的录入等。建立学生宿舍管理系统,采用统一的方式对学生住宿进展管理,极大的方便了管理员的管理工作。在编程的过程中我们两个人不断探讨和摸索,每人分别完成一局部程序,最后完成了该系统的设计。. z.
链接地址:https://www.31ppt.com/p-1119177.html