学生宿舍管理系统毕业论文_第1页
学生宿舍管理系统毕业论文_第2页
学生宿舍管理系统毕业论文_第3页
学生宿舍管理系统毕业论文_第4页
学生宿舍管理系统毕业论文_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学生宿舍管理系统毕业论文 - 2 - 摘 要 高校学生宿舍管理系统是典型的信息管理系统 (MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于后台数据库的建立和维护要求建立起数据一致性和完整性强、数据安全性好的库。而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友好、使用简单方便等特点。我使用 Microsoft 公司的 Visual Studio.NET 中的 C# 和 SQL Server 2000 数据库为开发工具。 .NET 框架包含一 种名为 ADO.NET 的全新的数据访问技术。它支持各种类型的数据存储器,优化了单独的数据提供者,适用于远程数据,可以处理大量用户同时访问数据的应用程序。 ADO.NET提供了强大的数据环境,更有利于对数据库和数据表的直接操作和处理,提高了编程效率和可靠性。旧的手工纪录的宿舍管理方式已经不能适应高速发展的信息化时代,新的宿舍管理系统开发出来之后,学校的现有的宿舍信息管理将有很大的改观,由过去的人工方式转变为计算机方式,由效率低、数据冗余、易产生错误转变为检索迅速、查找方便、可靠性高、存储量大。这些优点能够极大 地提高效率 ,也是学校科学化、正规化管理的重要条件。 关键词 宿舍管理系统、数据库、管理、 信息 - 3 - 引 言 高校 学生宿舍管理系统对于一个学校来说是必不可少的组 成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已 经被社会所淘汰了,计算机化管理正是适应时代的产物。信息 世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。 21 世纪的今天 ,信息社会占着主流地位,计算机在各行各业中的运用 已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我 针对 以上情况 ,设计了一套 高校 学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容 易丢失。这无疑是为信息存储量比较大的 高 校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备完善的报表生成、修改 等 功能,能够快速的查询学校所需的住宿信息。 - 4 - 第一章 系统需求分析 目前,我们学校的宿舍管理采用的还是人工来进行管理的 , 面对目前学校发展的实际状况,我通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。 1.1 功能需求 1.1.1 基本功能需求 本课题要实现的是高校学生宿舍管理系统,在设计该系统时,应尽可能的贴近学生 ,便于用户操作。系统在实现上应该 具有如下功能: 1.系统要求用户必须输入正确的用户名和密码才能进入系统。 2.系统应该提供学生住宿情况的基本登记。 3.系统应提供学生每学期的注册及学生的离校处理。 4.系统应提供人员来访的详细登记。 5.系统应提供学生在校期间物品出入宿舍楼的详细情况登记。 6.系统应提供查询功能,以方便用户对学生基本信息的查询 (要实现按多种条件的查询 )及楼房信息的查询。 7.系统应提供增加、删除、修改用户帐户的功能和对帐户的权限进行设定。 8.系统应提供对学生宿舍的出勤和卫生进行登记。 9.系统还应具有添加、修改、删除 学生及员工基本信息的功能。 1.1.2 报表需求 高校 学生宿舍管理系统的某些信息应当能够以报表形式打印出来。基本上应该能够实现学生基本信息的报表打印、某宿舍具体住宿情况的报表打印、某栋宿舍楼的住宿情况的报表打印、所有学生各年度宿舍交费情况打印、学生宿舍出勤情况和卫生情况的报表打印、学生物品出入信息的报表打印及人员来访信息的报表打印等的功能。 1.1.3 用户界面需求 高校 学生宿舍管理系统应提供简单、层次关系明了、清晰的操作界面,使用户一目了然。尽可能的为用户的录入、查询等功能操作提供方便。 1.2 性能需求 1.2.1 系统安全性 高校 学生宿舍管理系统中的增加用户、学生学期注册、学生毕业离校等的某些模块都是和学生住宿费相联系在一起的,只有每年度的住宿费用交纳完毕才准许该生离校,所以在系统的管理权限上应当进行严格控制,具体思想如下: 1.要想对该学生宿舍管理系统进行操作就应当具有某些操作权限。没有权限的用户将不能通过任何渠道来登录该系统,查看该系统的任何信息和数据,以确保系统的严密性和安全性。 2.在上述要求基础上可以为该系统设定两种登录方式,即系统管理员登录和普通用户登录,没有系 - 5 - 统管理员或者普通用户的用户名 和密码任何人都不能登录该系统 ,而且管理员可以对每个用户赋予不同模块的操作权限。 1.3 数据库选择 数据库是数据管理的最新技术,是计算机科学的重要分支。近年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。由于数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。 由于用到的数据表格多,另外考虑到实际情况,学生基本信息的变动,还有员工信息的多少的变化,我们选用 SQL Server 2000 作为数据库开发,而不用 Access,主要是因为 Access 存放的记录,在实际运用中不适合此系统;而 SQL Server 2000 是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户,故选用 SQL Server 2000 数据库。 1.4 开发 环境 本系统是以 Windows 2000 Server 系统为 开发 平台,用 Visual Studio.NET 中的 C#编程语言和 SQL Server 2000 数据库来实现高校学生宿舍管理系统所 需的功能 。 1.5 本章小结 本章具体介绍了系统的需求分析,通过对系统的需求分析得出了系统的总体设计,确 定了系统的开发框架。本章对系统的功能作了简单的描述,得出了系统的主体流程。通过对系统的各项分析,得出了实现系统功能的基本方法,并确定使用的开发工具。 - 6 - 第二章 相关知识点介绍 2.1 软件工程 软件工程是指导计算机软件开发和维护的一门学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效的维护它。 (1) 软件工程的基本原理 自从 1968 年在联邦德国召开的国际会议上正式提出并使用了“软件工程”这个术语以 来,研究软件工程的专家学者们陆续提出了 100 多条关于软件工程的准则或“信条”。著名的软件工程专家 B. W. Boehm 综合这些学者们的意见并总结了 TRW 公司多年开发软件的经验,于 1983 年在一篇论文中提出了软件工程的七条基本原理。这七条原理是相互独立的,其中任意六条原理的组合都不能代替另一条原理。 软件工程的七条基本原理: 1. 用分析阶段的生命周期计划严格管理。 2. 坚持进行阶段评审。 3. 实行严格的产品控制。 4. 采用现代的程序设计技术。 5. 结果应能清楚地审查。 6. 开发小组的人员应该少而精 。 7. 承认不断改进软件工程实践的必要性。 2.2 C#知识介绍 Visual Studio .NET 是 Microsoft 公司开发的 一套完整的开发工具,用于生成 ASP Web 应用程序、XML Web services、桌面应用程序和移动应用程序。 它包括: Visual Basic .NET、 Visual C+ .NET、 Visual C# .NET 和 Visual J# .NET 等,而 C#就是其中的一种。 Microsoft C#(读作 C sharp)是一种新的编程语言,它是为生成运行在 .NET Framework 上的、广泛的企业级应用程序而设计的。 C# 从 Microsoft C 和 Microsoft C+ 演变而来,它是一种简单、现代、类型安全和面向对象的语言。 C# 代码被作为托管代码编译,这意味着它能够从公共语言运行库的服务中受益。这些服务包括:语言互操作性、垃圾回收、增强的安全性以及改进的版本支持。 C# 在 Visual Studio .NET 套件中作为 Visual C# 引入。对 Visual C# 的支持包括项目模板、设计器、属性页、代码向导、一个对象模型以及开发环境的 其 它 功能。 Visual C# 编程的库是 .NET Framework。 2.3 ADO.NET 知识介绍 ADO.NET 提供对 Microsoft SQL Server 等数据源以及通过 OLE DB 和 XML 公开的数据源的一致访问 。数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索、操作和更新数据。 ADO.NET 有效地从数据操作中将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET 包含用于连接到数据库、执行命令和检索结果的 .NET Framework 数据提供程序。您可以直接处理检索到的结果,或将其放入 ADO.NET DataSet 对象,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,以特殊方式向用户公开。 ADO.NET DataSet 对象也可以独立于 .NET - 7 - Framework 数据提供程序使用,以管理应用程序本地的数据或源自 XML 的数据。 ADO.NET 类在 System.Data.dll 中,并且与 System.Xml.dll 中的 XML 类集成。当编译使用 System.Data 命名空间的代码时,请引用 System.Data.dll 和 System.Xml.dll。 2.4 SQL Server 2000 知识介绍 SQL Server 2000 是 Microsoft 公司推出的 SQL Server 数据库管理系统,它继承了 SQL Server 7.0 版本 的优点,同时又为它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成度高等优点,应用程序的操作系统支持所有 Windows 版本。 在 SQL Server 中,使用的是 T-SQL 语言, T-SQL 是 ANSI SQL 的加强版语言,它提供了标准的 SQL 命令,由于 SQL 语言功能丰富、语言简洁,使用方法灵活,倍受用户和计算机业界的青睐,被众多的计算机公司和软件公司采用。经过多年的发展, SQL 语言已成为关系数据库的标准语言。 SQL 语言 主要 有数据定义语言、数据操纵语言、数据控制语言和其他类语言要素组成。 T-SQL 的分类也有类似于 SQL 语言的分类,不过做了许多扩充。 T-SQL 语言的分类如下:变量说明语句、数据定义语言(用来建立数据库、数据库对象和定义其列,大部分是以 CREATE 开头的命令)、数据操纵语言(用来操纵数据库中的数据的命令,如: SELECT、 INSERT、 DELETE 等)、数据控制语言(用来控制数据库组件的存取许可、存取权限等的命令,如: GRANT 等)、流程控制语言(用于设计应用程序的语句 ,如: If While 和 Case 等)、内嵌函数(说明变量的命令)、其他命令(嵌于命令中使用的标准函数)。 在数据库中,数据查询是通过 SELECT 语句来完成的。 SELECT 语句可以从数据库中按用户要求检索数据,并将查询结果以表格的形式返回。当然用户在查询数据库时往往并不需要了解全部信息,而只需要其中一部分满足某些条件的信息。在这种情况下就需要在 SELECT 语句中 加入条件以选择数据行,这时,就用到 WHERE 子句 。 WHERE 子句中的条件是由表达式以及逻辑联结词 AND、 OR 和NOT 等组成。用户在进行查询时,会出现重复结果,这时就需要使用 DISTINCT 关键字来取消重复部分。在 WHERE 子句中,可以使用谓词 LIKE 来进行字符串的匹配检查。当用户要对查询结果进行排序时,就需要在 SELECT 语句中加入 ORDER BY 子句。在 ORDER BY 子句中,可以使用一个或多个排序,要求其优先级次序从左到右。 为了使数据库更加精简,最大限度的减少数据库冗余数据。可以使用连接查询来实现 多个表的连接。连接查询可以分为等值连接查询、非等值连接查询、自身连接查询等。表之间的连接如果是通过相等的字段值连接起来的查询称为等值连接查询。在等值查询的连接条件中,不使用等号而使用其他比较运算符,就构成了非等值连接查询,可以使用的比较运算符有、 =、! = 等。连接不仅可以在表之间进行,也可以使一个表同其自身进行连接,这种连接成为自身连接,相应得查询成为自连接查询。 一个数据库能否保持信息的正确性、及时性、很大程度上依赖数据库的更新功能的强弱与数据库的实时更新能力,这些操作包括插入、删除、修改,也成为更新 3 种操作 。 2.5 本章小结 本章重点介绍了开发“高校学生宿舍管理系统”所使用的开发工具与应用的数据库系统。对 C# 的发展与相关控件技术进行了系统的介绍。 SQL Server 2000 作为应用最广泛的数据库系统,它最大限度的支持了系统的需求,实现了系统的各项功能。两种工具有机的结合开发出的系统恰好地满足了用户的需求。 - 8 - 本章通过介绍面向对象的编程和两种工具的发展与相应的技术,使大多数人明白本系统的开发原理与相关技术的应用。 - 9 - 第三章 宿舍管理系统详细设计 3.1 系统功能模块图 图 3.1 系统功能模块 图 在整体设计中,我们将宿舍 管理系统 分为八个大的模块:系统设置模块、公寓管理模块、学生管理模块、信息查询模块、出入登记模块、用户管理模块、数据备份模块、帮助模块。每个模块将实现不同 - 10 - 的功能 , 下面将具体进行介绍。 3.1.1 系统设置模块 系统设置模块包括:用户密码修改、更改背景、退出系统三个部分。 1.密码修改:实现所 有 用户的密码更改功能。 2.更改背景:实现对主窗体的背景进行更改。 3.退出系统:实现正常退出宿舍管理系统。 3.1.2 公寓管理模块 公寓管理模块包括:楼房管理、宿舍管理、员工管理、卫生管 理四个大的部分。 1.楼房管理:登记学校所有住宿楼情况。 2.宿舍管理:登记学校所有宿舍的情况。 3.员工 管理 :实现楼房管理人员的添加、修改、注销等功能。 4.卫生管理:实现对学生宿舍的卫生进行进行添加、修改、删除等功能 。 3.1.3 学生管理模块 学生管理模块包括:基本信息录入、个人财物登记、学期注册管理、学生离校管理、学生出勤管理五项功能 。 1.基本信息录入:实现学生基本信息情况的登记及宿舍的分配功能。 2.个人财物登记 : 登记学生在校期间所拥有的公共 财物 的登记情况。 3.学期注册管理:登记学生在校期 间每学期的宿舍缴费情况。 4.学生离校管理:实现学生毕业离校处理,注销该学生信息。 5.学生出勤管理:实现对学生宿舍的住宿情况进行登记。 3.1.4 信息查询模块 信息查询模块基本上包括:住宿信息查询、人员来访查询、物品进出查询、出勤情况查询、宿舍卫生查询、员工信息查询七个功能模块,在以上该模块中,当查询完毕后可以直接以报表形式进行输出打印并且还可以 重 新设计该报表的样式,如果不想以报表形式进行输出打印,用户还可以将其导出为EXCEL 表格形式,然后在进行输出打印。 1.住宿信息查询:在该模块中又分别划分三个 子模块:楼房查询、宿舍查询、学生查询。 1.1 楼房查询:通过楼房号来查询楼房的使用情况的查询。 1.2 宿舍查询:通过楼房号和宿舍号来查询宿舍的使用情况的查询。 1.3 学生查询:对学生的基本信息进行查询。 2. 人员来访查询 :对出入宿舍楼的外来人员的情况进行的查询。 3.员工信息查询:通过工号来查询员工的基本情况信息。 4.出勤情况查询:通过楼房号、宿舍号和日期字段来查询学生宿舍的出勤情况。 5.学期注册查询:通过学号、所交年度和交费状况字段来查询学生的注册信息。 6.宿舍卫生查询:通过楼房号、宿舍号和日期字 段来查询学生宿舍的卫生情况。 7.物品进出查询:对学生搬入和搬出宿舍楼的物品情况进行查询。 - 11 - 3.1.5 出入登记模块 出入登记模块包括:物品进出登记、人员来访登记两个功能模块。 1.物品进出登记:详细登记某学生搬入和搬出宿舍楼的物品情况。 2.人员来访登记:详细登记出入宿舍楼的外来人员情况。 3.1.6 用户管理模块 用户管理模块包括:添加用户、权限管理两个功能模块。 1. 添加用户:可以添加用户、修改用户、注销用户。 2. 权限管理:对用户的权限进行控制。 3.1.7 数据备份模块 数据备份模块包括 :备份数据库、还原数据库两个功能模块。 1. 备份数据库:对当前使用的数据库进行整体备份。 2. 还原数据库:对所备份的数据库进行整体还原。 3.1.8 帮助模块 帮助模块包括:关于模块。 1.关于模块:是对学生宿舍管理系统开发者相关信息的一个简单介绍。 - 12 - 3.2 系统 E-R 图 在我所设计的模块中,主要涉及到员工、楼房、寝室这三个实体,所以在 E-R 图中我只是将这三个实体的属性进行了详细说明。 图 3.2 系统 E-R 图 3.3 系统所需表 综合以上分析,要实现上面的所有功能模块,共需要设计十二个表,它们分别 是:学生基本情况表、 - 13 - 寝室表、员工表、楼房表、人员来访表、学生财产表、学期注册表、权限表、物品出入楼表、用户表、宿舍出勤表、宿舍卫生表。 3.3.1 系统表 1.用户表:登记用户名、密码及登录权限和在职状态。 2.学生基本情况表:详细登记学生基本信息及学生住宿情况。 3.寝室表:登记所有宿舍的详细情况。 4.员工表:登记所有宿舍员工的详细情况。 5.人员来访表:登记所有来访人员的详细情况。 6.物品出入表:详细登记学生物品出入楼信息。 7.楼房表:登记所有宿舍楼情况。 8.学期注册表:登记学生每学期的注册情况。 9.学生财产表:登记学生入住时的宿舍的物品情况。 10. 权限表:用来登记用户的权限模块。 11. 宿舍出勤表:登记学生宿舍的出勤情况。 12. 宿舍卫生表:登记学生宿舍的卫生情况。 表 3.1 用户表 (LoginIn) 字段名 描述 数据类型 数据长度 NULL Primarykey UserName 用户名 Varchar 20 N Y User Pwd 用户密码 Varchar 20 N N UserPower 用户权限 Varchar 1 N N TrueName 真实姓名 Varchar 20 N N LinkTel 联系电话 Varchar 20 Y N LinkAddre 地址 Varchar 80 N N State 在职状态 Varcha 1 N N Remark 备注 Varchar 400 Y N - 14 - 表 3.2 学生基本情况表 (Student) 字段名 描述 数据类型 数据长度 NULL Primarykey Stu_Id 学号 Varchar 20 N Y Stu_Name 姓名 Varchar 20 N N Stu_Sex 性别 Varchar 2 N N Hou_Id 楼房号 Varchar 10 N F Dor_Id 寝室号 Varchar 10 N F Stu_Enr 入学日期 datetime 8 N N Stu_Birth 出生日期 datetime 8 N N Stu_Study 所学专业 Varchar 20 N N Stu_Class 班级 Varchar 20 N N Stu_Cname 辅导员 Varchar 20 N N Stu_Polit 政治面貌 Varchar 10 N N Stu_Add 家庭住址 Varchar 80 N N Stu_Tel 联系方式 Varchar 20 Y N Stu_Ptel 个人电话 Varchar 20 Y N Stu_Sta 在校状态 Varchar 10 N N Stu_Des 备注 Varchar 400 Y N 表 3.3 学生 寝室表 (Dorm) 字段名 描述 数据类型 数据长度 NULL Primarykey Hou_Id 楼房号 Varchar 10 N F Dor_Id 寝室号 Varchar 10 N N Dor_Sex 居住性别 char 2 N N Dor_Num 应住人数 int 4 N N Dor_Fact 实住人数 int 4 Y N Dor_Price 住宿费用 Varcha 10 N N Dor_Telone 电话 1 Varchar 20 Y N Dor_Teltwo 电话 2 Varchar 20 Y N - 15 - Dor_Des 备注 Varchar 400 Y N 表 3.4 员工表 (Employee) 字段名 描述 数据类型 数据长度 NULL Primarykey Emp_Id 员工号 Varchar 10 N Y Emp_Name 姓名 Varchar 20 N N Emp_Sex 性别 Varchar 2 N N Hou_Id 楼房号 Varchar 10 N F Emp_Job 职位 Varcha 10 N N Emp_Add 家庭住址 Varchar 80 N N Emp_Tel 联系方式 Varchar 20 Y N Emp_Des 备注 Varchar 400 Y N 表 3.5 人员来访表 (Visit) 字段名 描述 数据类型 数据长度 NULL Primarykey Vis_Id 自动编号 Bigint 8 N Y Vis_Name 来访人姓名 Varchar 20 N N Vis_Host 被访人姓名 Varchar 20 N N Hou_Id 楼房号 Varchar 10 N F Dor_Id 寝室号 Varchar 10 N F Relation 所属关系 Varchar 10 N N Vis_Data 来访日期 datetime 8 N N Vis_Watch 值班人 Varchar 20 N N Vis_Cred 证件名称 Varchar 20 Y N Vis_CredNB 证件编号 Varchar 20 Y N Vis_Des 备注 Varchar 400 Y N 表 3.6 物品出入楼表 (Goodsmove) 字段名 描述 数据类型 数据长度 NULL Primarykey - 16 - Move_Id 自动编号 Bigint 8 N Y Stu_Id 学号 Varchar 20 N N Stu_Name 姓名 Varchar 20 N N Hou_Id 楼房号 Varchar 10 N F Dor_Id 寝室号 Varchar 10 N F G_In 进楼物品 Varchar 80 Y N G_Out 出楼物品 Varchar 80 Y N G_Date 日期 datetime 8 N N Watch 值班人 Varchar 20 N N G_Des 备注 Varchar 400 Y N 表 3.7 楼房表 (House) 字段名 描述 数据类型 数据长度 NULL Primarykey Hou_Id 楼房号 Varchar 10 N Y Hou_Add 所处地址 Varchar 80 N N Hou_Num 楼层数 Varchar 10 N N Hou_Rom 房间数 Varchar 10 N N Hou_Peo 应住人数 int 4 N N Hou_Fact 实住人数 int 4 Y N Hou_Des 备注 Varchar 400 Y N 表 3.8 学期注册表 (Enroll) 字段名 描述 数据类型 数据长度 NULL Primarykey Stu_Id 学号 Varchar 20 N Y Stu_Name 姓名 Varchar 20 N F Hou_Id 楼房号 Varchar 10 N F Dor_Id 寝室号 Varchar 10 N F Enr_Date 注册日期 datetime 8 N Y Enr_Price 所交费用 Varchar 10 N N - 17 - Enr_Sta 交费情况 Varchar 10 N N Enr_Year 所交年度 Varchar 10 N N Enr_Des 备注 Varchar 400 Y N 表 3.9 学生财产表 (Riches) 字段名 描述 数据类型 数据长度 NULL Primarykey Stu_Id 学 号 Varchar 20 N Y Stu_Name 姓名 Varchar 20 N N Hou_Id 楼房号 Varchar 10 N F Dor_Id 寝室 Varchar 10 N F Bed 床位号 Varchar 10 Y N Stool 凳子号 Varchar 10 Y N Desk 桌子号 Varchar 10 Y N KeySend 钥匙发否 Varchar 10 Y N Box 箱子号 Varchar 10 Y N Bedding 被子号 Varchar 10 Y N Ric_Des 备注 Varchar 400 Y N 表 3.10 宿舍卫生表 (Dorsanit) 字段名 描述 数据类型 数据长度 NULL Primarykey Hou_Id 楼房号 Varchar 10 N Y Dor_Id 寝室 Varchar 10 N Y Sanit_Name 值日生 Varchar 20 N N Sanit_Succ 分数 int 4 N N Watch 值班人 Varchar 20 N N Sanit_Date 日期 datetime 8 N Y Sanit_Des 备注 Varchar 400 Y N - 18 - 表 3.11 宿舍出勤表 (Dorout) 字段名 描述 数据类型 数据长度 NULL Primarykey Hou_Id 楼房号 Varchar 10 N F Dor_Id 寝室 Varchar 10 N F Out_Sfqq 是否全勤 Varchar 2 N N Out_Nub 缺勤 人数 int 4 Y N Out_Why 缺勤原因 Varchar 80 Y N Watch 值班人 Varchar 20 N N Out_Date 日期 datetime 8 N N Out_Des 备注 Varchar 400 Y N 表 3.12 用户权限表( Userqx) 字段名 描述 数据类型 数据长度 NULL Primarykey UserName 用户名 Varchar 20 N Y Menu1 菜单 1 Varchar 1 N N Menu2 菜单 2 Varchar 1 N N Menu3 菜单 3 Varchar 1 N N Menu4 菜单 4 Varchar 1 N N Menu5 菜单 5 Varchar 1 N N Menu6 菜单 6 Varchar 1 N N Menu7 菜单 7 Varchar 1 N N Menu8 菜单 8 Varchar 1 N N 3.3.2 表的说明 本管理系统共用到十二个表:用户表 (LoginIn)、学生基本情况表 (Student)、寝室表 (Dorm)、员工表(Employee)、人员来访表 (Visit)、物品出入楼表 (Goodsmove)、楼房表 (House)、学生财产表 (Riches)、用户权限表( Userqx) 、宿舍出勤表 (Dorout)、宿舍卫生表 (Dorsanit)、学期注册表 (Enroll),各表之间均有一定的关系,可以进行关联。 1.学生基本情况表 (Student)、学生财产表 (Riches)、学期注册表 (Enroll)、物品出入楼表 (Goodsmove)这四个表里面都有一个相同的字段 :学号 (Stu_Id),通过学号这个字段就可以将系统的这四个表关联了起来。当某个表发生插入、修改、删除等方面的改动时,相联的表之间也要进行相应的改动。学生基本情 - 19 - 况表 (Student)和寝室表 (Dorm)也有一个相同的字段 :寝室号 (Dor_Id)将两表相关联。 2.由于员工是负责管理某栋楼房的, 因此员工表 (Employee),楼房表 (House)这两个表之间有一个相同的字段 :楼房号 (Hou_Id)来进行关联。 3.由于权限表是对某个用户的权限进行控制,因此用户表 (LoginIn)和权限表 ( Userqx) 之间有一个相同的字段:用户名( UserName)来进行关联。 3.4 具体模块设计 在系统功能模块介绍时,我把整个系统分为系统设置模块、公寓管理模块、学生管理模块、信息查询模块、出入登记模块、用户管理模块、数据备份模块、帮助模块八个基本模块。如下图是我的高校学生宿舍管理系统的主界面: 图 3.3 宿舍管理系统主界面 3.4.1 登录模块功能详细设计 图 3.4 登录界面 设计思想: 当进入宿舍管理系统时必须在登录对话框中输入正确的用户名和密码才能进入主窗体,如果密码输入三次还不正确,系统将自动关闭。 具体实现: (1).在实现该功能模块时,需要添加一个 Windows 窗体,使起 Name 为 Frmlogin.cs,修改 Text 属性为“登录”,调整窗体大小,修改 MaximizeBox 属性为 false 和 MinimizeBox 属性为 false,添加相应的 label 控件、 textBox 控件和 button 控件,并修改相关的属性使其如图 3.4 界面。 (2).在实现 登录 功能时,需要用到用户表 LoginIn 和权限表 Userqx,因此需要调用 OperData.cs 公共类来实现窗体与数据库之间的相关联 ,在窗体的 Load 事件和命令按钮的 Click 事件中分别写入相应的代码来实现登录功能,详细代码请查看附录 A。 - 20 - 3.4.2 系统设置功能详细设计 1.密码修改 图 3.5 修改密码 界面 设计思想: 为了防止密码被恶意 盗用 可以经常性的修改你的密码以增强系统的安全性,密码修改对于所有具有访问该系统的用户来说都可以 使用 ,但是如果系统管理员没有对某个用户分配该模块,那该用户是不能进行密码修改。 具体实现 : (1).在实现该功能模块时,需要添加一个 Windows 窗体,使起 Name 为 Frmuppwd.cs,修改 Text 属性为“修改密码”,调整窗体大小,修改 MaximizeBox 属性为 false 和 MinimizeBox 属性为 false,添加相应的 label 控件、 textBox 控件和 button 控件,并修改相关的属性使其如图 3.5 界面。 (2).在实现 修改 功能时,需要用到用户表 LoginIn,因此需要调用 OperData.cs 公共类来实现窗体与数据库之间的相关联 , 在 单击 确认时,还需要调用在登录系统时保存在 CommClass.cs 类中的用户名,然后调用存储过程来判断原始密码是否正确,只有一致才有权限修改你的密码。同 时 为了确保新密码的正确性,还添加了一个确认密码框,新密码和确认密码两者所输内容是要求完全一样,方能修改密码成功。 在窗体的 Load 事件和命令按钮的 Click 事件中分别写入相应的代码来实现修改密码功能,详细代码请查看附录 A。 2.修改背景 设计思想: 由于 每个人 的审美观点不同,和对色彩的认知不同,所以在系统设计时 提供了对主界面的背景修改。 具体 实现 : (1).在实现该功能模块时,只需要在下级菜单的 Click 事件里分别写入对主窗体 BackColor 属性的值修改的代码就可以。 3.4.3 公寓管理模块详细设计 由于楼房管理、宿舍管理、员工管理和卫生管理这四个功能模块在具体编程实现上基本一样,下面 - 21 - 我仅以楼房管理为例来说明一下这四个功能模块的详细实现过程, 其余三个模块仅介绍其 设计 思想。 1.楼房管理 图 3.6 楼房管理 界面 设计思想: 楼房 管理 是对每栋宿舍楼的基本信息进行录入,在学校建设完新的宿舍楼时可以通过此窗 体把该楼房的信息添加到数据库中去。 具体实现: (1).在实现该功能模块时,需要添加一个 Windows 窗体,使起 Name 为 Frmbulid.cs,修改 Text 属性为“楼房管理”,调整窗体大小,修改 MaximizeBox 属性为 false 和 MinimizeBox 属性为 false,添加相应的 label 控件、 textBox 控件、 button 控件、 tabControl 控件和外部表格组件 gridControl,并修改相关的属性使其如图 3.6 界面。 (2).在实现 楼房功能 时,需要用到 楼房表 House,因此需要调用 OperData.cs 公共类来实现窗体与数据库之间的相关联 ,在窗体的 Load 事件和命令按钮的 Click 事件中分别写入相应的代码来实现修改密码功能,详细代码请查看附录 A。 (3).在窗体上我采用了页框的方式对添加、修改、删除进行了划分,当用户点击添加时便显示添加页框的内容,供用户添加新的楼房信息,当点击修改页框时,数据就会在 gridControl 控件中显示出来,当单击下一条或上一条 时 可以移动记录,并且在文本框中显示出来,也可单击 gridControl 控件中的某条记录使起变为选中状态,这样也可以将记录在文本框中显 示,用户除楼房编号外其它信息都可进行修改,但除备注和实住人数外,其它的均不能为空,否则系统将会提示你操作失败,如果由于楼房老旧或改为其它用途时可通过在删除页框中将该楼房信息进行注销。 (4).我 还设置了一个备注字段,是为了方便学校登记该楼房的其 它 相关情况。 - 22 - (5).无论是添加、修改还是删除均采用调用 SQL 的存储过程来完成相关的操作。 2.宿舍 管理 图 3.7 宿舍管理 界面 设计思想: 宿舍管理是对每栋楼房所有宿舍的一个详细情况登记,每个宿舍在数据库里面的信息都是就静态的只有里面的实住人数是动态 增加的,当某个宿舍增加或减少一个学生实住人数会自动加 1 或减 1,实现动态增减。 3.员工 管理 - 23 - 图 3.7 员工管理 界面 设计思想: 员工管理是对楼房管理人员、清洁工、保卫人员进行的登记管理。该模块是有系统管理员来完成的,没有赋予权限的用户是不能对该模块进行操 作 。当某栋楼房调来新员工时,系统管理员可以通过此功能来添加 、修改、删除 员工基本信息 。 4.卫生 管理 图 3.8 卫生管理 界面 - 24 - 设计思想: 卫生管理是对学生宿舍的卫生进行登记管理。该模块是将宿舍的卫生情况进行每日登记,这样就可以通过查询来 进行及时反馈某栋宿舍楼中某个宿舍的卫生情况 和作为宿舍卫生评比的依据 。 3.4.4 学生管理功能详细设计 由于基本信息录入、个人财物登记、学期注册管理、学生离校管理和学生出勤管理这五个功能模块在具体编程实现上基本一样,下面我仅以基本信息录入为例来说明一下这五个功能模块的详细实现过程, 其余 四 个模块仅介绍其 设计 思想。 1. 基本信息录入 图 3.9 学生基本信息管理 界面 设计思想: 基本信息录入是对学 生 入住宿舍时填写的信息,也是为 学生 分配宿舍的依据 ,在该窗体中,如果增加和删除信息将会影响到楼房表 House 里的实住人数和宿舍表 Dorm 中的实住人数,如果在该窗体里添加信息,楼房表 House 里的实住人数和宿舍表 Dorm 中的实住人数将实现动态加 1,如果执行删除,将实现动态减 1。 具体实现: (1).在实现该功能模块时,需要添加一个 Windows 窗体,使起 Name 为 Frmstubasic.cs,修改 Text属性为“学生基本信息管理”,调整窗体大小,修改 MaximizeBox 属性为 false 和 MinimizeBox 属性为 false,添加相应的 label 控件、 textBox 控件、 dateTimePicker 控件、 comboBox 控件、 button 控件、tabControl 控件和外部表格组件 gridControl,并修改相关的属性使其如图 3.9 界面。 (2).在实现 楼房功能 时,需要用到 楼房表 House、宿舍表 Dorm 和学生基本情况表 Student, - 25 - 因此需要调用 OperData.cs公共类来实现窗体与数据库之间的相关联 ,在窗体的 Load事件执行查询语句,将其返回的数据集与 comboBox 控件和外部表格组件 gridControl 进行帮定,以方便用户操作。在 命令按钮的 Click 事件中分别写入相应的代码来实现添加、修改和删除功能 ,详细代码请查看附录 A。 (3).在窗体上我采用了页框的方式对添加、修改、删除进行了划分,当用户点击添加时便显示添加页框的内容,供用户添加新的 学生 信息,当点击修改页框时,数据就会在 gridControl 控件中显示出来,当单击下 一条或上一条时 可以移动记录,并且在文本框中显示出来,也可单击 gridControl 控件中的某条记录使起变为选中状态,这样也可以将记录在文本框中显示,用户除 学号外其它信息都可进行修改,但除备注、家庭电话和个人电话 数外,其它的均不能为空,否则系统将会提示你操作失败 。 (4).无论是添加、修 改还是删除均采用调用 SQL 的存储过程来完成相关的操作 2. 个人财物登记 图 3.10 个人财物登记 界面 设计思想: 个人财物登记 是对学 生入住宿舍时使用的公共财物填写的信息,该模块对宿舍的公共财物进行分配和管理,也是作为宿舍公物使用情况重要依据。 3. 学期注册管理 - 26 - 图 3.11 学期注册管理 界面 设计思想: 学期注册管理 是对学 生每年的交费情况填写的信息,当每学期开学,所有住宿的学生都应凭交费单据到所在的宿舍进行注册,如果没有交费或未交清也可通过该窗体进行注册,但必须在备注中说明其原因和提供相 应的证明,并且在交费状况下选择相应的状况。 4. 学生离校管理 图 3.11 学生离校管理 界面 设计思想: 学生离校管理 是 对学生毕业时信息的处理,如果某学生没有交费或未交清住宿费,在此办理离校手续时,系统将会给出提示。如果该学生住宿费已全部交清,系统将自动修改 楼房表 House里的实住人数和宿舍表 Dorm中的实住人数使其减 1,并且修改学生基本信息表 Student的 在校状态使其成为“离校”。 5. 学生出勤管理 - 27 - 图 3.11 学生出勤管理 界面 设计思想: 学生出勤管理 是 对学生宿舍的每日入住情况进 行登记,如果宿舍为全勤,那么缺勤人数和缺勤原因文本框将不可用。如果该宿舍不是全勤,就应该填写该内容,以便及时反映出宿舍在某日的住宿情况。 3.4.5 出入登记 功能详细设计 由于物品进出登记和人员来访登记两个功能模块在具体编程实现上和以上的模块基本一样,下面我仅 介绍 一下两个模块的设计 思想。 1. 人员来访登记 图 3.11 人员来访登记 界面 设计思想: - 28 - 人员来访登记 是 对学生宿舍外来人员进行登记,为了保证住宿生的人身和财物安全,当外来人员要进入某个宿舍时,必须登记后才能对某个学生进行探访,否则可以拒绝该 人的探访。 2. 物品进出登记 图 3.12 物品进出登记 界面 设计思想: 物品进出登记 是 对学生宿舍进出的物品进行登记,为了保证住宿生的财物和宿舍的财物安全,当某个学生要带出和带入宿舍财物时,必须进行登记。 3.4.6 信息查询模块详细设计 人员来访查询、物品进出查询、出勤情况查询、宿舍卫生查询、学期注册查询、员工信息查询、住宿情况查询下分为三个菜单楼房查询、宿舍查 询、学生查询这九个功能模块在具体编程实现上基本上是一样。因此我 仅以学期注册查询模块为例来说明一下这九个功能模块的详细实现过程。其余八个模 块仅介绍其 设计 思想。 1.学期注册查询 图 3.13 学期注册查询 界面 设计思想: - 29 - 个人交费 状况 查询是具体的查询某学生的交费状况,是通过学号和所交年度字段来实现该生在某年度的交费状况的查询,而总体交费状况是通过交费状况和所交年度字段来查询在某年度的所有学生的交费状况。 具体实现: (1).在实现该功能模块时,需要添加一个 Windows 窗体,使起 Name 为 Frmxqenr.cs,修改 Text 属性为“学生基本信息管理”,调整窗体大小,修改 MaximizeBox 属性为 false 和 MinimizeBox 属性为 false,添加相应的 label控件、 textBox控件、 comboBox控件、 button控件和外部表格组件 gridControl,并修改相关的属性使其如图 3.13 界面。 (2).在实现 该查询功能 时,需要用到 学期注册表 Enroll,因此需要调用 OperData.cs 公共类来实现窗体与数据库之间的相关联 ,在窗体的 Load 事件执行查询语句,将其返回的数据集与 外部表格组件 gridControl 进行帮定,以方便用户操作。在 命令按钮的 Click

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论