宿舍管理系统文档
- 格式:doc
- 大小:1.64 MB
- 文档页数:33
寝室管理文档网站目的:为了更好的管理寝室同学们的信息资料,同时也为了大家对寝室管理系统的了解,我们为此做了一些主要的查询功能方便大家去实现。
小组成员以及分工:张中南:主要负责网站的后台管理设计与制作以及网站一些主要功能实现的asp编程;叶永杰:负责网站一些主要界面的设计和制作;下面是一些主要的数据库:注册用户:学生:寝室;网站主要版块和功能介绍:我们最终完成的网站基本上符合了我们起初的设想,版块和功能也大致上达到了目的,下面是对该网站的大致介绍:网站分为两部分:分为前台操作和后台管理;前台操作:主要界面介绍:主要面主要分为这样几个模块:登录框,用户注册,修改资料,学生管理,宿舍管理,查询模块,添加,删除;登录模块:用户注册:登录的前提是注册(如上图),上面就是注册模块,注册完毕以后登录,就可以享受查询等其他功能;下面是登录后显示的信息,提示你成功登录,并且告诉用户是什么时候注册和目前是第几次查看网页;修改资料修改资料是针对想修改该用户的信息资料,就如上图所示;学生管理:这里显示的是该宿舍中的学生,同时也可对其进行添加,编辑,删除;宿舍管理添加:编辑修改:删除操作:上面显示的是各寝室学生的信息,也可对其进行添加,修改,删除;查询模块:该模块包括学生信息查询和寝室查询,统计三大块;学生信息查询:寝室查询:学生查询结果:寝室查询结果学生统计数据:寝室统计数据:实训总结:虽然整个系统下来,我们做得不怎么像样,做的也很简单,也没有别人的系统的功能那么完善和丰富。
但这个结果却是根据我们组员的实力,很团结的合作,很努力的学习做出来的。
虽然实训下来,我们看到了自己很差劲的实力,但哪怕做出了一点点东西我们也都很开心,不能说实训下来我们得到了多少提高,但至少我们跨出了编程以及做系统的第一步,我们不会象以前那样再也不敢动手,虽然实训结束了,但我想我们对这个不再害怕也有兴趣之后,我们还是会去完善我们的这个系统的!。
宿舍管理系统宿舍管理系统一、引言随着高校学生数量不断增加,宿舍管理工作愈加繁琐,如何有效地开展宿舍管理工作成为学校管理者不得不面对的一个问题。
当前,宿舍管理工作主要依靠人工进行,反应速度慢,工作效率低下。
因此,为了更好地实现宿舍管理的自动化,本文拟设计一款宿舍管理系统。
二、系统功能1. 入住管理:学生首次入住时填写个人信息和宿舍信息,管理员通过系统审核后确认入住。
2. 住宿申请:学生通过系统提交住宿申请,具体信息包括请假时间、请假事由,管理员通过系统审核后确认。
3. 住宿费用管理:管理员通过系统记录每个学生的住宿费用,包括电费和水费等;学生可通过系统查询自己的住宿费用。
4. 宿舍卫生管理:每周定期进行宿舍卫生检查,管理员通过系统记录学生宿舍的卫生情况,并给出相应的扣分情况。
5. 绿色能源管理:通过智能电表和水表进行监控,统计能源消耗情况,从而实现绿色能源的管理;管理员通过系统记录每个学生的能源消耗情况。
6. 安全管理:学生离开宿舍时需在系统中进行签退,确保宿舍的安全。
7. 公告管理:管理员可以通过系统发布宿舍公告,学生可以通过系统查看公告信息。
8. 宿舍评分:管理员通过系统记录宿舍卫生、住宿纪律等各方面情况,对每个宿舍进行评分,为宿舍之间进行比较和激励。
三、系统设计1. 系统架构系统分为客户端和服务器端两部分,服务器端主要包括数据存储和管理、逻辑处理等功能,而客户端主要给用户提供了数据的展示、交互、输入等功能。
系统采用分层架构,将客户端和服务器端分为四个层次:表示层、控制层、业务逻辑层、数据访问层。
2. 技术方案系统采用Web开发技术,前端页面采用HTML、CSS和JavaScript编写,后端使用Java语言,数据库使用MySQL。
3. 功能模块系统设计了入住管理模块、住宿申请模块、住宿费用管理模块、宿舍卫生管理模块、绿色能源管理模块、安全管理模块、公告管理模块、宿舍评分模块等多个功能模块。
四、效果展示系统UI界面简洁明了,操作方便,可以为学生和管理员提供比较好的使用体验。
引言概述:学生宿舍管理系统是为了提高学生宿舍管理效率和便利性而开发的一种软件工具。
本文是《学生宿舍管理系统》系列的第二篇,将详细介绍该系统的五个主要功能模块,包括学生信息管理、宿舍分配管理、设备维修管理、卫生检查管理和安全管理。
正文内容:一、学生信息管理:1. 学生信息录入:通过系统录入学生的基本信息,例如姓名、性别、年级、专业等。
2. 学生信息查询:提供学生信息查询功能,包括按姓名、学号、年级等条件查询学生信息。
3. 学生信息修改:允许管理员对学生信息进行修改,包括学生的联系方式、紧急联系人等。
4. 学生信息删除:确保只有管理员才能删除学生信息,避免误操作。
5. 学生信息导入导出:支持将学生信息导出为Excel或CSV格式,方便管理员进行备份和数据分析。
二、宿舍分配管理:1. 宿舍分配规则:制定宿舍分配的规则,例如按性别、年级、学号等进行分配。
2. 宿舍分配策略:根据规则自动分配宿舍,确保公平合理。
3. 宿舍信息录入:管理员可录入宿舍楼栋、房间号及床位数等宿舍信息。
4. 宿舍信息查询:提供宿舍信息查询功能,包括宿舍楼栋、空床位等。
5. 宿舍调换管理:允许学生和管理员通过系统提交宿舍调换申请,并进行审核和处理。
三、设备维修管理:1. 设备信息录入:管理员可录入学生宿舍内的设备信息,例如电视、洗衣机等。
2. 设备维修申报:学生可以通过系统提交设备维修申报,并提供详细的问题描述。
3. 维修任务分派:管理员根据设备问题的紧急程度和维修人员的工作负荷合理分派维修任务。
4. 维修进度跟踪:管理员可以实时跟踪设备维修的进展情况,并及时向学生反馈。
5. 维修记录统计:系统能够记录设备维修的历史记录,便于管理员进行维修统计和分析。
四、卫生检查管理:1. 检查计划制定:管理员能够制定卫生检查的计划,并设定检查频次和具体的检查项目。
2. 检查任务分配:将检查任务分配给相关人员,并提供检查表格和评分标准。
3. 检查结果记录:检查人员通过系统录入卫生检查结果,并按照评分标准进行评分。
宿舍管理系统系统设计说明书宿舍管理系统系统设计说明书1. 引言1.1 目的1.2 范围1.3 定义2. 需求概述2.1 功能需求2.1.1 学生信息管理2.1.2 宿舍楼信息管理2.1.3 宿舍房间信息管理2.1.4 宿舍床位信息管理2.1.5 维修申请管理2.1.6 报修处理管理2.1.7 支付管理2.1.8 入住退房管理2.1.9 角色权限管理2.2 非功能需求2.2.1 安全性2.2.2 可靠性2.2.3 可用性2.2.4 性能2.2.5 可维护性2.2.6 可扩展性2.2.7 用户界面3. 系统设计3.1 架构设计3.1.1 客户端-服务器模式 3.1.2 分层架构3.2 数据库设计3.2.1 学生信息表设计3.2.2 宿舍楼信息表设计 3.2.3 宿舍房间信息表设计3.2.5 维修申请信息表设计3.2.6 报修处理信息表设计3.2.7 支付信息表设计3.2.8 入住退房信息表设计3.2.9 角色权限信息表设计3.3 界面设计3.3.1 学生信息管理界面设计3.3.2 宿舍楼信息管理界面设计 3.3.3 宿舍房间信息管理界面设计 3.3.4 宿舍床位信息管理界面设计 3.3.5 维修申请管理界面设计3.3.6 报修处理管理界面设计3.3.7 支付管理界面设计3.3.8 入住退房管理界面设计3.3.9 角色权限管理界面设计3.4 业务流程设计3.4.2 宿舍楼信息管理流程设计 3.4.3 宿舍房间信息管理流程设计 3.4.4 宿舍床位信息管理流程设计 3.4.5 维修申请管理流程设计3.4.6 报修处理管理流程设计3.4.7 支付管理流程设计3.4.8 入住退房管理流程设计3.4.9 角色权限管理流程设计4. 系统实现4.1 开发环境4.2 技术选型4.3 开发工具4.4 编码规范4.5 测试策略4.6 部署策略5. 系统运维5.1 系统监控5.2 故障处理5.3 日志记录和分析5.4 数据备份和恢复5.5 安全策略6. 附件6.1 数据库设计文件6.2 界面设计文件6.3 业务流程设计图6.4 监控配置文件6.5 日志记录文件7. 法律名词及注释7.1 GDPR(通用数据保护条例)- GDPR是指欧盟于2018年5月25日生效的一项涉及个人数据保护的法律条例,旨在加强个人数据的保护和隐私权利。
高校宿舍管理系统摘要:随着科技的不断发展,各种应用系统进入到我们生活中的各行各业,学生宿舍管理系统就是为了方便宿舍管理人员在数据方面的管理,结合当今各学校的宿舍业务管理,为了能全面、准确、有效地管理学生公寓的各种信息而开发及研制的一个系统应用软件。
本文采用了Visual Studio 2005作为设计工具,Access设计数据库,ADO作为访问数据库的方式设计了高校宿舍管理系统,其主要功能有:学生住宿记录管理、删除记录管理和学生综合查询。
关键字:学生宿舍;管理系统;系统软件。
摘要: (1)第一章系统需求分析 (3)1.1功能需求 (4)1.1.1 基本功能需求 (4)1.1.2 用户界面需求 (4)1.2数据库选择 (4)1.4环境 (5)第二章相关知识点介绍 (5)2.1 Visual Studio开发工具介绍 (5)2.2 office Access 数据库开发工具介绍 (7)第三章宿舍管理系统详细设计 (8)3.1系统功能模块图 (8)3.1.1登陆界面 (9)3.1.2主窗体 (10)3.1.3数据录入模块 (10)3.1.3宿舍管理模块 (11)3.1.4出入登记模块 (13)3.1.5信息查询模块 (15)3.1.6 报修维护模块 (16)4.1.6爱心关怀模块 (17)4.2 系统所需表 (17)4.2.1数据表 (17)第五章系统测试 (19)5.1所遇问题 (19)5.2 系统测试 (20)第六章总结 (21)参考文献 (22)第一章系统需求分析目前,我们学校的宿舍管理采用的还是人工来进行管理的, 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。
1.1功能需求1.1.1 基本功能需求本课题要实现的是高校学生宿舍管理系统,在设计该系统时,应尽可能的贴近实际,便于用户操作。
系统在实现上应该具有如下功能:1.系统应该提供学生住宿情况的基本登记。
第1篇一、概述宿舍管理系统是一款专为高校宿舍管理设计的软件,旨在提高宿舍管理的效率,方便宿舍管理人员进行日常管理。
本手册将详细介绍宿舍管理系统的操作流程和使用方法。
二、系统登录1. 打开宿舍管理系统,进入登录界面。
2. 输入用户名和密码,点击“登录”按钮。
3. 登录成功后,系统将自动跳转到主界面。
三、主界面1. 主界面主要包括以下功能模块:(1)宿舍信息管理(2)学生信息管理(3)入住管理(4)退宿管理(5)维修管理(6)查询统计(7)系统设置2. 点击相应模块,进入具体操作界面。
四、宿舍信息管理1. 点击“宿舍信息管理”模块,进入宿舍信息管理界面。
2. 查询宿舍信息:(1)在“宿舍楼”下拉菜单中选择宿舍楼。
(2)在“宿舍号”输入框中输入宿舍号。
(3)点击“查询”按钮,系统将显示该宿舍的基本信息。
3. 添加宿舍信息:(1)点击“添加”按钮,进入添加宿舍信息界面。
(2)输入宿舍楼、宿舍号、床位数、楼层数等信息。
(3)点击“保存”按钮,完成宿舍信息的添加。
4. 修改宿舍信息:(1)在查询结果中,选中需要修改的宿舍信息。
(2)点击“修改”按钮,进入修改宿舍信息界面。
(3)修改宿舍楼、宿舍号、床位数、楼层数等信息。
(4)点击“保存”按钮,完成宿舍信息的修改。
5. 删除宿舍信息:(1)在查询结果中,选中需要删除的宿舍信息。
(2)点击“删除”按钮,系统将提示确认删除。
(3)点击“确认”按钮,完成宿舍信息的删除。
五、学生信息管理1. 点击“学生信息管理”模块,进入学生信息管理界面。
2. 查询学生信息:(1)在“学号”输入框中输入学生学号。
(2)点击“查询”按钮,系统将显示该学生的基本信息。
3. 添加学生信息:(1)点击“添加”按钮,进入添加学生信息界面。
(2)输入学号、姓名、性别、年龄、班级、宿舍号等信息。
(3)点击“保存”按钮,完成学生信息的添加。
(1)在查询结果中,选中需要修改的学生信息。
(2)点击“修改”按钮,进入修改学生信息界面。
综合设计短学期文档学生宿舍管理系统系统名称:郑晓馨陈晓迪小组成员:郑凤吴雅婷郑海霄目录一、需求分析1。
1用户需求1.2数据流图1。
3 数据字典二、系统设计2.1功能设计2.2数据库设计2。
2。
1 数据库概念结构设计2.2.2 数据库逻辑结构设计2.2。
3 数据库物理设计三、系统实现3.1 评分管理模块3.1.1 查询评分信息页3.1。
2 添加评分信息页一、需求分析1.1用户需求本系统为管理者提供了完整的管理平台。
概述了学生寝室管理的需求,整体结构,基本功能和数据库结构.其提供的主要功能可以实现对学生寝室信息的录入、查询等。
本系统的开发是为了方便宿管员的管理以及相关修理信息的更新,为学校领导及老师提供直观、及时方便的学生信息,包括晚归、回家登记、寝室报修,实现各类寝室信息管理工作流程的系统化、规范化和自动化,提高迅速反应能力,提供有效的决策支持.本系统主要实现包含以下功能:1.要求用户必须输入正确地用户名和密码才能进入系统;2、系统提供学生住宿情况的基本登记;3。
系统应提供查询学生宿舍维修情况;4.系统应提供查询功能,以便对学生信息及宿舍信息进行查询;5.系统应提供增加删除修改用户的功能;6.系统提供外来人员来仿记录、维修记录、评分情况等;1.2 数据流图数据流图(Date Flow Diagram)是从数据传递和加工的角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具。
数据流图共有三个方面组成,分别是实体、数据处理、数据存储。
(1)实体--实体是现实世界中客观存在的事物.(2)数据处理——数据处理指对数据流进行某些操作和变换。
每个数据处理有相应的名称,简明的描述完成什么加工。
(3)数据存储--数据存储指系统保存的数据,它一般是数据库文件。
流向数据存储的数据流可以理解为写入文件或查询文件,从数据存储流出的数据可理解为从文件流出或得到查询结果(见图1).实体数据处理数据存储图1 数据流图图例(1)0层数据流图0层数据流图表达了网站总体数据处理和数据流之间的关系。
毕业综合项目(2012届)宿舍管理系统文档目录摘要 (1)一、系统概述 (2)(一)开发背景 (2)(二)开发目标 (2)二、需求规格说明书 (2)(一)用户以及用户权限分析 (2)(二)数据描述 (3)(三)功能需求 (6)(四)性能需求 (7)(五)运行环境规定 (7)三、总体设计说明书 (7)(二)接口设计 (9)(三)系统数据结构设计 (9)四、详细设计说明书 (11)(一)宿舍管理系统所包含的单元文件名称及其程序层次结构 (11)(二)程序(添加学生入住)设计说明 (12)(三)程序(用户登录)设计说明 (13)五、主要代码 .......................................................................................................... 错误!未定义书签。
(一)数据库读写方法的CDATABASE类 (14)(二)传值类CPublic (16)(三)链接数据库的dbConnection类 (16)(四)用户登录类 (17)(五)主界面代码 (18)(六)添加学生入住信息 (20)(七)删除宿舍信息 (22)六、窗体设计 (26)七、系统测试部分 (27)八、系统有待完善部分 (30)九、系统资料索引部分 (30)十、致谢部分 (30)摘要在当今信息技术迅猛发展,知识更替日新月异的时代,信息技术为企业的发展提供了机遇,也带来了挑战。
使用传统人工的方式管理存在着许多缺点,而是使用计算机对宿舍进行管理,有着手工管理所无法比拟的优点,这些优点能够极大地提高宿舍管理系统效率。
高校学生宿舍管理系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于后台数据库的建立和维护要求建立起数据一致性和完整性强、数据安全性好的库。
而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能、界面友好、使用简单方便等特点。
学生宿舍管理系统专业:软件技术组员:石胜华蒋霞张龙班级:10011.问题定义随着中国大学普遍扩招,招收的大学生越来越多,而学生宿舍管理成为高校管理的很重要的一部分。
但目前,很多高校还是采用传统的人工记录的方法,需要记录的数据比较多,而且需要保存的数据也比较多,人工记录、查找信息等都比较麻烦,而且安全性不高. 21世纪的今天,信息化占据着社会主流,计算机在各行各业的的应用越来越广泛,自动化信息化的管理被应用到越来越广泛的领域。
学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,需要系统操作方便,管理人员需要做的就是将数据输入到系统的数据库中去。
管理员和学生利用该系统可完成如下功能:1 管理员可快速查询学生基本信息2 管理员可方便实现楼资源管理3 管理员可实现宿舍资源管理4 管理员可方便实现查询统计该系统采用JA V A开发,后台数据库采用SQL Server 2005。
二可行性分析1 问题(1)目前宿舍管理还都采用人工记录的方法。
(2)需要手工记录很多信息,浪费人力财力,且操作麻烦。
(3)查询学生基本住宿信息时,查询效率低下,不能实现快速查询。
2 项目目标:开发一小型学生宿舍管理系统,要操作方便,并能满足学校学生宿舍管理基本需求。
3 运行环境(1)采用JA V A开发。
(2)后台数据库用SQL Server 2005。
(3)硬件设备为pc机一台。
4 开发风险浪费人力资源时间资源,改变了原有的手工记录的宿舍管理方式,但对原有的管理制度没有任何影响,基本上不会有什么风险,但开发的项目可能过于简单。
5 经济可行性不需投入太多费用,由学生小组共同开发,利用课余时间开发。
只需投入使用几台pc机,以实现学生宿舍计算机化管理。
6 技术可行性该小组成员全部来自学校计算机系,学习了软件工程方面的课程,使所学知识用于实践.7 社会可行性由于是学生小组开发,也锻炼了小组成员的实际动手能力,丰富了阅历,积累开发经验,且开发出的系统由学校内部使用,不涉及盈利方面的问题,不会和社会以及法律造成冲突。
学生宿舍管理系统文档07级计算机科学与技术本(一)班夏举雄 2007115115摘要在各高校扩大招生的形势下,公寓管理的工作变得越来越繁重。
采用传统的人工管理模式,效率低下,不能满足实际的需求。
本文描述的是基于Windows环境的学生公寓管理系统,对学生宿舍管理的需求进行了分析。
本系统的主要功能包括:系统管理员信息管理,宿舍基本信息的管理,学生基本信息是管理,宿舍日常生活的管理,相关数据的报表管理,窗口样式,帮助信息,退出,可以更快地知道每个学生的住宿情况,使公寓的管理效率更高。
系统的设计与开发采用服务器/客户机的系统结构模式,使用VS2005VB开发工具开发,应用Access2003数据库管理系统,通过ADO连接数据库。
本文以一个学生宿舍管理系统的分析、设计和开发的全过程为主线,给出了学生宿舍管理系统的设计和技术实现的过程,特别在细节上分析功能和函数的实现思想。
涉及到学生宿舍管理的基本功能在本文中都有相应的描述。
关键字:VS2005VB,ADO,Access2003,学生宿舍管理系统Student dormitory management system documentationSummaryExpanding enrollment in colleges and universities the situation, the apartment management, work has become increasingly heavy. Traditional manual management mode, low efficiency, can not meet the actual demand.This article describes the Windows environment based on student housing management system, management needs of the student hostels were analyzed. The system's main functions include: system administrator for information management, hostel management of basic information, basic information is to manage students, hostel life management, data management reports, window styles, help, exit, and can more quickly know Each student accommodation, so that more efficient management of the apartment. System design and development using client / server system architecture model, using VS2005VB development tools development, application Access2003 database management system, connect to the database via ADO. In this paper, a student dormitory management system analysis, design and development of the whole process of the main line, given a student hostel management system design and technicalimplementation of the process, especially in the details analyse features and functions in achieving thought. Related to the management of student hostels in this article are the basic functions of the corresponding description. Keywords:VS2005VB, ADO, Access2003, student hostel management system第一章引言21世纪,人类已全面进入数字信息化社会,现在信息技术的应用越来越普及,不但促进了社会的高速发展,也影响着人们的工作、学习、生活和娱乐的方式以及思想观念。
毕业综合项目(2012届)宿舍管理系统文档目录摘要 (1)一、系统概述 (2)(一)开发背景 (2)(二)开发目标 (2)二、需求规格说明书 (2)(一)用户以及用户权限分析 (2)(二)数据描述 (3)(三)功能需求 (6)(四)性能需求 (7)(五)运行环境规定 (7)三、总体设计说明书 (7)(二)接口设计 (9)(三)系统数据结构设计 (9)四、详细设计说明书 (11)(一)宿舍管理系统所包含的单元文件名称及其程序层次结构 (11)(二)程序(添加学生入住)设计说明 (12)(三)程序(用户登录)设计说明 (13)五、主要代码 .......................................................................................................... 错误!未定义书签。
(一)数据库读写方法的CDATABASE类 (14)(二)传值类CPublic (16)(三)链接数据库的dbConnection类 (16)(四)用户登录类 (17)(五)主界面代码 (18)(六)添加学生入住信息 (20)(七)删除宿舍信息 (22)六、窗体设计 (26)七、系统测试部分 (27)八、系统有待完善部分 (30)九、系统资料索引部分 (30)十、致谢部分 (30)摘要在当今信息技术迅猛发展,知识更替日新月异的时代,信息技术为企业的发展提供了机遇,也带来了挑战。
使用传统人工的方式管理存在着许多缺点,而是使用计算机对宿舍进行管理,有着手工管理所无法比拟的优点,这些优点能够极大地提高宿舍管理系统效率。
高校学生宿舍管理系统的开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于后台数据库的建立和维护要求建立起数据一致性和完整性强、数据安全性好的库。
而对于前端应用程序的开发则要求应用程序能提供强大的数据操纵功能、界面友好、使用简单方便等特点。
旧的手工记录的宿舍管理方式已经不能适应高速发展的信息化时代,新的宿舍管理系统开发出了之后,学校的现有的宿舍信息管理将有很大的改观,由过去的人工方式转变为计算机方式,有效率低、数据冗余、易产生错误转变为检索迅速、查找方便、可靠性高、存储量大。
这些优点能够极大地提高效率,也是学校科学化、正规化管理的重要条件。
本系统是采用Microsoft Visual Studio2008作为前台开发工具,SQL Server2005和SQLOLEDB作为后台数据库平台的管理系统。
关键词宿舍入住报修卫生检查来访一、系统概述(一)开发背景目前,有关我校宿舍管理还停留在人员手工用纸质来记录数据阶段,这样既不环保,纸质也容易损坏和占用空间,最重要的是这样容易造成档案丢失,查阅不方便等后果。
当今社会正在飞速的进步,原始的记录方式已经被社会所淘汰,计算机化管理正是顺应时代的产物。
所以,我们决定推出“宿舍管理系统”。
(二)开发目标1.用户可以一目了然宿舍情况——宿舍编号、舍员名字、所属班级、星级;2.干部检查完宿舍可以立即更新宿舍分数;3.保修单可以利用本系统填写;维修人员查看方便,及时维修;4.学生方便查询宿舍电费;二、需求规格说明书(一)用户以及用户权限分析本系统的最终用户分宿舍管理人员、学生、学生干部、维修工人、系统管理人员。
1.用户对系统的要求1)宿舍管理人员在学生入住时,及时查询那个宿舍有空位,安排床位;检查卫生后发布结果;及时更新学校宿舍信息;以及更新水电费缴费记录方便毕业生办理离校事务;方便看到来访记录,处理记录。
2)学生能查询到所在宿舍的信息:宿舍检查后的情况、水电费信息;填写报修单;查询以及处理来访记录。
3)维修工人查询报修单,对每天的工作作出安排。
4)系统管理人员对系统出现的非操作性的错误进行系统维修;处理其它用户信息。
2.系统功能的设计和划分1)用户管理部分①宿舍信息处理、学生入住信息处理、卫生检查信息处理、水电费信息处理、来访信息处理、报修信息处理。
2)系统管理员部分①修改或删除用户信息。
(二)数据描述1.数据流图经过分析,该系统的分层数据流图为下图所示顶层数据流0层数据流图一层数据流图(维修人员)2.数据词典1)数据流①用户信息=用户ID+用户名+密码+权限②宿舍信息=宿舍号+电话+一年住宿费+已有人数+可以容纳人数+其它③检查记录=检查号+宿舍号+检查日期+检查结果+其它④来访记录=来访号+宿舍号+来访人+被访人+来访日期+离开日期+其它⑤学生入住信息=学号+学生名+学生性别+班级+宿舍号⑥维修记录=维修号+宿舍号+维修日期+报修人+预修日期+保修详情+是否已维修⑦交电费记录=缴费号+宿舍号+缴费日期+缴费人+当时电费价格+购买电量2)数据存储(文件)①文件名:用户信息组成:{用户ID+用户名+密码+权限}组织:按用户ID大小排列注:用户ID由数据库自动编号②文件名:宿舍信息组成:{宿舍号+电话+一年住宿费+已有人数+可以容纳人数+其它}组织:按宿舍号大小排列③文件名:检查记录组成:{检查号+宿舍号+检查日期+检查结果+其它}组织:按检查号大小排列注:检查号由数据库自动编号④文件名:来访记录组成:{来访号+宿舍号+来访人+被访人+来访日期+离开日期+其它}组织:按来访号大小排列注:来访号由数据库自动编号⑤文件名:学生入住信息组成:{学号+学生名+学生性别+班级+宿舍号}组织:按来学号排列⑥文件名:维修记录组成:{维修号+宿舍号+维修日期+报修人+预修日期+保修详情+是否已维修} 组织:按维修号大小排列注:维修号由数据库自动编号⑦文件名:交电费记录组成:{缴费号+宿舍号+缴费日期+缴费人+当时电费价格+购买电量}组织:按缴费号大小排列注:缴费号由数据库自动编号3)小说明①加工编号:1加工名:检查有效性输入流:用户名、用户密码输出流:有效的数据库访问要求加工逻辑:检查密码正确性②加工编号:2.1加工名:查询(除用户表之外的宿舍、入住等)表输入流:访问对应表的权限输出流:查询情况加工逻辑:根据权限不同选择Case1:维修工人只可以访问报修表Case2:学生、管理人员可以访问全部表③加工编号:2.2加工名:添加(除用户表之外的宿舍、入住等)表信息输入流:访问对应表的权限输出流:(宿舍、入住等)文件加工逻辑:根据权限不同选择Case1:学生不能修改或删除宿舍记录、入住记录Case2:管理人员可以处理全部表④加工编号:2.3加工名:添加用户表信息输入流:学生入住记录输出流:用户文件加工逻辑:学生一旦入住,其用户名和密码都为学号。
备注:密码修改有另外的加工实现(三)功能需求本系统有宿舍信息处理、学生入住信息处理、卫生检查信息处理、报修信息处理、水电费记录处理、来访登记信息处理、修改用户密码、切换用户等功能。
1.宿舍信息处理1)添加2)查询3)修改4)删除2.学生入住信息处理1)添加2)查询3)修改4)删除3.卫生检查信息处理1)添加2)查询3)删除4.报修信息处理1)添加2)查询3)删除5.水电费信息处理1)添加2)查询3)删除6.来访登记信息处理1)添加2)查询3)删除(四)性能需求1.软件响应时间、更新处理时间较快,用户可接受。
2.数据库中的数据一致性和完整性强、数据安全性好3.应用程序功能完备、易使用。
4.方便用户使用,具有较高的用户友好性。
5.具有较高的可靠性,将系统发生故障的概率控制到最低。
6.具有较强的可维护性。
(五)运行环境规定1.硬件要求:PC服务器。
2.软件平台操作系统:window XP,window7数据库管理系统:SQL Sever 20053.开发环境:Visual 2008三、总体设计说明书(一)总体设计1.需求规定本系统完成我校宿舍的管理工作,系统功能如下表所示宿舍管理系统内容系统名称模块名称功能改宿舍、查询宿舍信息学生入住添加学生入住、删除学生入住、修改学生入住信息、查询学生入住信息卫生检查添加卫生检查结果、删除卫生检查结果、查询记录宿舍报修添加报修单、删除报修单、查询报修单水电费检查添加水电费缴费记录、删除记录、查询记录外来人员登记添加来访记录、删除记录、查询记录2.运行规定(查询本文二.(五))3.结构宿舍管理系统的总体结构如下图所示总体结构图4.功能需求与程序的关系(二)接口设计1.用户接口本系统以鼠标、键盘作为用户接口,方便用户对宿舍信息的操作。
该系统的界面清晰,用户通过输入合法的用户名及密码即可进入此系统。
2.外部接口本系统提供基于SQL的数据导入和导出功能,方便系统数据的备份和恢复。
(三)系统数据结构设计E-R图数据库表结构,如以下所示。
T_ChargeT_DormT_RepairT_StudentT_UserT_Vister数据库表与相应功能模块之间的关系表四、详细设计说明书(一)宿舍管理系统所包含的单元文件名称及其程序层次结构如下表程序层次结构表图1:修改学生入住信息层次结构(二)程序(添加学生入住)设计说明1.功能(见下表)2.输入项学号:10位数字字符学生名:3位字符学生性别:1位字符班级:2位数字字符+字符(如:09web)宿舍号:字符+数字字符(如:东区1403)3.输出项一条学生入住记录,保存在T_student4.流程逻辑“添加学生入住”程序流程图(三)程序(用户登录)设计说明1.功能(见下表)2.输入项用户名:字符串(最长50)密码:字符(最长50)3.输出流登录主界面/重新输入4.流程逻辑“用户登录”程序流程图五、主要代码(一)//数据库读写方法的CDataBase类class CDataBasepublic static string connStr = "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Dormitory;Data Source=.";public static SqlConnection conn = new SqlConnection(connStr );//“读” 数据的静态方法public static DataSet GetDataFromDB(string sqlStr){conn.Open();SqlDataAdapter myAdapter = new SqlDataAdapter(sqlStr, conn);DataSet myDataSet = new DataSet();myDataSet.Clear();myAdapter.Fill(myDataSet );conn.Close();if (myDataSet.Tables[0].Rows.Count != 0){return myDataSet;}else{return null;}}//写数据的静态方法public static bool UpdateDB(string sqlStr){conn.Open();SqlCommand myCmd = new SqlCommand(sqlStr, conn);mandType = CommandType.Text;myCmd.ExecuteNonQuery();conn.Close();return true;}(二)//传值类CPublicclass CPublic{public static string[] userInfo = new string[4];public static string GetMd5Str(string myString){MD5 md5 = new MD5CryptoServiceProvider();byte[] fromData = System.Text.Encoding.Unicode.GetBytes(myString ); byte[] toData = puteHash(fromData );string byteStr = null;for (int i = 0; i < toData.Length; i++){byteStr += toData[i].ToString("x");}return byteStr;}}(三)//链接数据库的dbConnection类class dbConnection{public static string connection{get{return "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Dormitory;Data Source=.";} }}static class Program{static void Main()Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(new FrmLogin());} }(四)//用户登录类private void btnLogin_Click(object sender, EventArgs e){if (txtUserName.Text.Trim() == ""){MessageBox.Show("用户名不能为空,请输入你的用户名", "错误");txtUserName.Focus();return;}else if (txtUserPassword.Text.Trim() == ""){MessageBox.Show("密码不能为空,请输入你的密码", "错误");txtUserPassword.Focus();return;}this.Text = "正在验证...";this.Cursor = System.Windows.Forms.Cursors.WaitCursor;string psw =CPublic.GetMd5Str(txtUserPassword.Text.Trim());string sqlStr = "select Username ,Password,userPurview from T_User where userName = '" + txtUserName.Text.Trim() + " '";CDataBase.conn.Open();SqlCommand cmd = new SqlCommand(sqlStr, CDataBase.conn);SqlDataReader sdr = cmd.ExecuteReader();if (!sdr.Read()){MessageBox.Show("用户名错误,请重新输入!", "错误");this.Cursor = System.Windows.Forms.Cursors.Arrow;this.Text = "";txtUserPassword.Text = "";txtUserName.Focus();}else if (sdr["Password"].ToString().Trim() == psw.Trim()){erInfo[1] = txtUserName.Text.Trim();erInfo[2] = psw.Trim();erInfo[3] = sdr["userPurview"].ToString().Trim();CDataBase.conn.Close();this.Hide();Main ob_Main = new Main();ob_Main.ShowDialog();}else{MessageBox.Show("密码错误,请重新输入!", "错误");this.Cursor = System.Windows.Forms.Cursors.Arrow;this.Text = "用户登录";txtUserPassword.Text = "";txtUserPassword.Focus();}CDataBase.conn.Close();}private void txtUserPassword_KeyDown(object sender, KeyEventArgs e){if (e.KeyCode == Keys.Enter){btnLogin_Click(sender, e); }}(五)//主界面代码private void Main_Load(object sender, EventArgs e){this.statusBarPanel1.Text = "当前登陆用户:" + erInfo[1]; this.statusBarPanel3.Text = DateTime.Now.ToString();this.statusBarPanel4.Text = "学生宿舍信息系统";if (erInfo[3] == "学生用户"){MenuItem9.Enabled = false;MenuItem21.Enabled = false;MenuItem31.Enabled = false;MenuItem41.Enabled = false;MenuItem61.Enabled = false;toolBarButton1.Enabled = false;toolBarButton2.Enabled = false;toolBarButton3.Enabled = false;toolBarButton4.Enabled = false;toolBarButton6.Enabled = false;}if (erInfo[3] == "维修工人") {MenuItem9.Enabled = false;MenuItem21.Enabled = false;MenuItem31.Enabled = false;MenuItem41.Enabled = false;MenuItem61.Enabled = false;MenuItem60.Enabled = false;MenuItem51.Enabled = false;MenuItem42.Enabled = false;MenuItem40.Enabled = false;MenuItem32.Enabled = false;MenuItem30.Enabled = false;MenuItem22.Enabled = false;MenuItem20.Enabled = false;toolBarButton1.Enabled = false;toolBarButton2.Enabled = false;toolBarButton3.Enabled = false;toolBarButton4.Enabled = false;toolBarButton5.Enabled = false;toolBarButton6.Enabled = false;} }//修改密码private void MenuItem2_Click_1(object sender, EventArgs e){Form modifycode = new ModifyCode();for (int x = 0; x < this.MdiChildren.Length; x++){Form tempChild = (Form)this.MdiChildren[x];tempChild.Close();}modifycode.MdiParent = this;modifycode.Tag = this.statusBarPanel2.Text.Trim();modifycode.Show();}}(六)//添加学生入住信息private void button1_Click(object sender, EventArgs e){if (textDormID.Text.Trim() =="" || textName.Text.Trim() =="" || textStID.Text.Trim()== ""){MessageBox.Show("请填写完整信息", "确定");}else{string sql="select * from T_Dorm whereDormID='"+textDormID.Text.Trim ()+"'";CDataBase.conn.Open();SqlCommand cmd = new SqlCommand(sql, CDataBase.conn);SqlDataReader sdr = cmd.ExecuteReader();if (null == sdr){MessageBox.Show("没有该房间号,请重新输入", "提示"); sdr.Close();CDataBase.conn.Close();return;}sdr.Close();sql = "select * from T_Dorm where DormID = '" + textDormID.Text.Trim() + "' and (AllowPeople-InPeople)>0";SqlCommand cmd1 = new SqlCommand(sql, CDataBase.conn);SqlDataReader sdr1 = cmd1.ExecuteReader();if (!sdr1.Read()){MessageBox.Show("该房间已满", "提示");CDataBase.conn.Close();sdr1.Close();return;}else{sdr1.Close();sql = "select * from T_Student where Sno='" + textStID.Text.Trim() + "'";SqlCommand cmd2 = new SqlCommand(sql, CDataBase.conn); SqlDataReader sdr2 = cmd2.ExecuteReader();if (sdr2.Read()){MessageBox.Show("学号重复", "提示");CDataBase.conn.Close();sdr2.Close();return;}else{sdr2.Close();string psw = CPublic.GetMd5Str(textStID.Text.Trim()); sql = "insert into T_Student values ('" + textStID.Text.Trim() + "','" + textName.Text.Trim() + "','" + combSex.Text.Trim() + "','" + textClass.Text.Trim() + "','" + textDormID.Text.Trim() + "')";mandText = sql;cmd.ExecuteNonQuery();string sql2 = "insert into T_User values ('" + textStID.Text.Trim() + "','" + psw.Trim() + "','学生用户')";mandText = sql2;cmd.ExecuteNonQuery();string sql3 = "update T_Dorm set InPeople=InPeople+1 where DormID='" + textDormID.Text.Trim() + "'";mandText = sql3;cmd.ExecuteNonQuery();MessageBox.Show("添加成功", "提示");clear();}}CDataBase.conn.Close(); } }private void clear(){textStID.Text = "";textName.Text = "";textDormID.Text = "";textClass.Text = "";combSex.Text = "";}(七)删除宿舍信息private void button2_Click(object sender, EventArgs e){if (dataGrid1.DataSource != null && dataGrid1.CurrentRowIndex >= 0 && dataGrid1[dataGrid1.CurrentCell] != null){oleConnection1.Open();string sql = "select * from T_Dorm where '" +ds.Tables["T_Dorm"].Rows[dataGrid1.CurrentCell.RowNumber][3].ToString().Trim()+"'> 0 and DormID='" +ds.Tables["T_Dorm"].Rows[dataGrid1.CurrentCell.RowNumber][0].ToString().Trim() + "'";OleDbCommand cmd = new OleDbCommand(sql, oleConnection1);OleDbDataReader dr = cmd.ExecuteReader();if (dr.Read()){MessageBox.Show("删除宿舍'" +ds.Tables["T_Dorm"].Rows[dataGrid1.CurrentCell.RowNumber][0].ToString().Trim() + "'失败,请先删该宿舍学生", "提示");dr.Close();}else{dr.Close();sql = "delete from T_Dorm where DormID='" +ds.Tables["T_Dorm"].Rows[dataGrid1.CurrentCell.RowNumber][0].ToString().Trim() + "'";mandText = sql;cmd.ExecuteNonQuery();MessageBox.Show("删除宿舍'" +ds.Tables["T_Dorm"].Rows[dataGrid1.CurrentCell.RowNumber][0].ToString().Trim() + "'成功", "提示"); }oleConnection1.Close();} }(八)//修改学生入住信息public partial class StudentModify : Form{private OleDbConnection oleConnection1 = null;private string sno = null;private string DormID1 = null;public StudentModify(string Sno){this.oleConnection1 = newOleDbConnection(Dormitory.dbConnection.connection);sno = Sno;InitializeComponent();}private void button1_Click(object sender, EventArgs e){if (textDormID.Text.Trim() == ""){MessageBox.Show("输入完整信息", "提示");}else{string sql = "select * from T_Dorm where DormID='" + textDormID.Text.Trim() + "'";CDataBase.conn.Open();SqlCommand cmd = new SqlCommand(sql, CDataBase.conn); SqlDataReader sdr = cmd.ExecuteReader();if (null == sdr){MessageBox.Show("没有该房间号,请重新输入", "提示");sdr.Close();CDataBase.conn.Close();return; }sdr.Close();sql = "select * from T_Dorm where DormID = '" + textDormID.Text.Trim() + "' and (AllowPeople-InPeople)>0";SqlCommand cmd1 = new SqlCommand(sql, CDataBase.conn);SqlDataReader sdr1 = cmd1.ExecuteReader();if (!sdr1.Read()){MessageBox.Show("该房间已满", "提示");CDataBase.conn.Close();sdr1.Close();return;}else{sdr1.Close();sql = "update T_Student set DormID='" + textDormID.Text.Trim() + "' where Sno='" + sno + "'";mandText = sql;cmd.ExecuteNonQuery();string sql2 = "update T_Dorm set InPeople=InPeople-1 where DormID='" + DormID1.Trim() + "'";mandText = sql2;cmd.ExecuteNonQuery();string sql3 = "update T_Dorm set InPeople=InPeople+1 where DormID='" + textDormID.Text.Trim() + "'";mandText = sql3;cmd.ExecuteNonQuery();MessageBox.Show("修改成功", "提示");}CDataBase.conn.Close();} }private void StudentModify_Load(object sender, EventArgs e){string sql = "select * from T_Student where Sno='" + sno + "'";OleDbDataAdapter adp = new OleDbDataAdapter(sql, oleConnection1);DataSet ds = new DataSet();adp.Fill(ds, "T_Student");textSID.Enabled = false;textName.Enabled = false;comboSex.Enabled = false;textClass.Enabled = false;textSID.Text = ds.Tables["T_Student"].Rows[0][0].ToString().Trim();textName.Text = ds.Tables["T_Student"].Rows[0][1].ToString().Trim(); comboSex.Text = ds.Tables["T_Student"].Rows[0][2].ToString().Trim(); textClass.Text = ds.Tables["T_Student"].Rows[0][3].ToString().Trim(); textDormID.Text = ds.Tables["T_Student"].Rows[0][4].ToString().Trim(); DormID1 = textDormID.Text.Trim();}}六、窗体设计主界面窗体设计(其它图略)七、系统测试部分1)登录界面用户登录界面2)管理人员:t 密码:123管理人员登录主界面3)维修人员:wx 密码:12328维修人员登录主界面图片4) 学生用户:0910111002 密码0910111002学生登录时的主界面学生登录时候,“学生入住”的修改以及删除功能屏蔽29宿舍号不存在或者入住人数已满时,出现“该房间已满”提示信息窗口八、系统有待完善部分登录界面应该设置【忘记密码】功能,在用户表添加过一些用户信息。