版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于JAVA的宿舍管理系统设计目录TOC\o"1-3"\h\u30486摘要 2237981绪论 2285401.1设计的背景 275911.2当前的研究现状 329161.3课题主要工作 374612可行性分析 5194322.1社会的可行性 5298842.2技术的可行性 5305532.3经济效益的可行性 5253152.4操作可行性 6179432.5小结 6274423需求分析 638783.1网站的开发目标 6110523.2网站用例图 7149503.3活动图 10128103.3.1登录 10116733.3.2在线选宿舍 10235953.3.3公告发布 11211543.3.4缺勤登记 11304363.3.5报修登记 1122043.4小结 11224464总体设计 1278624.1网站模块结构 12107744.2功能的分析 13120314.3网站数据库E-R图 1345684.4网站数据库设计 1883264.5小结 25273915详细设计 2649835.1网站的结构设计 26215.2网站的界面设计 26202505.3功能子模块设计 2637375.3.1登录模块 27186625.3.2管理员模块 28297795.3.3学生在线选宿舍模块 33217595.3.4通知公告模块 34297745.3.5报修模块 35214685.3.6缺勤模块 36144485.3.7来访人员登记模块 3635625.4小结 3774376系统测试 38136626.1测试的任务 38322386.2测试的方式 3819516.3测试的用例 38144926.3.1测试的设备 3848396.3.2预置的条件 38301906.3.3功能测试 3825776.3.4兼容性测试 4474726.3.5负载测试 4581096.4小结 45摘要随着时代的变迁和技术的发展,高校也在不断的发展,不断的完善自己的体制,因此学校的服务也逐渐发生了变化,对于学校宿舍的管理有了新形势的管理模式。学校根据自身的实际情况,对于学生宿舍生活管理的服务进行改善。学生宿舍管理系统,主要使用对象为系统管理人员、宿舍管理人员、学生,可以助力学校的管理工作和宿舍管理工作提升。本系统开发严格遵循软件开发的主流程,从系统的需求分析、系统的设计与实现,到最后的对开发好的项目进行测试工作,以保证开发系统及文档的安全性及可靠性。学生宿舍管理系统能够为管理系统人员提供用户资料管理、年级信息管理、楼栋管理、宿舍预选设置、缺勤管理、来访人员登记管理、公告管理、报修管理。能够为宿舍管理系统人员提供学生信息管理、年级资料管理、楼栋管理、缺勤管理、来访人员登记管理、公告管理、报修管理。能够为学生提供在线预选宿舍管理、个人基础资料管理、缺勤查看、公告查看、报修信息管理。整个系统采用java编程语言,使用B/S开发模式,开发工具采用IDEA和Mysql,实现各个用户对数据的访问和管理。关键词:宿舍管理系统;在线选床位;宿舍信息;报修管理;1绪论1.1设计的背景在我国传统的教育理念模式中,大部分学校都是全日制的管理模式,这就意味着,大部分的学生住宿都是学校统一按排的集中住宿。并且随着现在的教育的普及,大学在校学生人数愈来愈多,所以对学生的日常住宿管理也成为了学校的一大日常重点问题。在目前情况下,依旧还是有很多学校采用的是传统的纸质化管理模式。但是在科技盛行的社会中,由于基于人力模式的纸质化管理存在工作繁重,管理效率低下,耗费人工量大,而且极容易出错等不足,使得无纸化的网络管理模式已经变得普遍。本人考虑到这样的背景,希望可以设计一个大学生宿舍管理系统软件来协助管理宿舍信息,来实现信息无纸化的转变。综合学校、学生、住宿管理、现有技术等各方面的需求和资源,来设计与开发一个宿舍管理系统,让宿舍管理变得更加完善且有效的存储和管理[1]。由于一个良好完善的大学生宿舍管理系统是构成高校人才培养的很大一个因素,使用我们应该更加全面的加强大学宿舍管理。共同构造一个干净整洁的大学生宿舍,有助于帮助大学生形成完善的团结观念和集体荣誉观念[10]。因此,对于大学是宿舍管理,我们不能只是片面的管理,应该综合各个维度,学生在生活中各种表现,从而促使学生能够有针对性地改善自己的生活,营造一个良好的生活环境[11]。为了使学生的各项指标能够更加直观、有效的展现出来,我们考虑应该通过一个分层的方式去完成宿舍管理系统,这样使得大学生的日常数据更观察的更加有效率[2]。1.2当前的研究现状目前情况下,我国各大高校基本上都有信息化部门[14],所以利用网络平台来进行高校宿舍管理已经成为一个必然趋势。并且随着如今软件行业的迅速发展,网络化设备发展逐渐成熟。对于一些很早就开展信息无纸化工作的高校,早就已经实现了数字信息化校园的建设,使学校能够提高学生宿舍管理工作[3]。现在高校的发展和体制不断的进行了完善,所以学校的服务也逐渐有了变化,对于学校宿舍的管理有了新形势的管理模式。学校根据自身的实际情况,对于学生宿舍生活管理的服务进行改善[13]。有些学校因为管理工作的错误,影响了学校里学生的生活状况,甚至给整个学校造成了负面的影响,并且现在如上所说的学校管理问题也是普遍存在的[4]。所以现在学校也越来越注意建设信息化管理系统,这种管理系统建设与实现,可以为学校的管理工作和宿舍管理工作带来很好的效果[12]。1.3课题主要工作本宿舍管理系统网站的设计与实现就是专门为高校在校学生和宿舍管理员设计的,让每个在校学生和宿舍管理员都可以有一个官方的方式来管理和维护宿舍各种信息。本网站设计有以下特点:第一:数据科学统计和分析[24]。宿舍管理系统中记载着整栋宿舍楼的和全部入住学生的相关信息,通过其完善智能的信息统计功能,高校或者宿舍管理者可对每个楼层的入住情况、每个房间的入住信息数据实现一键查看[21],不用再通过一步步、一级级地层层询问来获取相关信息,这在很大程度上促进了宿舍信息的共享。第二:精细化管理。宿舍考勤,管理员,多角色管理,一目了然。住宿学生管理,班级,楼层、宿舍号精确考勤。床位分配管理,楼、栋管理员都有相对应的权限。就寝时间段可设置。第三:具有良好的交互页面[25]。界面整洁干净,整个页面的颜色搭配合理且操作简单,功能操作也方便和流畅[15]。第四:接口拓展功能[23]。系统预留的接口可与宿舍其他的智能设施实现对接,如宿舍管理系统可连接宿舍的考勤门禁系统和迎新收费系统,可真正通过计算机管理系统的运用实现智能化校园的建设。2可行性分析一个软件能否制作和开发主要依靠于他的可行性,本宿舍管理系统网站的设计与实现主要从从社会可行性、技术可行性、经济效益可行性、操作可行性这四个方面阐述可行性分析[19]。2.1社会的可行性随着社会的现代信息技术越来越先进,许多的学校也开始重视起学生和宿舍管理员之间的联系和交流。但是依旧很多学校采用人工的方式去管理宿舍,这使得管理员工作量很大,也解决管理宿舍问题也变得很被动。所以信息化管理宿舍问题,管理者不仅可以方便管理住宿学生信息,还增加了学生与学校之间的来往[16]。2.2技术的可行性1、开发工具开发工具使用的是IDEA,是Java语言所主要使用的集成开发工具之一,其全称为IntelliJIDEA。因其拥有非常良好的代码提示功能、自动补全功能、重构等功能,一直非常受Java开发者的喜爱。2、数据库选择MySql数据库是一种关系型数据库管理系统,由于其源码是开源的,所以非常适合用于中小型网站的开发。其特点包括速度快、总体拥有成本低、体积小等等深受软件开发者的喜。3、框架选择前端采用的框架为LayUI,后端开发技术采用的是SpringBoot。LayUI是一个经典的开源前端开发框架,使用门槛较低,可以开箱即用。SpringBoot是一个基于Java平台的开原框架,不仅继承了Spring的优良特点,而且简化了其搭建过程。非常易于开发和使用。综上所述,本网站开发技术是可行的。2.3经济效益的可行性面对宿舍管理需求量的日益增大,入住学生个数的不断扩大,完善宿舍管理方面的信息化建设是十分有必要的。并且开发软件项目在最开始支付了一次性开发经费后,基本不会带来更多的经济开销。该系统实现完善后,不仅仅可以提价学校的信息化管理工作效率,还可以提升学校管理形象,提高学生的满意程度。这些带来的都是更长期的经济效益。2.4操作可行性由于本系统的用户交互界面简单,并且会对在校的使用系统的管理员进行一定的培训,使其掌握简单的计算机使用知识。并且本系统配有相应的文字说明和图表展示,可以帮助使用者尽快上手使用本系统。2.5小结本章从社会、技术、经济效益、操作这四个方面全面分析了软件开发的可行性。技术先进可维护,工具简单无复杂过程,社会缺口需求大,操作上简单易懂。经过这几个方面的详细分析,项目可行,可以着手开发。3需求分析需求分析就是开发人员通过一定的调研和分析后,了解到社会的需求和现状,分析现有的不足,重新修改需求。使得软件开发更能贴近人们目前的期望。分析人员根据最终的分析结果,将调研需求写进网站需求书中,最后清楚制作这个网站的流程和网站的功能[18]。3.1网站的开发目标目前情况下,我国各大高校基本上都有利用网络平台来进行高校宿舍管理,并且已经成为一个必然趋势。并且随着如今软件行业的迅速发展,网络化设备发展逐渐成熟。对于一些很早就开展信息无纸化工作的高校,早就已经实现了数字信息化校园的建设,使学校能够提高学生宿舍管理工作[3]。以往的人工管理,使得多数宿舍管理员想要了解宿舍信息时,总是要进行大量的宿舍访问,而且不易保存。为了让更好宿舍管理员更好的了解自己管理的宿舍楼栋的情况,为了学校更好的有效管理同学信息,为加快学生宿舍的维修保养,促进有效管理[22],需要开发宿舍管理网站系统来实现。本宿舍管理网站系统的开发的目标:宿管员可以方便的查看宿舍入住信息、宿舍床位情况,合理管理学生住宿信息。学生可以及时查看宿舍的新公告,完成在线选宿舍的事件。系统管理员可以合理的维护楼栋、学生各方面信息。总体宿舍管理网站的功能实现如下(1)登录操作1)系统管理员登录:对系统的后台信息进行维护管理。其登录界面包括所有的功能,并且都可以进行调整来维护系统。宿舍管理员登录:每个宿管员的权限由系统管理员分配,每个宿管员只能在自己账户所拥有的权限下对宿舍进行管理。学生登录:学生登录进入的显示页面也系统管理员和宿舍管理员的功能也有所不同,其功能都偏向于查看和增加信息,且可增加的内容有限,仅为报修信息和请假信息。主要是方便学生通过该界面查看学校的公告管理内容、在线选宿舍和宿舍报修问题。(2)系统管理员操作普通员信息管理:只有系统管理员可以对宿舍管理员的信息进行修改,如果有那些宿管员的信息发生变动,则可以在一段时间内统计好修改内容,让系统管理员一次性更改信息,便于管理。2)宿舍楼栋管理:给各个宿舍管理员分配楼栋管理。3)预选宿舍设置:设置预选宿舍的时间,范围,参与的学院和班级。4)宿舍管理:对于宿舍的批量增加或者初始化,或者进行单个新增。(3)普通管理员操作1)入住信息的管理:对于所有要入住的学生的信息进行登记。2)退宿信息管理:对于要退宿的学生信息进行退宿处理并且登记好学生信息。3)请假登记:记录学生对于不在校住宿时提交的请假登记。4)调换宿舍管理:当学生向系统提交调换宿舍申请时,管理员有权利对于该申请进行调查后作出相应的反映。5)缺勤管理:记录学生对于不在校住宿且未提交的请假登记时进行缺勤记录。6)来访人员登记:登记非该宿舍学生或者外来访问人员的记录。7)报修申请管理:对于学生提交的报修申请作出正确应答。8)公告管理:可以发布、修改最新公告,也可以撤销过期公告。9)修改密码:对于个人的密码信息进行修改。10)个人信息管理:个人姓名,编号等等的基本宿舍管理员信息的修改。(4)学生操作1)基础信息资料管理:基本信息包括学院、系别、专业、年级。学生用户可以修改自己的基础信息并且保存。且可以修改自己的密码。2)在线选宿舍:在自己所在院系的开放时间选择自己的宿舍号和床号信息。3)缺勤记录:查看自己是否被登记记录过缺勤。4)报修申请:填写对应宿舍的报修申请。5)公告管理:学生用户可以查看自己所在楼栋是否发布最新公告。3.2网站用例图宿舍管理系统网站主要面向在校住宿学生、系统管理员、宿舍管理员。其中宿舍管理员可以对住宿学生的资料,学生的宿舍行为进行管理;系统管理员主要功能是对网站进行维护。本宿舍管理网站系统中使用到的建模软件是RationalRoseModelIntegrator,使用它来创建用例图。①系统管理员能够对系统进行以下操作:宿管员/学生信息管理:只有系统管理员可以对宿舍管理员的信息进行修改,如果有那些宿管员的信息发生变动,则可以在一段时间内统计好修改内容,让系统管理员一次性更改信息,便于管理。2)宿舍楼栋管理:给各个宿舍管理员分配楼栋管理。3)预选宿舍设置:设置预选宿舍的时间,范围,参与的学院和班级。4)宿舍管理:对于宿舍的批量增加或者初始化,或者进行单个新增。5)缺勤管理:记录学生对于不在校住宿且未提交的请假登记时进行缺勤记录。6)来访人员登记:登记非该宿舍学生或者外来访问人员的记录。7)报修申请管理:对于学生提交的报修申请作出正确应答。8)公告管理:可以发布、修改最新公告,也可以撤销过期公告。9)个人信息管理:个人姓名,编号等等的基本宿舍管理员信息的修改。②宿舍管理员能够对系统进行以下操作:1)入住信息的管理:对于所有要入住的学生的信息进行登记。2)退宿信息管理:对于要退宿的学生信息进行退宿处理并且登记好学生信息。3)调换宿舍管理:当学生向系统提交调换宿舍申请时,管理员有权利对于该申请进行调查后作出相应的反映。4)缺勤管理:记录学生对于不在校住宿且未提交的请假登记时进行缺勤记录。5)来访人员登记:登记非该宿舍学生或者外来访问人员的记录。6)报修申请管理:对于学生提交的报修申请作出正确应答。7)公告管理:可以发布、修改最新公告,也可以撤销过期公告。8)个人信息管理:个人姓名,编号等等的基本宿舍管理员信息的修改。③学生可以进行的操作:基础信息资料管理:包括查看自己的姓名、性别、学院、系别、专业、年级。在线选宿舍:在自己所在院系的开放时间选择自己的宿舍号和床号信息。3)缺勤记录:查看自己是否被登记记录过缺勤。4)报修申请:填写对应宿舍的报修申请。5)公告管理:学生用户可以查看自己所在楼栋是否发布最新公告。(1)通过上述说明,创建出对应的管理员(系统管理员和宿舍管理员)的用例图,如图3-1和3-2:图3-1系统管理员用例图图3-2宿舍管理员用例图(2)能够通过以上的描述,可以创建出学生的用例图,如图3-3:学生用例图如图3-3:图3-3学生用例图3.3活动图主要是登录活动图,在线选宿舍活动图,公告发布活动图,缺勤活动图,报修活动图,这五个活动图的说明。3.3.1登录登录与注册操作的工作流程为:在登录页面中,请输入对应的数据,然后提交,会进入到对应的页面。在进入前的相应页面,点你想要进行的操作按钮,就可以来跳到登录界面。图3-10登录活动图3.3.2在线选宿舍在线选宿舍的工作流程为:打开在线选宿舍页面,学生选择相应楼栋,相应宿舍号后选择自己的床位。若选择宿舍操作不在规定时间范围,选择的宿舍楼栋号、宿舍号不在规定的位置内,则选床位失败。图3-12在线选宿舍活动图3.3.3公告发布公告发布的工作流程为:打开公告发布页面,选择发布公告,添加公告内容,提交发布的公告信息。图3-13公告发布活动图3.3.4缺勤登记缺勤登记的工作流程为:打开缺勤登记页面,添加内容,提交缺勤信息。图3-14缺勤登记活动图3.3.5报修登记报修登记的工作流程为:点击报修页面,点击报修按钮,进行报修,点击确认报修成功,显示报修。图3-15留言活动图3.4小结本章主要是对项目目标的一个分析,通过对网站的用例图、活动图这两方面来进行阐述需求分析详细说明。4总体设计从网站模块、功能分析、网站数据库E-R图、网站数据设计,这四个方面阐述总体设计。4.1网站模块结构根据对宿舍管理系统网站的分析和操作要求,网站的功能结构,如图4-1:图4-1网站功能结构图宿舍管理系统网站,分别由两个功能模块组成,后台模块:后台模块主要是可以对整个系统进行维护,包括基础信息维护管理,来访人员登记管理,报修管理,缺勤管理,公告管理,宿舍管理。系统管理员都可以对每个模块相应的信息进行增删改查操作,维持网站正常无误的运行。其中公告管理,缺勤管理和来访人员登记管理是宿管员也可以进行增删改查操作的。前台模块:前台模块主要是为了给学生用户进行相应信息查看的。包括对自己的详细信息的查看,缺勤记录、公告信息的查看,报修记录的登记和查看。学生也可以在对应的时间和宿舍号中选择床位信息。4.2功能的分析本宿舍管理系统网站实现的功能有:①系统管理员能够操作整个系统,能够为宿舍管理员分配权限信息;②普通宿管员除了不能设置权限,不能更改楼栋和年级院系信息外,其它操作都可以进行;③学生能够查找一些有关公告、个人信息、报修信息、在线选宿舍[6]、登记信息。·学生管理功能:系统管理员可以对学校的住宿学生信息表进行维护。·学生在线选宿舍功能:系统管理员可以设置学生选宿舍的时间,每个班级选择的宿舍范围,然后由宿管员公告统一发布。这样学生们可以了解自己学院班级选宿舍的对应时间。最后学生在相应时间内选择自己的宿舍床位。·宿舍管理功能:宿管员可以在登录的后台页面直观的查看到每一栋楼的宿舍空床位、空宿舍、床位损坏情况,方便对宿舍进行合理的调整。·年级信息管理功能:主要是为了防止学校中各个学院的整改,若有新的专业班级增加,则系统管理员可以在年级信息中录入新的内容。·通知公告管理功能:可以发布、修改最新公告,也可以撤销过期公告。·楼层管理功能:系统管理员给各个宿舍管理员分配楼栋管理。·报修管理功能:学生填写对应宿舍的报修申请。宿管员可以查看到每个宿舍的报修内容,然后联系对应的报修人员进行修理。完成修理后即可修改报修状态。·缺勤管理功能:主要用于宿管员记录学生对于不在校住宿且未提交的请假登记时进行缺勤记录。学生可以查看到自己是否有过对应的缺勤记录。·访问者管理功能:宿管员对外来访问者的信息登记。防止外来人员的进入对学生各方面造成不好的影响。4.3网站数据库E-R图数据库的逻辑设计关乎于整个系统的项目的实现效率和实现结果。好的数据库结构设计可以极大的提升项目的存储空间和实现。本次宿舍管理系统网站设计实体一共包含管理员、学生、年级、宿舍、宿舍楼栋、床位、在线选床位、楼层、报修、公告、缺勤和访问者十三个实体。其中最主要的是管理员学生、和床位实体,他们是整个系统的关键使用主体。如图4-1:图4-1总体实体ER图管理员实体图管理员信息数据库表所包含的属性:用户编号、用户名称、密码、性别、姓名、权限。如图4-2:管理员管理员编号用户名密码姓名权限号码性别图4-2管理员E-R图学生实体图学生信息数据库表所包含的属性:学生学号、学生姓名、学生年龄、学生性别、学生电话、学生班级、学生年级、学生登录密码。如图4-3:学生学生学号姓名年龄号码年级性别密码班级图4-3学生E-R图宿舍实体图宿舍信息数据库表所包含的属性:宿舍编号、宿舍类型、宿舍可容纳人数、宿舍楼栋号、宿舍楼层号、宿舍容纳学生性别。如图4-4:宿舍宿舍宿舍编号性别楼栋号类型容纳人数楼层号图4-4宿舍E-R图年级实体图年级的资料包括有:编号、年级名称。如图4-5:年年级编号年级名称图4-5年级E-R图床位实体图床位的数据含有:编号、床位号、宿舍号。如图4-6:床位床位编号床位号宿舍号图4-6床位E-R图缺勤实体图新闻信息数据库表所包含的属性:新闻编号、学生学号、宿舍编号、缺勤时间、备注。如图4-7:缺勤缺勤编号学生学号宿舍编号开始、结束时间备注图4-7缺勤E-R图公告实体图公告信息数据库表所包含的属性:公告编号、公告主题、发布公告时间、公告内容、发布公告人。如图4-8:公告公告编号主题时间内容发布者人人图4-8公告E-R图报修实体图报修信息数据库表所包含有的属性:编号、学生学号、宿舍编号、楼栋编号、描述信息、创建时间、报修状态。如图4-9:报修报修编号学生学号描述创建时间宿舍编号楼栋编号状态图4-9报修E-R图选择床位事件图图片信息数据库表所包含的属性:编号、学生学号、开始时间、备注。如图4-10:选择床位选择床位编号学生学号开始、结束时间备注图4-10选择床位E-R图访客实体图访客的信息数据库表所包含的属性:编号、访问者、电话、性别、ID卡号、访问学生编号、访问时间、离开时间、备注。如图4-11:访客访客编号访问者2电话性别离开时间访问时间访问学生编号ID卡号备注图4-11访客E-R图楼层实体图楼层数据库表所包含的属性:编号、楼层名、楼栋编号、备注。如图4-12:楼层楼层编号编号楼层名主题楼栋编号内容备注图4-12楼层实体E-R图楼栋实体图楼栋实体数据库表所包含的属性:编号、楼栋名称、楼栋类型、楼层数、性别、管理者编号、备注。如图4-13:楼栋楼栋编号名称性别备注楼栋类型楼层数管理者编号图4-13楼栋E-R图学生与宿舍、班级关系图。如图4-14:学生学生班级宿舍n1图4-14学生与班级/宿舍E-R图4.4网站数据库设计数据字典是对数据的各个列表的字段一个定义和详细说明。经过对字段的详细说明,可以清楚的知道各字段的意义。数据库的规范化过程呢?)本宿舍管理系统网站一共有二十一个数据库表,其中前台数据库表设计有一下几个表:缺勤记录表:tb_absence、床位信息表:tb_bed、宿舍楼栋信息表:tb_building、宿舍信息表:tb_dormitory、目录表:tb_menu、公告信息表:tb_notice、公告信息可查看楼栋表:tb_notice_receive、机构管理表:tb_org、登记报表:tb_record、报修表:tb_repair、宿舍选择记录表:tb_selection、宿舍选择宿舍对应序号表:tb_selection_dormitory、宿舍楼层表:tb_storey、后台数据库表设计有一下几个表:学生信息表:tb_student、管理员信息表:tb_user、管理员对应菜单表:tb_user_menu、外来访问者信息表:tb_visit、管理员宿舍权限分配设置表:tb_dormitory_set、学生宿舍关联表:tb_dormitory_student、学生年级表:tb_grade、宿舍选择记录表和对应序号的连接表:tb_selection_joiner、。根据宿舍管理系统网站的需要而设计了以下的表,如图4-15:图4-15系统表设计Tb_user表如表4-1:表4-1管理员表序号字段名称字段类型长度允许为空小数点1idint11自增编号02user_namevarchar100是03passwordvarchar100是04namevarchar100是05phonevarchar100是06typeint11是07remakevarchar100是0tb_student表如表4-2:表4-2学生信息表序号字段名称字段类型长度允许为空小数点1idint100自增编号02Stu_novarchar100是03namevarchar100是04idcardvarchar100是05Grade_idint11否07sexint11是08phonevarchar100是09passwordvarchar100是010Clazz_idint11否0tb_absence表如表4-3:表4-3缺勤记录信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02Student_idint11否03Dormitory_idint11否04Start_timedate0是05End_timedate0是06remarkvarchar200是0tb_bed表如表4-4:表4-4床位信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02bnovarchar50是03dormitory_idint11否0tb_building表如表4-5:表4-5楼栋信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02namevarchar100是03typeint11是04Storey_numint11是05sexint11是06remarkvarchar200是07User_idint11否0tb_dormitory表如表4-6:表4-6宿舍信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02novarchar50是03sexint11是04typeint11是05capacityint11是06Storey_idint11否07Building_idint11否0tb_dormitory_set表如表4-7:表4-7选择宿舍登记表序号字段名称字段类型长度允许为空小数点1idint11自增编号02prefixvarchar50是03startint11是04endint11是05Building_idint11否06Storey_idint11否07capacityint11是0tb_dormitory_student表如表4-8:表4-8学生宿舍关联信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02Dormitory_idint11是03Bed_idint11是04Student_idint11否05checkindatetime0是06statusint11是0tb_grade表如表4-9:表4-9年级信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02namevarchar100是0tb_menu表如表4-10:表4-10网页菜单信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02titlevarchar50是03iconvarchar50是04hrefvarchar100是05targetvarchar50是06Parent_idint11否07typeint255是0tb_notice表如表4-11:表4-11公告信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02titlevarchar200是03contenttext0是04Create_timedatatime0是05User_idint11否06filepathvarchar200是0tb_notice_receive表如表4-12:表4-12公告信息接收楼栋表序号字段名称字段类型长度允许为空小数点1idint11自增编号02Notice_idint11否03Building_idint11否0tb_org表如表4-13:表4-13组织信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02namevarchar100是03typeint11是04Grade_idint11否05Parent_idint11否06remarkvarchar200是0tb_record表如表4-14:表4-14床位登记信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02Student_idint11否03Dormitory_idint11否04Bed_idint11否05statusint11是06Create_datedatetime0是0repair表如表4-15:表4-15报修信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02Student_idint11否03Dormitory_idint11否04Building_idint11否05descriptionvarchar500是06Create_datedatatime0是07statusint11是0tb_selection表如表4-16:表4-16在线选择宿舍宿舍时间信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02namevarchar100是03Start_timedate0是04End_timedate0是05remarkvarchar100是0tb_selection_joiner表如表4-17:表4-17宿舍班级连接信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02selection_idint11否03clazz_idint11否0tb_selection_dormitory表如表4-18:表4-18在线选择宿舍宿舍信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02Dormitory_idint11否03Clazz_idint11否0tb_user_menu表如表4-19:表4-19用户菜单信息表序号字段名称字段类型长度允许为空小数点1User_idint11否02Menu_idint11否0tb_visit表如表4-20:表4-20来访人员信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02visitorvarchar100是03phonevarchar100是04sexint11是05idcardvarchar100是06Student_idint11是07Visit_timedatetime0是08Leave_timedatetime0是09remarkvarchar200是0(21)tb_storey表如表4-21:表4-21楼栋信息表序号字段名称字段类型长度允许为空小数点1idint11自增编号02namevarchar100是03building_idint11是04remarkvarchar200是04.5小结本章主要是对系统模块结构、功能分析、系统数据库E-R图、系统数据库设计的一个阐述与说明。
5详细设计主要从网站的结构设计、网站界面设计、功能子模块设计,这三个方面来阐述详细设计。5.1网站的结构设计宿舍管理系统网站是一种JavaWeb软件,为了让使用者可以更加清楚明白本软件的使用,特意画出一下软件结构图,如图5-1:图5-1网站结构图5.2网站的界面设计用户输入用户名、密码,选择相应的身份然后登录页面。按下“登录”按钮,跳转至相应界面。在管理员对应的后台管理界面中,按“基础资料”选项,跳到资料管理界面,点按“学生管理”选项,跳到相应的页面,都可进行相应的功能的操作。按“添加”按钮,跳出添加页面,按照规定格式对相应数据进行添加。按“修改”按钮,跳出修改界面,能够修改相应数据。按“删除”按钮,弹出删除界面,页面询问是否要删除该信息,若点确定,即可以删除某一条对应数据。在相应的查询窗口中,输入需要查询的关键字,按查询按钮即可数据查询。5.3功能子模块设计系统各功能按照分块处理,可将整个宿舍管理系统网站分为管理员模块、学生模块。管理员模块可以分为系统管理员和宿管员,系统管理员是对系统的后台信息进行维护管理。其登录界面包括所有的功能,并且都可以进行调整来维护系统。宿舍管理员是对每个宿管员的权限由系统管理员分配,每个宿管员只能在自己账户所拥有的权限下对宿舍进行管理。学生模块,学生登录进入系统后,其功能都偏向于查看和增加信息,且可增加的内容有限,仅为报修信息和请假信息。主要是方便学生通过该界面查看学校的公告管理内容、在线选宿舍和宿舍报修问题。5.3.1登录模块所有的用户都要通过登录页面进入系统,登录界面有两个输入框、一个选择框,分别是输入用户名、密码、登录身份,其次就用登录按键。根据输入的用户、密码和对应的身份,验证是否和数据库所存储的信息内容一致,在输入内容都匹配的条件下,依据身份,给使用者对应的权限操作。登陆的流程图,如图5-2:图5-1登陆流程图登录用户和密码验证的主要代码为:publicUserlogin(StringuserName,Stringpassword){
returnuserMapper.login(userName,password);
}form.on('submit(login)',function(data){data=data.field;axios({method:'post',url:'/login',data:data}).then(function(data){if(data.code==200){store.setToken(data.data.token)if(data.data.user){store.setLoginInfo(data.data.user,0);}if(data.data.student){store.setLoginInfo(data.data.student,1);}location.href='index.html'}else{layer.msg(data.msg);}}).catch(function(error){layer.msg(error);});returnfalse;});5.3.2管理员模块管理员可以设置在线选宿舍的时间,可以对学生的基础信息进行增删改查,也可以发布公告,登记外来人员等等。院系班级信息添加:图5-2院系班级信息添加流程图院系班级信息添加:publicintcreate(Orgorg){
returnorgMapper.create(org);
}publicintcreate(Orgorg);selectOrg.render({elem:'#parentName',selected:[],checked:false,done:function(data){$('#parentId').val(data[0].id);$('#parentName').val(data[0].name);}});axios.post('grade/query',{}).then(function(response){letoptions='<optionvalue="">请选择年级</option>';for(letobjofresponse.data){options+='<optionvalue="'+obj.id+'">'++'</option>'}console.log(options);$('#gradeId').append(options);form.render('select');}).catch();院系班级信息删除:图5-3院系年级信息删除流程图院系班级信息删除主要代码为:publicintdelete(Stringids){
String[]arr=ids.split(",");
introw=0;
for(Strings:arr){
if(!StringUtils.isEmpty(s)){
orgMapper.delete(Integer.parseInt(s));
row++;
}
}
returnrow;
}publicintdelete(Integerid);<deleteid="delete">
deletefromtb_orgwhereid=#{id}
</delete>院系班级信息修改:图5-4院系班级信息修改流程图院系班级信息修改的主要代码为:publicintupdate(Orgorg){
returnorgMapper.update(org);
}publicintupdate(Orgorg);<updateid="update">
updatetb_orgset
name=#{name},
type=#{type},
grade_id=#{gradeId},
parent_id=#{parentId},
remark=#{remark}
whereid=#{id}
</update>信息表导出图5-5信息表导出流程图信息表导出操作的主要代码为:publicList<Org>queryOrgBySelectionId(IntegerselectionId);publicList<Org>queryOrgBySelectionId(IntegerselectionId){
returnorgMapper.queryOrgBySelectionId(selectionId);
}学生信息查询:图5-6学生信息查询流程图学生信息查询的主要代码为:publicList<Student>query(Studentstudent);publicPageInfo<Student>query(Studentstudent){
if(student!=null&&student.getPage()!=null){
PageHelper.startPage(student.getPage(),student.getLimit());
}
returnnewPageInfo<Student>(studentMapper.query(student));
}<selectid="query"resultMap="Student">
select*fromtb_student
<includerefid="StudentFindCriteria"/>
</select>添加学生信息:图5-7添加学生信息流程图添加学生信息的主要代码为:publicintcreate(Studentstudent);publicintcreate(Studentstudent){
returnstudentMapper.create(student);
}<insertid="create"keyProperty="id"useGeneratedKeys="true"parameterType="com.yanzhen.entity.Student">
insertintotb_student(
stu_no,
name,
idcard,
grade_id,
sex,
phone,
password,
clazz_id
)values(
#{stuNo},
#{name},
#{idcard},
#{gradeId},
#{sex},
#{phone},
'123456',
#{clazzId}
)
</insert>删除学生信息:图5-8删除学生信息流程图删除学生信息的主要代码为:publicintdelete(Integerid);publicintdelete(Stringids){
String[]arr=ids.split(",");
introw=0;
for(Strings:arr){
if(!StringUtils.isEmpty(s)){
studentMapper.delete(Integer.parseInt(s));
row++;
}
}
returnrow;
}
publicintdelete(Integerid){
returnstudentMapper.delete(id);
}<deleteid="delete">
deletefromtb_studentwhereid=#{id}
</delete>学生信息的修改:图5-9学生信息的修改流程图学生信息的修改的主要代码为:publicintupdate(Studentstudent);publicintupdate(Studentstudent){
returnstudentMapper.update(student);
}<updateid="update">
updatetb_studentset
stu_no=#{stuNo},
name=#{name},
idcard=#{idcard},
grade_id=#{gradeId},
sex=#{sex},
phone=#{phone},
password=#{password},
clazz_id=#{clazzId}
whereid=#{id}
</update>5.3.3学生在线选宿舍模块学生可在这里进行在线选宿舍。图5-10填写调查流程图学生在线选宿舍的主要代码为:publicclassSelectionDormitoryextendsEntity{
privateIntegerid;
privateIntegerdormitoryId;
privateIntegerclazzId;
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
this.id=id;
}
publicIntegergetDormitoryId(){
returndormitoryId;
}
publicvoidsetDormitoryId(IntegerdormitoryId){
this.dormitoryId=dormitoryId;
}
publicIntegergetClazzId(){
returnclazzId;
}
publicvoidsetClazzId(IntegerclazzId){
this.clazzId=clazzId;
}}<selectid="query"resultMap="SelectionDormitory">
select*fromtb_selection_dormitory
<includerefid="SelectionDormitoryFindCriteria"/>
</select>functionselection(){returnaxios.post('selectionDormitory/query',{clazzId:_clazzId,limit:10000});}5.3.4通知公告模块通知公告是学校的通知公告消息最新的地方,来到通知公告模块,如果有最新的宿舍消息或者新规定制度,宿管员可以直接网上发布,也可以选择楼栋发布,这样一来学生就可以直接在这页面上了解到最新资讯:图5-11报名流程图通知公告的主要代码为:publicintcreate(Noticenotice);publicintcreate(Noticenotice){
noticeMapper.create(notice);
List<Integer>buildingIds=notice.getBuildingIds();
for(IntegerbuildingId:buildingIds){
NoticeReceivenoticeReceive=newNoticeReceive();
noticeReceive.setBuildingId(buildingId);
noticeReceive.setNoticeId(notice.getId());
noticeReceiveMapper.create(noticeReceive);
}
return1;
}<insertid="create"keyProperty="id"useGeneratedKeys="true"parameterType="com.yanzhen.entity.Notice">
insertintotb_notice(
title,
content,
create_time,
user_id,
filepath
)values(
#{title},
#{content},
now(),
#{userId},
#{filepath}
)
</insert>5.3.5报修模块报修模块也是最需要经常查看管理的模块了,在这个地方可以报修自己宿舍存在的问题。宿管员看到还未解决的报修问题会及时的管理,报修内容提交成功后可以经常查询是否被宿管员查看和报修进度。图5-12报修流程图报修操作的主要代码为:publicintcreate(Repairrepair);publicintcreate(Repairrepair){
returnrepairMapper.create(repair);
}<insertid="create"keyProperty="id"useGeneratedKeys="true"parameterType="com.yanzhen.entity.Repair">
insertintotb_repair(
student_id,
dormitory_id,
building_id,
description,
create_date,
status
)values(
#{studentId},
#{dormitoryId},
#{buildingId},
#{description},
#{createDate},
#{status}
)
</insert>5.3.6缺勤模块缺勤登记模块管理主要是宿管员在进行查寝时对在规定时间内不再宿舍的同学的一个登记。宿管员进行登记后被记录了的同学可以通过自己的账号登陆查看自己的缺勤信息。图5-13缺勤登记流程图缺勤登记模块操作的主要代码为:publicintcreate(Absenceabsence);publicintcreate(Absenceabsence){
returnabsenceMapper.create(absence);
}<insertid="create"keyProperty="id"useGeneratedKeys="true"parameterType="com.yanzhen.entity.Absence">
insertintotb_absence(
student_id,
dormitory_id,
start_time,
end_time,
remark
)values(
#{studentId},
#{dormitoryId},
#{startTime},
#{endTime},
#{remark}
)
</insert>5.3.7来访人员登记模块来访人员登记是宿管员对外来人口的进入的一个登记模块。主要是为了预防外来人员的进入后,宿舍可能发生一些无法预测的预料之外的事故后,可以及时的查找到与之相关的外来人口。图5-14来访人员登记流程图来访人员操作的主要代码为:publicintcreate(Visitvisit);publicintcreate(Visitvisit){
returnvisitMapper.create(visit);
}<updateid="update">
updatetb_visitset
visitor=#{visitor},
phone=#
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工程职业技术学院单招职业适应性测试题库及答案解析
- 学校宿舍卫生管理制度
- 八年级物理上册第二章测试题及答案
- 2026年大学生实习报告:建筑施工实习
- 2026年安全生产知识考试试题及答案
- 城镇园林绿植养护保证承诺书4篇
- 路基施工方案-温州(3篇)
- 泳池分段施工方案(3篇)
- 装修地坪施工方案(3篇)
- 火车电路施工方案(3篇)
- 2024年安徽中考物理备考策略
- 《城市轨道交通客运组织》课程标准
- 【端盖零件机械加工工艺规程及夹具设计10000字(论文)】
- 失能老人消防应急预案
- GB/T 15622-2023液压缸试验方法
- 高中英语词汇3500词(必背)-excel版
- 糖尿病中医症状积分
- 小学生预防性侵讲稿
- 鲁科版小学英语五年级下册Unit-2《Lesson-1-Lets-stop-and-wait》课件
- 【道法广角】成语故事会:立木为信
- 德育主题班会课件 青春·责任
评论
0/150
提交评论