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

下载本文档

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

文档简介

学生宿舍管理系统毕业论文学生宿舍管理系统毕业论文 - 2 - 摘 要 高校学生宿舍管理系统是典型的信息管理系统(mis),其开发主要包括后台数据库的建立和维护以 及前端应用程序的开发两个方面。对于后台数据库的建立和维护要求建立起数据一致性和完整性强、 数据安全性好的库。而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友 好、使用简单方便等特点。我使用 microsoft 公司的 visual studio.net 中的 c# 和 sql server 2000 数 据库为开发工具。.net 框架包含一种名为 ado.net 的全新的数据访问技术。它支持各种类型的数 据存储器,优化了单独的数据提供者,适用于远程数据,可以处理大量用户同时访问数据的应用程序。 ado.net 提供了强大的数据环境,更有利于对数据库和数据表的直接操作和处理,提高了编程效率 和可靠性。旧的手工纪录的宿舍管理方式已经不能适应高速发展的信息化时代,新的宿舍管理系统开 发出来之后,学校的现有的宿舍信息管理将有很大的改观,由过去的人工方式转变为计算机方式,由 效率低、数据冗余、易产生错误转变为检索迅速、查找方便、可靠性高、存储量大。这些优点能够极 大地提高效率,也是学校科学化、正规化管理的重要条件。 关键词关键词 宿舍管理系统、数据库、管理、信息 - 3 - 引引 言言 高校 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多 学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接 受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。 而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许 多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机 化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就 会有新的技术诞生并取代旧技术。21 世纪的今天,信息社会占着主流地位,计算机在各行各业中的运 用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我针对以上情况,设计了一套 高校学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会 感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相 当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的高校提 供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备完 善的报表生成、修改等功能,能够快速的查询学校所需的住宿信息。 - 4 - 第一章第一章 系统需求分析系统需求分析 目前,我们学校的宿舍管理采用的还是人工来进行管理的, 面对目前学校发展的实际状况,我通 过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。 1.11.1 功能需求功能需求 .1 基本功能需求基本功能需求 本课题要实现的是高校学生宿舍管理系统,在设计该系统时,应尽可能的贴近学生,便于用户操作。 系统在实现上应该具有如下功能: 1.系统要求用户必须输入正确的用户名和密码才能进入系统。 2.系统应该提供学生住宿情况的基本登记。 3.系统应提供学生每学期的注册及学生的离校处理。 4.系统应提供人员来访的详细登记。 5.系统应提供学生在校期间物品出入宿舍楼的详细情况登记。 6.系统应提供查询功能,以方便用户对学生基本信息的查询(要实现按多种条件的查 询)及楼房信息的查询。 7.系统应提供增加、删除、修改用户帐户的功能和对帐户的权限进行设定。 8.系统应提供对学生宿舍的出勤和卫生进行登记。 9.系统还应具有添加、修改、删除学生及员工基本信息的功能。 .2 报表需求报表需求 高校学生宿舍管理系统的某些信息应当能够以报表形式打印出来。基本上应该能够实现学生基本 信息的报表打印、某宿舍具体住宿情况的报表打印、某栋宿舍楼的住宿情况的报表打印、所有学生各 年度宿舍交费情况打印、学生宿舍出勤情况和卫生情况的报表打印、学生物品出入信息的报表打印及 人员来访信息的报表打印等的功能。 1.1.3 用户界面需求用户界面需求 高校学生宿舍管理系统应提供简单、层次关系明了、清晰的操作界面,使用户一目了然。尽可能 的为用户的录入、查询等功能操作提供方便。 1.21.2 性能需求性能需求 .1 系统安全性系统安全性 高校学生宿舍管理系统中的增加用户、学生学期注册、学生毕业离校等的某些模块都是和学生住 宿费相联系在一起的,只有每年度的住宿费用交纳完毕才准许该生离校,所以在系统的管理权限上应 当进行严格控制,具体思想如下: 1.要想对该学生宿舍管理系统进行操作就应当具有某些操作权限。没有权限的用户将不能通过任 何渠道来登录该系统,查看该系统的任何信息和数据,以确保系统的严密性和安全性。 2.在上述要求基础上可以为该系统设定两种登录方式,即系统管理员登录和普通用户登录,没有 - 5 - 系统管理员或者普通用户的用户名和密码任何人都不能登录该系统,而且管理员可以对每个用户赋予不 同模块的操作权限。 1.3 数据库选择数据库选择 数据库是数据管理的最新技术,是计算机科学的重要分支。近年来,数据库管理系统已从专用的 应用程序包发展成为通用系统软件。由于数据库具有数据结构化、最低冗余度、较高的程序与数据独 立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。 由于用到的数据表格多,另外考虑到实际情况,学生基本信息的变动,还有员工信息的多少的变 化,我们选用 sql server 2000 作为数据库开发,而不用 access,主要是因为 access 存放的记录,在实 际运用中不适合此系统;而 sql server 2000 是一种常用的关系数据库,能存放和读取大量的数据,管 理众多并发的用户,故选用 sql server 2000 数据库。 1.41.4 开发环境开发环境 本系统是以 windows 2000 server 系统为开发平台,用 visual studio.net 中的 c#编程语言和 sql server 2000 数据库来实现高校学生宿舍管理系统所需的功能。 1.51.5 本章小结本章小结 本章具体介绍了系统的需求分析,通过对系统的需求分析得出了系统的总体设计,确定了系统的 开发框架。本章对系统的功能作了简单的描述,得出了系统的主体流程。通过对系统的各项分析,得 出了实现系统功能的基本方法,并确定使用的开发工具。 - 6 - 第二章第二章 相关知识点介绍相关知识点介绍 2.12.1 软件工程软件工程 软件工程是指导计算机软件开发和维护的一门学科。采用工程的概念、原理、技术和方法来开发 与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以 经济地开发出高质量的软件并有效的维护它。 (1) 软件工程的基本原理 自从 1968 年在联邦德国召开的国际会议上正式提出并使用了“软件工程”这个术语以来,研究软 件工程的专家学者们陆续提出了 100 多条关于软件工程的准则或“信条” 。著名的软件工程专家 b. w. boehm 综合这些学者们的意见并总结了 trw 公司多年开发软件的经验,于 1983 年在一篇论文中提出了 软件工程的七条基本原理。这七条原理是相互独立的,其中任意六条原理的组合都不能代替另一条原 理。 软件工程的七条基本原理: 1. 用分析阶段的生命周期计划严格管理。 2. 坚持进行阶段评审。 3. 实行严格的产品控制。 4. 采用现代的程序设计技术。 5. 结果应能清楚地审查。 6. 开发小组的人员应该少而精。 7. 承认不断改进软件工程实践的必要性。 2.22.2 c#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.32.3 ado.netado.net 知识介绍知识介绍 ado.net 提供对 microsoft sql server 等数据源以及通过 ole db 和 xml 公开的数据源的一致 访问。数据共享使用者应用程序可以使用 ado.net 来连接到这些数据源,并检索、操作和更新数据。 ado.net 有效地从数据操作中将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。 ado.net 包含用于连接到数据库、执行命令和检索结果的 .net framework 数据提供程序。您可以直 - 7 - 接处理检索到的结果,或将其放入 ado.net dataset 对象,以便与来自多个源的数据或在层之间进行 远程处理的数据组合在一起,以特殊方式向用户公开。ado.net dataset 对象也可以独立于 .net framework 数据提供程序使用,以管理应用程序本地的数据或源自 xml 的数据。 ado.net 类在 system.data.dll 中,并且与 system.xml.dll 中的 xml 类集成。当编译使用 system.data 命名空间的代码时,请引用 system.data.dll 和 system.xml.dll。 2.42.4 sqlsql serverserver 20002000 知识介绍知识介绍 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.52.5 本章小结本章小结 本章重点介绍了开发“高校学生宿舍管理系统”所使用的开发工具与应用的数据库 - 8 - 系统。对 c# 的发展与相关控件技术进行了系统的介绍。sql server 2000 作为应用最广 泛的数据库系统,它最大限度的支持了系统的需求,实现了系统的各项功能。两种工具 有机的结合开发出的系统恰好地满足了用户的需求。 本章通过介绍面向对象的编程和两种工具的发展与相应的技术,使大多数人明白本 系统的开发原理与相关技术的应用。 - 9 - 第三章第三章 宿舍管理系统宿舍管理系统详细设计详细设计 3.13.1 系统功能模块系统功能模块图图 图 3.1 系统功能模块图 在整体设计中,我们将宿舍管理系统分为八个大的模块:系统设置模块、公寓管理模块、学生管 理模块、信息查询模块、出入登记模块、用户管理模块、数据备份模块、帮助模块。每个模块将实现 - 10 - 不同的功能,下面将具体进行介绍。 .1 系统设置模块系统设置模块 系统设置模块包括:用户密码修改、更改背景、退出系统三个部分。 1.密码修改:实现所有用户的密码更改功能。 2.更改背景:实现对主窗体的背景进行更改。 3.退出系统:实现正常退出宿舍管理系统。 .2 公寓管理模块公寓管理模块 公寓管理模块包括:楼房管理、宿舍管理、员工管理、卫生管理四个大的部分。 1.楼房管理:登记学校所有住宿楼情况。 2.宿舍管理:登记学校所有宿舍的情况。 3.员工管理:实现楼房管理人员的添加、修改、注销等功能。 4.卫生管理:实现对学生宿舍的卫生进行进行添加、修改、删除等功能。 .3 学生管理模块学生管理模块 学生管理模块包括:基本信息录入、个人财物登记、学期注册管理、学生离校管理、学生出勤管 理五项功能。 1.基本信息录入:实现学生基本信息情况的登记及宿舍的分配功能。 2.个人财物登记: 登记学生在校期间所拥有的公共财物的登记情况。 3.学期注册管理:登记学生在校期间每学期的宿舍缴费情况。 4.学生离校管理:实现学生毕业离校处理,注销该学生信息。 5.学生出勤管理:实现对学生宿舍的住宿情况进行登记。 .4 信息查询模块信息查询模块 信息查询模块基本上包括:住宿信息查询、人员来访查询、物品进出查询、出勤情况查询、宿舍 卫生查询、员工信息查询七个功能模块,在以上该模块中,当查询完毕后可以直接以报表形式进行输 出打印并且还可以重新设计该报表的样式,如果不想以报表形式进行输出打印,用户还可以将其导出 为 excel 表格形式,然后在进行输出打印。 1.住宿信息查询:在该模块中又分别划分三个子模块:楼房查询、宿舍查询、学生查询。 1.1 楼房查询:通过楼房号来查询楼房的使用情况的查询。 1.2 宿舍查询:通过楼房号和宿舍号来查询宿舍的使用情况的查询。 1.3 学生查询:对学生的基本信息进行查询。 2. 人员来访查询:对出入宿舍楼的外来人员的情况进行的查询。 3.员工信息查询:通过工号来查询员工的基本情况信息。 4.出勤情况查询:通过楼房号、宿舍号和日期字段来查询学生宿舍的出勤情况。 5.学期注册查询:通过学号、所交年度和交费状况字段来查询学生的注册信息。 6.宿舍卫生查询:通过楼房号、宿舍号和日期字段来查询学生宿舍的卫生情况。 7.物品进出查询:对学生搬入和搬出宿舍楼的物品情况进行查询。 - 11 - .5 出入登记模块出入登记模块 出入登记模块包括:物品进出登记、人员来访登记两个功能模块。 1.物品进出登记:详细登记某学生搬入和搬出宿舍楼的物品情况。 2.人员来访登记:详细登记出入宿舍楼的外来人员情况。 .6 用户管理模块用户管理模块 用户管理模块包括:添加用户、权限管理两个功能模块。 1. 添加用户:可以添加用户、修改用户、注销用户。 2. 权限管理:对用户的权限进行控制。 .7 数据备份模块数据备份模块 数据备份模块包括:备份数据库、还原数据库两个功能模块。 1. 备份数据库:对当前使用的数据库进行整体备份。 2. 还原数据库:对所备份的数据库进行整体还原。 .8 帮助模块帮助模块 帮助模块包括:关于模块。 1.关于模块:是对学生宿舍管理系统开发者相关信息的一个简单介绍。 - 12 - 3.23.2 系统系统 e-re-r 图图 在我所设计的模块中,主要涉及到员工、楼房、寝室这三个实体,所以在 e-r 图中我只是将这三 个实体的属性进行了详细说明。 图 3.2 系统 e-r 图 3.33.3 系统所需表系统所需表 综合以上分析,要实现上面的所有功能模块,共需要设计十二个表,它们分别是:学生基本情况 - 13 - 表、寝室表、员工表、楼房表、人员来访表、学生财产表、学期注册表、权限表、物品出入楼表、用 户表、宿舍出勤表、宿舍卫生表。 3.3.1 系统表系统表 1.用户表:登记用户名、密码及登录权限和在职状态。 2.学生基本情况表:详细登记学生基本信息及学生住宿情况。 3.寝室表:登记所有宿舍的详细情况。 4.员工表:登记所有宿舍员工的详细情况。 5.人员来访表:登记所有来访人员的详细情况。 6.物品出入表:详细登记学生物品出入楼信息。 7.楼房表:登记所有宿舍楼情况。 8.学期注册表:登记学生每学期的注册情况。 9.学生财产表:登记学生入住时的宿舍的物品情况。 10. 权限表:用来登记用户的权限模块。 11. 宿舍出勤表:登记学生宿舍的出勤情况。 12. 宿舍卫生表:登记学生宿舍的卫生情况。 表 3.1 用户表(loginin) 字段名描述数据类型数据长度 nullprimarykey username 用户名varchar 20ny user pwd 用户密码varchar 20nn userpower 用户权限varchar 1nn truename 真实姓名varchar 20nn linktel联系电话varchar 20yn linkaddre地址varchar 80nn state在职状态varcha 1nn remark备注varchar 400yn - 14 - 表 3.2 学生基本情况表 (student) 字段名描述数据类型数据长度 nullprimarykey stu_id 学号varchar 20ny stu_name 姓名varchar 20nn stu_sex 性别varchar 2nn hou_id 楼房号varchar 10nf dor_id 寝室号varchar 10nf stu_enr 入学日期 datetime8nn stu_birth 出生日期 datetime8nn stu_study 所学专业varchar 20nn stu_class 班级varchar 20nn stu_cname 辅导员varchar 20nn stu_polit 政治面貌varchar 10nn stu_add 家庭住址varchar 80nn stu_tel 联系方式varchar 20yn stu_ptel 个人电话varchar 20yn stu_sta 在校状态varchar 10nn stu_des 备注varchar 400yn 表 3.3 学生寝室表 (dorm) 字段名描述数据类型数据长度 nullprimarykey hou_id 楼房号varchar 10nf dor_id 寝室号varchar 10nn dor_sex 居住性别 char2nn dor_num 应住人数 int4nn dor_fact 实住人数 int4yn dor_price 住宿费用varcha 10nn dor_telone 电话 1varchar 20yn dor_teltwo 电话 2varchar 20yn - 15 - dor_des 备注varchar 400yn 表 3.4 员工表 (employee) 字段名描述数据类型数据长度 nullprimarykey emp_id 员工号varchar 10ny emp_name 姓名varchar 20nn emp_sex 性别 varchar2nn hou_id 楼房号varchar 10nf emp_job 职位varcha 10nn emp_add 家庭住址varchar 80nn emp_tel 联系方式varchar 20yn emp_des 备注varchar 400yn 表 3.5 人员来访表 (visit) 字段名描述数据类型数据长度 nullprimarykey vis_id 自动编号 bigint8ny vis_name 来访人姓名varchar 20nn vis_host 被访人姓名varchar 20nn hou_id 楼房号varchar 10nf dor_id 寝室号varchar 10nf relation 所属关系 varchar10nn vis_data 来访日期 datetime8nn vis_watch 值班人varchar 20nn vis_cred 证件名称varchar 20yn vis_crednb 证件编号varchar 20yn vis_des 备注varchar 400yn 表 3.6 物品出入楼表 (goodsmove) 字段名描述数据类型数据长度 nullprimarykey - 16 - move_id 自动编号 bigint8ny stu_id 学号varchar 20nn stu_name 姓名varchar 20nn hou_id 楼房号varchar 10nf dor_id 寝室号varchar 10nf g_in 进楼物品varchar 80yn g_out 出楼物品varchar 80yn g_date 日期 datetime8nn watch 值班人varchar 20nn g_des 备注varchar 400yn 表 3.7 楼房表 (house) 字段名描述数据类型数据长度 nullprimarykey hou_id 楼房号varchar 10ny hou_add 所处地址varchar 80nn hou_num 楼层数varchar 10nn hou_rom 房间数varchar 10nn hou_peo 应住人数 int4nn hou_fact 实住人数 int4yn hou_des 备注varchar 400yn 表 3.8 学期注册表 (enroll) 字段名描述数据类型数据长度 nullprimarykey stu_id 学号varchar 20ny stu_name 姓名varchar 20nf hou_id 楼房号varchar 10nf dor_id 寝室号varchar 10nf enr_date 注册日期 datetime8ny enr_price 所交费用varchar 10nn - 17 - enr_sta 交费情况varchar 10nn enr_year 所交年度varchar 10nn enr_des 备注varchar 400yn 表 3.9 学生财产表 (riches) 字段名描述数据类型数据长度 nullprimarykey stu_id 学号varchar 20ny stu_name 姓名varchar 20nn hou_id 楼房号varchar 10nf dor_id 寝室varchar 10nf bed 床位号varchar 10yn stool 凳子号varchar 10yn desk 桌子号varchar 10yn keysend 钥匙发否varchar 10yn box 箱子号varchar 10yn bedding 被子号varchar 10yn ric_des 备注varchar 400yn 表 3.10 宿舍卫生表 (dorsanit) 字段名描述数据类型数据长度 nullprimarykey hou_id 楼房号varchar 10ny dor_id 寝室varchar 10ny sanit_name 值日生varchar 20nn sanit_succ 分数 int4nn watch 值班人varchar 20nn sanit_date 日期 datetime8ny sanit_des 备注varchar 400yn - 18 - 表 3.11 宿舍出勤表 (dorout) 字段名描述数据类型数据长度 nullprimarykey hou_id 楼房号varchar 10nf dor_id 寝室varchar 10nf out_sfqq 是否全勤varchar 2nn out_nub 缺勤人数int 4yn out_why 缺勤原因varchar 80yn watch 值班人varchar 20nn out_date 日期 datetime8nn out_des 备注varchar 400yn 表 3.12 用户权限表( userqx) 字段名描述数据类型数据长度 nullprimarykey username 用户名varchar 20ny menu1 菜单 1varchar 1nn menu2 菜单 2varchar 1nn menu3 菜单 3varchar 1nn menu4 菜单 4varchar 1nn menu5 菜单 5varchar 1nn menu6 菜单 6varchar 1nn menu7 菜单 7varchar 1nn menu8 菜单 8varchar 1nn 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.43.4 具体模块设计具体模块设计 在系统功能模块介绍时,我把整个系统分为系统设置模块、公寓管理模块、学生管理模块、信息查 询模块、出入登记模块、用户管理模块、数据备份模块、帮助模块八个基本模块。如下图是我的高校 学生宿舍管理系统的主界面: 图 3.3 宿舍管理系统主界面 .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 - .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 属性的 值修改的代码就可以。 - 21 - 3.4.3 公寓管理模块详细设计公寓管理模块详细设计 由于楼房管理、宿舍管理、员工管理和卫生管理这四个功能模块在具体编程实现上基本一样,下 面我仅以楼房管理为例来说明一下这四个功能模块的详细实现过程,其余三个模块仅介绍其设计思想。 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 控件中的某 - 22 - 条记录使起变为选中状态,这样也可以将记录在文本框中显示,用户除楼房编号外其它信息都可进行 修改,但除备注和实住人数外,其它的均不能为空,否则系统将会提示你操作失败,如果由于楼房老 旧或改为其它用途时可通过在删除页框中将该楼房信息进行注销。 (4).我还设置了一个备注字段,是为了方便学校登记该楼房的其它相关情况。 (5).无论是添加、修改还是删除均采用调用 sql 的存储过程来完成相关的操作。 2.宿舍管理 图 3.7 宿舍管理界面 设计思想: 宿舍管理是对每栋楼房所有宿舍的一个详细情况登记,每个宿舍在数据库里面的信息都是就静态 的只有里面的实住人数是动态增加的,当某个宿舍增加或减少一个学生实住人数会自动加 1 或减 1, 实现动态增减。 3.员工管理 - 23 - 图 3.7 员工管理界面 设计思想: 员工管理是对楼房管理人员、清洁工、保卫人员进行的登记管理。该模块是有系统管理员来完成 的,没有赋予权限的用户是不能对该模块进行操作。当某栋楼房调来新员工时,系统管理员可以通过 此功能来添加、修改、删除员工基本信息。 4.卫生管理 图 3.8 卫生管理界面 - 24 - 设计思想: 卫生管理是对学生宿舍的卫生进行登记管理。该模块是将宿舍的卫生情况进行每日登记,这样就 可以通过查询来进行及时反馈某栋宿舍楼中某个宿舍的卫生情况和作为宿舍卫生评比的依据。 .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 学生出勤管理界面 设计思想: 学生出勤管理是对学生宿舍的每日入住情况进行登记,如果宿舍为全勤,那么缺勤人数和缺勤原 因文本框将不可用。如果该宿舍不是全勤,就应该填写该内容,以便及时反映出宿舍在某日的住宿情 况。 .5 出入登记功能详细设计出入登记功能详细设计 由于物品进出登记和人员来访登记两个功能模块在具体编程实现上和以上的模块基本一样,下面 我仅介绍一下两个模块的设计思想。 1. 人员来访登记 图 3.11 人员来访登记界面 - 28 - 设计思想: 人员来访登记是对学生宿舍外来人员进行登记,为了保证住宿生的人身和财物安全,当外来人员 要进入某个宿舍时,必须登记后才能对某个学生进行探访,否则可以拒绝该人的探访。 2. 物品进出登记 图 3.12 物品进出登记界面 设计思想: 物品进出登记是对学生宿舍进出的物品进行登记,为了保证住宿生的财物和宿舍的财物安全,当 某个学生要带出和带入宿舍财物时,必须进行登记。 .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 事件中分别写入相应的代码来实 现查询、打印和导出功能,详细代码请查看附录 a。当单击导出时,就会触发 button 按钮的 click 事 件,该事件是将 gridcontrol 中显示的数据导出为 excel 表,并且保存在系统的 excel 文件下。当 单击打印时,就会弹出打印对话框(如图 3.14) ,在该对话框上分别有打印、预览、设计三个选项,当 选择打印时就会调用 fastprint.cs 组件类将其预先设计好的报表模板打印出来,如果选择了预览就会把 预先设计好的报表显示出来(如图 3.15) ,然后在打印,当用户对模板报表不满意时可以选择设计,当 选择设计后系统会调用 fastreport 报表编辑器,用户打开后可以自行设计自己想要的报表。 (3).在按某个条件查询时首先要通过编程判断一下,数据库的学生注册信息表中是否存在该记录, 如果没有系统会在表格中显示空集。 (4).上述完成之后,输入所查询的条件,那么所需学生注册信息就会在下面表格中显示出来了。 图 3.14 打印设置 - 30 - 图 3.15 预览报表 2.楼房查询 图 3.16 楼房入住情况查询 设计思想: 楼房入住情况查询是具体的针对某栋宿舍楼的使用情况进行查询,是通过楼房号字段来实现该栋宿 舍楼使用情况的查询。 3.宿舍查询 图 3.17 宿舍入住情况查询 设计思想: 宿舍入住情况查询是具体的针对某栋宿舍楼的某个宿舍的使用情况进行查询,是通过楼房号和宿 舍号字段来实现该栋宿舍楼某个宿舍使用情况的查询。 4.人员来访登记查询 设计思想: 人员来访登记查询是针对外来人员出入宿舍的情况进行查询,通过来访人姓名、被访人姓名和日 期字段来查询出

温馨提示

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

评论

0/150

提交评论