摘 要
随着信息技术的快速发展和普及,高校寝室维修上报管理系统面临着诸多挑战与机遇。传统的维修管理模式已经无法满足现代高校对效率和便捷性的需求,因此开发一套高效、智能的寝室维修上报管理系统显得尤为重要。该系统采用了先进的SpringBoot框架,结合Java等成熟、稳定的技术,实现了寝室维修流程的自动化、信息化。学生可以通过该系统轻松在线提交维修申请,而管理人员则可以实时接收、处理这些信息,维修员也可以直接查看维修单信息并接取宿管分配的任务填写维修进度等,极大地提高了维修管理的效率。此外,宿舍管理员可以对学生发出的维修申请和问题反馈进行审核和回复,对维修任务进行分配。系统注重用户体验,提供了友好的操作界面和便捷的操作流程,使用户能够轻松上手并高效使用系统。寝室维修上报管理系统的开发和应用,不仅提升了高校维修管理的效率和质量,也为学生提供了更加便捷、舒适的居住环境。未来,我们将继续优化和完善系统功能,以适应不断变化的管理需求和技术发展趋势。
关键词:寝室维修上报管理系统;SpringBoot框架;Java。
ABSTRACT
With the rapid development and popularization of information technology, the management system for dormitory maintenance reporting in universities is facing many challenges and opportunities. The traditional maintenance management model can no longer meet the efficiency and convenience needs of modern universities, so it is particularly important to develop an efficient and intelligent dormitory maintenance reporting management system. The system adopts the advanced SpringBoot framework and combines mature and stable technologies such as Java to achieve automation and informatization of the dormitory maintenance process. Students can easily submit maintenance requests online through this system, while management personnel can receive and process this information in real time. Maintenance personnel can also directly view maintenance order information and take on tasks assigned by dormitory management to fill in maintenance progress, greatly improving the efficiency of maintenance management. In addition, dormitory administrators can review and respond to maintenance requests and feedback from students, and allocate maintenance tasks. The system focuses on user experience and provides a user-friendly interface and convenient operation process, enabling users to easily get started and use the system efficiently. The development and application of a dormitory maintenance reporting management system not only improves the efficiency and quality of university maintenance management, but also provides students with a more convenient and comfortable living environment. In the future, we will continue to optimize and improve system functions to adapt to constantly changing management needs and technological development trends.
Keywords: dormitory maintenance reporting management system; SpringBoot framework; Java.
目 录
1.1. 课题背景和意义
随着高等教育的普及,学生宿舍作为学生在校园内生活的关键场所,其管理质量直接关系到学生的日常学习和生活体验。然而,传统的宿舍维修报修流程存在效率低下、易出错等问题,难以满足现代高校对宿舍管理的高效、便捷、透明化需求。
随着信息技术的迅猛发展,数字化、智能化的管理方式正逐渐成为主流。因此,开发一套基于Web的寝室维修上报管理系统,将传统的线下报修流程转移到线上,能够大大提高报修的效率,减少中间环节,确保报修信息的准确性和实时性,使得管理人员能够及时响应和处理学生的维修上报请求。
宿舍维修上报管理系统的研发不仅有助于提升高校设施维护管理的效率和质量,还能够为师生提供更加便捷、舒适的校园环境。同时,该系统还能够为高校提供强大的数据支持,助力学校实现更加科学、精细化的设施维护管理。因此,这一课题的研究与实践具有重要的现实意义和广泛的应用前景。
在实现该系统的过程中,可以选用SpringBoot框架。SpringBoot框架以其快速搭建、简化配置、开发便捷等特点,能够有效地支持基于Web的应用开发,有利于快速构建高效的寝室维修上报管理系统。
1.2 国内外研究现状
在国内外,寝室维修上报管理系统的研究与应用已成为教育管理领域的研究热点。国外学术界在这一领域进行了广泛的探索与实践,注重利用先进的技术手段和创新理念,提升校园设施维护管理的效率和质量。例如,在美国、英国等发达国家的高校,已经引入智能化系统和移动应用,实现了校园设施报修的在线化、智能化管理,提高了报修处理的速度和准确性。他们注重用户体验和数据分析,通过大数据技术对设施维护数据进行挖掘和分析,实现设施管理的精细化和智能化。
在国内,随着信息化教育的推进,寝室维修上报管理系统的研究也逐渐受到重视。国内高校借鉴国外经验,积极探索校园设施维护管理的创新模式和技术手段,推动校园管理水平的提升。一些高校在寝室维修上报管理系统的设计与实现方面进行了实践探索,通过引入先进的技术和管理理念,优化设施维护流程,提升了设施维护的效率和服务质量。同时,国内高校也加强了对校园设施管理信息化的建设,注重数据的收集和分析,提升了管理决策的科学性和准确性。
综上所述,国内外在寝室维修上报管理系统研究领域的探索与实践表明,利用先进技术和管理手段提升校园设施维护管理效率是当前的共同关注点。未来,随着技术的不断发展和教育管理理念的创新,寝室维修上报管理系统将继续深化,为高校设施维护管理提供更加智能化、便捷化的支持与服务。
在该背景下,基于Web的寝室维修上报管理系统设计与实现具有重要意义。该框架能够有效支持系统的快速开发和部署,为系统的高效运行提供有力保障,促进系统与现代高校管理需求的紧密结合。。
1.3论文结构与章节安排
论文将分层次经行编排,除去论文摘要致谢文献参考部分,正文部分还会对系统需求做出分析,以及阐述大体的设计和实现的功能,最后罗列部分调测记录,论文主要架构如下:
第一章:引言。第一章主要介绍了课题的研究背景和意义,选题开发的国内外研究现状和本文的研究内容与主要工作。
第二章:系统需求分析。主要从系统的用户、功能等方面进行需求分析。
第三章:系统设计。主要对系统框架、系统功能模块、数据库进行功能设计。
第四章:系统实现。主要介绍了系统框架搭建、系统界面的实现。
第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试
第六章:总结。
2.1 可行性分析
2.1.1技术可行性
寝室维修上报管理系统在技术上是完全可行的。SpringBoot框架作为业界广泛使用的轻量级、开源的Java Web开发框架,具有简化开发、快速部署的特点,能够满足寝室维修上报管理系统的技术需求。SpringBoot提供了约定大于配置的开发理念,简化了项目配置和搭建过程,同时集成了常用的开发工具和插件,使得开发更加高效。整合SpringBoot与Spring MVC、Spring Data JPA等技术,可以确保系统具备良好的可扩展性、可维护性和稳定性。
2.1.2经济可行性
在开发寝室维修上报管理系统所使用的开发软件像IDEA开发工具、Tomcat8.0服务器、MySQL5.7数据库、Photoshop图片处理软件等,这些都是开源免费的,并且寝室维修上报管理系统是自己设计并编码实现的,数据库是使用流行mysql进行数据的存储,开源的mysql等技术的使用,减少系统开发费用。
2.1.3操作可行性
操作可行性主要是对寝室维修上报管理系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员、学生用户、维修用户、宿管用户这四种角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
2.2 功能需求分析
2.2.1 功能性分析
在开发寝室维修上报管理系统之前,我们必须进行详尽的需求分析和市场调研。这些工作旨在深入了解宿舍管理人员、学生以、维修员以及宿管的实际需求,确保系统能够满足宿舍维修上报和管理的实际运作要求,从而精准地确定系统的开发方向。
我们需要对寝室维修上报流程进行深入分析,明确维修申请、审核、任务分配、问题反馈、维修进度等各个环节的具体需求。同时,考虑系统的性能要求,确保系统在高并发情况下仍能稳定运行,为用户提供流畅的使用体验。
我们还需要对系统的安全性进行充分考虑。由于寝室维修上报管理系统涉及到学生信息、维修记录等敏感数据,因此必须确保系统的数据安全性和用户隐私保护。这包括数据加密、权限控制、操作日志记录等方面的安全措施。
在系统设计阶段,我们将重点关注满足宿管人员、学生和维修用户的实际需求。通过深入了解他们的日常工作流程和管理任务,我们将确定系统所需的功能和服务。例如,为宿舍管理人员提供任务分配、维修申请、问题反馈审核和回复跟踪等功能,为学生提供便捷的维修申请入口和维修进度查询功能,为维修员提供任务分配、任务接收、问题反馈、维修进度管理等功能。
同时,我们还将注重系统的可扩展性和灵活性。随着宿舍规模的不断扩大和管理需求的不断变化,系统需要能够灵活应对这些变化。因此,在系统设计时,我们需要考虑系统的模块化设计、接口标准化等方面的问题,以便未来能够方便地进行功能扩展和系统升级。
针对寝室维修上报管理系统的设计特性,我们必须确保满足以下几项基本要求:
1.系统应提供简洁易懂的用户界面,方便用户快速上手并高效完成报修任务。
2.系统应实现维修申请、审核、任务分配、问题反馈、维修进度等全流程的自动化管理,提高寝室维修上报效率和服务质量。
3.系统应提供实时有效的数据沟通渠道,确保宿管人员、学生和维修员之间的信息畅通无阻。
4.系统应确保数据的安全性和隐私保护,防止数据泄露和滥用。
通过满足这些要求,我们相信寝室维修上报管理系统将能够为寝室维修上报管理带来实质性的改进和提升,为宿管人员、学生和维修员提供更加便捷、高效的服务。同时,该系统也将为高校信息化建设贡献一份力量,推动高校后勤服务向数字化、智能化方向发展。
按照寝室维修上报管理系统的角色,主要包括学生用户模块、维系员用户模块、宿管用户和管理员模块,其主要内容如下:
- 学生用户管理模块:
- 注册登录:当用户想要对系统中所实现的功能进行查询管理的时候,就必须进行登录到系统当中,如果没有账号的话,可以在登录窗口中进行注册,然后再通过账号密码登录。
- 后台首页:学生用户可以在此进行个人资料的修改,确保信息准确无误。
- 维修申请管理:学生用户可以提交维修申请,并查看申请列表。同时,可以根据寝室编号、维修分类、期望时间以及审核状态进行查询、删除、查看审核和回复等操作,方便管理维修进度。
- 任务分配管理:学生用户可以查看维修任务的分配情况,包括任务列表和详情。通过筛选条件,如寝室编号、维修分类、期望时间和维修员名,可以方便地查询任务信息。
- 任务接收管理:学生用户可以查看已接收的维修任务列表和详情,了解维修的寝室编号、分类、期望时间等信息。同时,可以根据接收状态进行查询,以便追踪任务的接收情况。
- 问题反馈管理:学生用户可以填写并提交维修问题反馈,并查看反馈列表和详情。通过筛选条件,如寝室编号、维修分类、期望时间、反馈时间和审核状态,可以方便地查询反馈记录,并查看审核和回复情况。
- 维修进度管理:学生用户可以查看维修任务的进度情况,包括任务列表和详情。通过筛选条件,如寝室编号、维修分类和期望时间,可以方便地了解维修任务的进度和状态。
- 任务处理管理:学生用户可以查看已接收并处理的维修任务列表和详情,了解任务的寝室编号、维修分类、期望时间和接收状态等信息,便于管理已完成的维修工作。
- 消息通知管理:学生用户可以查看接收到的消息通知列表和详情,包括通知的宿管名称和通知时间。通过筛选条件,可以方便地查询和管理消息通知,确保及时获取重要信息。
- 维修用户管理模块:
- 后台首页:维修用户可在后台首页进行个人资料修改,确保信息的准确性。
- 任务分配管理:维修用户能查看宿管用户分配的维修详情,并接收任务。接收后,可查看维修细节、用户反馈,填写维修进度,处理维修任务。同时,可通过多种方式查询并删除相关任务。
- 任务接收管理:在任务接收列表,维修用户可查看已接收任务的详情,记录维修反馈和进度,处理维修内容。支持根据多种条件查询任务,并管理反馈的审核状态,包括待审核和回复功能。
- 问题反馈管理:维修用户可查看用户的问题反馈列表,详细了解每个反馈的内容。通过灵活的查询条件,可快速定位特定反馈,并根据需要进行删除操作。
- 维修进度管理:在维修进度管理中,维修用户能查看所有任务的维修进度列表,了解每项任务的当前状态。通过查询功能,可迅速定位特定任务的维修详情,必要时进行删除操作。
- 任务处理管理:维修用户可查看任务处理列表,详细了解每项任务的详情。支持根据多种条件查询任务,并导出任务数据。同时,可对任务进行删除操作,以便更好地管理维修任务。
- 管理员模块:
- 登录:管理员的账号是在数据列表中直接设置生成的,不需要进行注册,可直接输入账号密码登录,同时可对管理员资料进行增删改查。
- 后台首页:管理员可以查看维修申请的统计信息,实时掌握维修工作的整体情况,为决策提供支持。
- 系统用户:管理员在后台可以管理不同用户角色,包括学生用户、宿管用户和维修用户,并能通过昵称进行查询和添加新用户或删除已有用户。此外,管理员还能查看系统详情,确保各项功能正常运行。
- 维修分类管理:管理员可以管理维修分类的列表,包括添加新的维修分类、查看分类详情,并能通过分类信息进行查询和删除操作,确保分类信息准确无误。
- 维修申请管理:管理员可以查看所有维修申请的列表,并添加新的维修申请。通过寝室编号、维修分类、期望时间及审核状态等多种条件进行查询,支持导出数据,还能对不再需要的申请进行删除操作。
- 任务分配管理:管理员负责分配维修任务给维修员,并能查看任务详情。通过多种条件查询任务信息,确保任务分配合理高效,同时支持删除已完成或无效的任务。
- 任务接收管理:管理员可以监控维修员的任务接收情况,查看任务详情,并处理相关反馈信息。通过条件查询了解任务进度,及时发现问题并处理,保障维修工作顺利进行。
- 问题反馈管理:管理员可以查看学生用户的问题反馈,包括寝室编号、维修分类、期望时间等详细信息,并根据审核状态进行查询和处理。及时响应并解决问题,提升服务质量。
- 维修进度管理:管理员能够监控维修进度,查看各个维修申请的当前状态。通过条件查询了解维修进度,确保维修工作按时完成,提升用户满意度。
- 任务处理管理:管理员可以查看维修任务的处理情况,包括任务详情和接收状态。通过条件查询导出任务数据,便于分析和优化维修流程。
- 消息通知管理:管理员可以发布消息通知,包括通知内容、宿管姓名和通知时间等,以便及时传达重要信息。同时,管理员还能查看通知列表,删除不再需要的通知。
- 权限管理:管理员负责整个系统的权限管理,可以修改、查询、重置权限列表,通过权限名和用户组进行查询。管理员还能添加、修改和删除权限,确保系统安全稳定运行。
- 宿管用户模块:
- 后台首页:宿管用户可查看维修申请统计表,获取维修申请的总体情况。
- 维修申请管理:宿管用户可查看维修申请列表,并查看每个申请的详情。同时,可以根据寝室编号、维修分类、期望时间以及审核状态进行查询和筛选。用户还可以导出申请数据,方便后续分析。此外,宿管用户能够对维修申请进行审核和回复,确保申请得到及时处理。
- 任务分配管理:宿管用户可查看任务分配列表,并了解每个任务的详情。通过筛选条件,如寝室编号、维修分类、期望时间和维修员名,用户能够快速定位所需信息。若有必要,还可以删除已分配的任务。
- 任务接收管理:宿管用户能够查看任务接收列表,了解维修任务的状态。通过寝室编号、维修分类、期望时间和接收状态等条件,用户可以方便地查询和跟踪任务接收情况。
- 问题反馈管理:宿管用户可查看问题反馈列表,并详细了解每个反馈的内容。根据寝室编号、维修分类、期望时间、反馈时间和审核状态等条件,用户可以高效地进行查询。同时,宿管用户还负责对问题反馈进行审核和回复,确保问题得到妥善解决。
- 维修进度管理:宿管用户通过查看维修进度列表,可以了解维修任务的实时进度。通过寝室编号、维修分类和期望时间等条件,用户能够方便地查询和跟踪维修进度,确保任务按时完成。
- 任务处理管理:宿管用户可查看任务处理列表,并了解每个任务的处理情况。通过寝室编号、维修分类、期望时间和接收状态等条件,用户可以快速定位所需信息,并导出处理数据进行分析。
- 消息通知管理:宿管用户能够查看消息通知列表,并添加新的通知。通过宿管姓名和通知时间等条件,用户可以方便地查询和管理通知信息。同时,宿管用户还可以删除不再需要的通知,保持列表的整洁和有序。
2.2.2 非功能性分析
寝室维修上报管理系统的非功能性需求比如系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:
表2-1寝室维修上报管理系统非功能需求表
安全性 | 主要指寝室维修上报管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指寝室维修上报管理系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响寝室维修上报管理系统占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着寝室维修上报管理系统的页面展示内容进行操作,就可以了。 |
可维护性 | 寝室维修上报管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
2.3 系统用例分析
通过2.2功能的分析,得出了系统的用例图:
学生用户用例图如下所示。
图2-1 学生用户用例图
维修用户用例图如下所示。
图2-2 维修用户用例图
管理员用例图如下所示。
图2-3 管理员用例图
宿管用户用例图如下所示。
图2-3 管理员用例图
2.4 系统的流程分析
2.4.1登录流程
图2-4登录流程图
2.4.2添加信息流程
添加信息流程图,如下图所示:
图2-5添加信息流程图
2.4.3删除信息流程
删除信息流程图,如下图所示:
图2-6删除信息流程图
3.1 系统架构设计
寝室维修上报管理系统从架构上分为三层:表现层(UI)、业务逻辑层(BLL)以及数据层(DL)。
图3-1 寝室维修上报管理系统架构设计图
表现层(UI):又称UI层,主要完成寝室维修上报管理系统的UI交互功能,一个良好的UI可以打打提高用户的用户体验,增强用户使用寝室维修上报管理系统时的舒适度。UI的界面设计也要适应不同版本的寝室维修上报管理系统以及不同尺寸的分辨率,以做到良好的兼容性。UI交互功能要求合理,用户进行交互操作时必须要得到与之相符的交互结果,这就要求表现层要与业务逻辑层进行良好的对接。
业务逻辑层(BLL):主要完成寝室维修上报管理系统的数据处理功能。用户从表现层传输过来的数据经过业务逻辑层进行处理交付给数据层,系统从数据层读取的数据经过业务逻辑层进行处理交付给表现层。
数据层(DL):由于寝室维修上报管理系统的数据是放在服务端的mysql数据库中,因此本属于服务层的部分可以直接整合在业务逻辑层中,所以数据层中只有数据库,其主要完成寝室维修上报管理系统的数据存储和管理功能。
3.2开发流程设计
寝室维修上报管理系统的开发对管理模块和系统使用的数据库进行分析,编写代开发,规划和操作是构建信息管理应用程序的必要三步曲,它决定了系统是否能够真正实现预设功能以及是否可以在成功设计后实施。在开发过程中,每个阶段必须严格按照线性顺序进行开发,并且在相应阶段生成的每个工作都可以通过技术进行验证和检查。确保一个阶段完成后是正确的,不会造成下一阶段拖拽现象,使系统完成设计功能后得到保证。
从寝室维修上报管理系统的成功开发经验来看,上述方法效果最为明显,最大程度地降低了系统开发的复杂性。如图3-2所示。
图3-2开发系统流程图
3.3系统功能模块设计
通过对寝室维修上报管理系统的功能需求分析以及用例分析,得出了寝室维修上报管理系统的功能模块图如图3-3所示。

3.4数据库设计
数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。
3.4.1 数据库概念结构设计
下面是整个寝室维修上报管理系统中主要的数据库表总E-R实体关系图。
图3-4 系统总体ER图
3.4.2数据表
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表housing_management_users (宿管用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | housing_management_users_id | int | 10 | 0 | N | Y | 宿管用户ID | |
2 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
3 | dormitory_telephone_number | varchar | 16 | 0 | Y | N | 宿管电话 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表maintenance_classification (维修分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | maintenance_classification_id | int | 10 | 0 | N | Y | 维修分类ID | |
2 | maintenance_classification | varchar | 64 | 0 | Y | N | 维修分类 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | maintenance_progress_id | int | 10 | 0 | N | Y | 维修进度ID | |
2 | repair_account | int | 10 | 0 | Y | N | 0 | 维修账号 |
3 | maintenance_personnel_name | varchar | 64 | 0 | Y | N | 维修员名 | |
4 | housing_management_account | int | 10 | 0 | Y | N | 0 | 宿管账号 |
5 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
6 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
7 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
8 | student_phone_number | varchar | 64 | 0 | Y | N | 学生电话 | |
9 | dormitory_number | varchar | 64 | 0 | Y | N | 寝室编号 | |
10 | maintenance_classification | varchar | 64 | 0 | Y | N | 维修分类 | |
11 | repair_quantity | int | 10 | 0 | Y | N | 0 | 维修数量 |
12 | expected_time | datetime | 19 | 0 | Y | N | 期望时间 | |
13 | maintenance_issues | text | 65535 | 0 | Y | N | 维修问题 | |
14 | maintenance_progress | varchar | 64 | 0 | Y | N | 维修进度 | |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | message_notification_id | int | 10 | 0 | N | Y | 消息通知ID | |
2 | housing_management_account | int | 10 | 0 | Y | N | 0 | 宿管账号 |
3 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
4 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
5 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
6 | notification_time | datetime | 19 | 0 | Y | N | 通知时间 | |
7 | notification_content | varchar | 64 | 0 | Y | N | 通知内容 | |
8 | notification_details | text | 65535 | 0 | Y | N | 通知详情 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | problem_feedback_id | int | 10 | 0 | N | Y | 问题反馈ID | |
2 | repair_account | int | 10 | 0 | Y | N | 0 | 维修账号 |
3 | maintenance_personnel_name | varchar | 64 | 0 | Y | N | 维修员名 | |
4 | housing_management_account | int | 10 | 0 | Y | N | 0 | 宿管账号 |
5 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
6 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
7 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
8 | student_phone_number | varchar | 64 | 0 | Y | N | 学生电话 | |
9 | dormitory_number | varchar | 64 | 0 | Y | N | 寝室编号 | |
10 | maintenance_classification | varchar | 64 | 0 | Y | N | 维修分类 | |
11 | repair_quantity | int | 10 | 0 | Y | N | 0 | 维修数量 |
12 | expected_time | datetime | 19 | 0 | Y | N | 期望时间 | |
13 | maintenance_issues | text | 65535 | 0 | Y | N | 维修问题 | |
14 | feedback_time | datetime | 19 | 0 | Y | N | 反馈时间 | |
15 | feedback_content | text | 65535 | 0 | Y | N | 反馈内容 | |
16 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
17 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
18 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
19 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | repair_request_id | int | 10 | 0 | N | Y | 维修申请ID | |
2 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
3 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
4 | student_phone_number | varchar | 64 | 0 | Y | N | 学生电话 | |
5 | housing_management_account | int | 10 | 0 | Y | N | 0 | 宿管账号 |
6 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
7 | dormitory_number | varchar | 64 | 0 | Y | N | 寝室编号 | |
8 | maintenance_classification | varchar | 64 | 0 | Y | N | 维修分类 | |
9 | repair_quantity | int | 10 | 0 | Y | N | 0 | 维修数量 |
10 | expected_time | datetime | 19 | 0 | Y | N | 期望时间 | |
11 | maintenance_issues | text | 65535 | 0 | Y | N | 维修问题 | |
12 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
13 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | repair_user_id | int | 10 | 0 | N | Y | 维修用户ID | |
2 | maintenance_personnel_name | varchar | 64 | 0 | Y | N | 维修员名 | |
3 | repair_phone_number | varchar | 16 | 0 | Y | N | 维修电话 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_users_id | int | 10 | 0 | N | Y | 学生用户ID | |
2 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
3 | student_phone_number | varchar | 16 | 0 | Y | N | 学生电话 | |
4 | student_id | varchar | 64 | 0 | N | N | 学生学号 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | task_allocation_id | int | 10 | 0 | N | Y | 任务分配ID | |
2 | housing_management_account | int | 10 | 0 | Y | N | 0 | 宿管账号 |
3 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
4 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
5 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
6 | student_phone_number | varchar | 64 | 0 | Y | N | 学生电话 | |
7 | dormitory_number | varchar | 64 | 0 | Y | N | 寝室编号 | |
8 | maintenance_classification | varchar | 64 | 0 | Y | N | 维修分类 | |
9 | repair_quantity | int | 10 | 0 | Y | N | 0 | 维修数量 |
10 | expected_time | datetime | 19 | 0 | Y | N | 期望时间 | |
11 | maintenance_issues | text | 65535 | 0 | Y | N | 维修问题 | |
12 | repair_account | int | 10 | 0 | Y | N | 0 | 维修账号 |
13 | maintenance_personnel_name | varchar | 64 | 0 | Y | N | 维修员名 | |
14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | task_processing_id | int | 10 | 0 | N | Y | 任务处理ID | |
2 | repair_account | int | 10 | 0 | Y | N | 0 | 维修账号 |
3 | maintenance_personnel_name | varchar | 64 | 0 | Y | N | 维修员名 | |
4 | housing_management_account | int | 10 | 0 | Y | N | 0 | 宿管账号 |
5 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
6 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
7 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
8 | student_phone_number | varchar | 64 | 0 | Y | N | 学生电话 | |
9 | dormitory_number | varchar | 64 | 0 | Y | N | 寝室编号 | |
10 | maintenance_classification | varchar | 64 | 0 | Y | N | 维修分类 | |
11 | repair_quantity | int | 10 | 0 | Y | N | 0 | 维修数量 |
12 | expected_time | datetime | 19 | 0 | Y | N | 期望时间 | |
13 | maintenance_issues | text | 65535 | 0 | Y | N | 维修问题 | |
14 | receiving_status | varchar | 64 | 0 | Y | N | 接收状态 | |
15 | arrival_time | datetime | 19 | 0 | Y | N | 到达时间 | |
16 | repair_time | datetime | 19 | 0 | Y | N | 维修时间 | |
17 | completion_time | datetime | 19 | 0 | Y | N | 完成时间 | |
18 | repair_details | text | 65535 | 0 | Y | N | 维修详情 | |
19 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | task_reception_id | int | 10 | 0 | N | Y | 任务接收ID | |
2 | repair_account | int | 10 | 0 | Y | N | 0 | 维修账号 |
3 | maintenance_personnel_name | varchar | 64 | 0 | Y | N | 维修员名 | |
4 | housing_management_account | int | 10 | 0 | Y | N | 0 | 宿管账号 |
5 | name_of_dormitory_manager | varchar | 64 | 0 | Y | N | 宿管姓名 | |
6 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
7 | student_name | varchar | 64 | 0 | Y | N | 学生姓名 | |
8 | student_phone_number | varchar | 64 | 0 | Y | N | 学生电话 | |
9 | dormitory_number | varchar | 64 | 0 | Y | N | 寝室编号 | |
10 | maintenance_classification | varchar | 64 | 0 | Y | N | 维修分类 | |
11 | repair_quantity | int | 10 | 0 | Y | N | 0 | 维修数量 |
12 | expected_time | datetime | 19 | 0 | Y | N | 期望时间 | |
13 | maintenance_issues | text | 65535 | 0 | Y | N | 维修问题 | |
14 | receiving_status | varchar | 64 | 0 | Y | N | 接收状态 | |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
4.1 学生用户模块
4.1.1后台首页界面
进入系统后台首页,可以查看系统所有功能,维修申请管理、任务分配管理、任务接收管理、问题反馈管理等信息,其主界面展示如下图所示。

图4-1 学生用户后台首页界面图
注册模块满足用户两部分,当用户想要进行资料相关信息的查询管理的时候,就必须进行登录,如果没有账号的话,在登录界面,点击“注册”按钮就会跳转到注册的界面,根据提示填写好账号、密码、昵称、邮箱、身份、用户姓名、用户性别、联系电话等注册信息,添加提交,注册的信息在数据库中就添加完成了,然后再输入填写好的账号和密码进行登录,其注册主界面展示如下图所示。

图4-2用户注册界面图
注册关键代码如下:
/
* 注册
* @param user
* @return
*/
@PostMapping("register")
public Map<String, Object> signUp(@RequestBody User user) {
// 查询用户
Map<String, String> query = new HashMap<>();
query.put("username",user.getUsername());
List list = service.select(query, new HashMap<>()).getResultList();
if (list.size()>0){
return error(30000, "用户已存在");
}
user.setUserId(null);
user.setPassword(service.encryption(user.getPassword()));
service.save(user);
return success(1);
}
/
* 用户ID:[0,8388607]用户获取其他与用户相关的数据
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "user_id")
private Integer userId;
/
* 账户状态:[0,10](1可用|2异常|3已冻结|4已注销)
*/
@Basic
@Column(name = "state")
private Integer state;
/
* 所在用户组:[0,32767]决定用户身份和权限
*/
@Basic
@Column(name = "user_group")
private String userGroup;
/
* 上次登录时间:
*/
@Basic
@Column(name = "login_time")
private Timestamp loginTime;
/
* 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时
*/
@Basic
@Column(name = "phone")
private String phone;
/
* 手机认证:[0,1](0未认证|1审核中|2已认证)
*/
@Basic
@Column(name = "phone_state")
private Integer phoneState;
/
* 用户名:[0,16]用户登录时所用的账户名称
*/
@Basic
@Column(name = "username")
private String username;
/
* 昵称:[0,16]
*/
@Basic
@Column(name = "nickname")
private String nickname;
/
* 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成
*/
@Basic
@Column(name = "password")
private String password;
/
* 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时
*/
@Basic
@Column(name = "email")
private String email;
/
* 邮箱认证:[0,1](0未认证|1审核中|2已认证)
*/
@Basic
@Column(name = "email_state")
private Integer emailState;
/
* 头像地址:[0,255]
*/
@Basic
@Column(name = "avatar")
private String avatar;
/
* 创建时间:
*/
@Basic
@Column(name = "create_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Timestamp createTime;
@Basic
@Transient
private String code;
}
4.1.3 登录界面
学生用户在登录界面输入账号+密码,点击“登录”按钮,系统在用户数据库表中会对用户的账号进行匹配,账号+密码正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其登录主界面展示如下图所示。

图4-3学生用户登录界面图
登录关键代码如下所示。
/
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.select(map, new HashMap<>()).getResultList();
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();
String res = String.valueOf(service.runCountSql(sql).getSingleResult());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
学生用户可以提交维修申请,并查看申请列表。同时,可以根据寝室编号、维修分类、期望时间以及审核状态进行查询、删除、查看审核和回复等操作,方便管理维修进度。维修申请管理界面图如下图所示。

图4-4维修申请管理界面图
学生用户可以查看维修任务的分配情况,包括任务列表和详情。通过筛选条件,如寝室编号、维修分类、期望时间和维修员名,可以方便地查询任务信息。任务分配管理界面如下图所示。

图4-5任务分配管理界面图
学生用户可以填写并提交维修问题反馈,并查看反馈列表和详情。通过筛选条件,如寝室编号、维修分类、期望时间、反馈时间和审核状态,可以方便地查询反馈记录,并查看审核和回复情况。问题反馈管理界面如下图所示。

图4-6问题反馈管理界面图
4.2 维修用户模块
维修用户能查看宿管用户分配的维修详情,并接收任务。接收后,可查看维修细节、用户反馈,填写维修进度,处理维修任务。同时,可通过多种方式查询并删除相关任务。任务分配管理界面如下图所示。

图4-7任务分配列表界面图
在任务接收列表,维修用户可查看已接收任务的详情,记录维修反馈和进度,处理维修内容。支持根据多种条件查询任务,并管理反馈的审核状态,包括待审核和回复功能。任务接收管理界面如下图所示。

图4-8任务接收管理界面图
任务接收管理的关键代码如下:
server:
port: 5000
servlet:
context-path: /api
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/CS725260_20211101091736?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
jackson:
property-naming-strategy: CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES
default-property-inclusion: ALWAYS
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
4.3管理员功能模块
管理员在后台可以管理不同用户角色,包括学生用户、宿管用户和维修用户,并能通过昵称进行查询和添加新用户或删除已有用户。此外,管理员还能查看系统详情,确保各项功能正常运行。系统用户界面如下图所示。

图4-9系统用户界面图
管理员可以管理维修分类的列表,包括添加新的维修分类、查看分类详情,并能通过分类信息进行查询和删除操作,确保分类信息准确无误。维修分类管理界面如下图所示。

图4-10维修分类管理界面图
维修分类管理关键代码如下所示。
@EnableJpaRepositories
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class,args);
}
}
管理员负责分配维修任务给维修员,并能查看任务详情。通过多种条件查询任务信息,确保任务分配合理高效,同时支持删除已完成或无效的任务。任务分配管理界面如下图所示。

图4-11任务分配管理界面图
管理员可以监控维修员的任务接收情况,查看任务详情,并处理相关反馈信息。通过条件查询了解任务进度,及时发现问题并处理,保障维修工作顺利进行。任务接收管理界面如下图所示。

图4-12任务接收管理界面图
管理员可以查看学生用户的问题反馈,包括寝室编号、维修分类、期望时间等详细信息,并根据审核状态进行查询和处理。及时响应并解决问题,提升服务质量。问题反馈管理界面如下图所示。

图4-13问题反馈管理界面图
4.4 宿管用户功能模块
宿管用户可查看维修申请列表,并查看每个申请的详情。同时,可以根据寝室编号、维修分类、期望时间以及审核状态进行查询和筛选。用户还可以导出申请数据,方便后续分析。此外,宿管用户能够对维修申请进行审核和回复,确保申请得到及时处理。维修申请管理界面如下图所示。

图4-14 维修申请管理界面图
宿管用户可查看任务分配列表,并了解每个任务的详情。通过筛选条件,如寝室编号、维修分类、期望时间和维修员名,用户能够快速定位所需信息。若有必要,还可以删除已分配的任务。任务分配管理界面如下图所示。

图4-15 任务分配管理界面图
宿管用户可查看维修申请统计表,获取维修申请的总体情况。后台首页管理界面如下图所示。

图4-16 后台首页管理界面图
5.1系统测试的目的
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。
软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。
寝室维修上报管理系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在寝室维修上报管理系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。
5.2系统测试方法
在对寝室维修上报管理系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让寝室维修上报管理系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个寝室维修上报管理系统开发所牵扯的该问题都必须一一解决,提高寝室维修上报管理系统的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
5.3功能测试
用户登录测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
登录模块 | 用户名:admin 密码:123 | 弹出错误提示,提示密码错误 | 弹出错误提示,提示密码错误 | 通过 |
登录模块 | 用户名:123 密码:admin | 弹出错误提示,提示用户名错误 | 弹出错误提示,提示用户名错误 | 通过 |
登录模块 | 用户名:admin 密码:admin | 管理员登录成功 | 管理员登录成功 | 通过 |
删除分类测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
删除分类模块 | 分类名:最新通知 | 删除成功、页面自动跳转 | 删除成功、页面自动跳转 | 通过 |
修改密码测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
修改密码模块 | 原密码:666 新密码:123 确认密码:123 | 弹出错误提示,提示原密码错误 | 弹出错误提示,提示原密码错误 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:333 | 弹出错误提示,提示确认密码不一致 | 弹出错误提示,提示确认密码不一致 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:123 | 密码修改成功 | 密码修改成功 | 通过 |
通过对功能的测试,寝室维修上报管理系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。
至此,寝室维修上报管理系统的设计与实现已经结束,在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从中我也收获了很多宝贵的方法和设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如springboot、JAVA语言、MYSQL,这些技术都是在以前的学习中学到了,其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情。
当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中。
参考文献
[1]Mak H C ,Cheung C S . Automatic build repair for test cases using incompatible Java versions [J]. Information and Software Technology, 2024, 172 107473-.
[2]包俊辉,黎海祥. 浅谈基于智能化的校园网上报修管理平台研究 [J]. 家电维修, 2024, (04): 31-33.
[3]陈淼,羊开云. 基于微信小程序的校园报修管理系统设计 [J]. 网络安全技术与应用, 2024, (01): 57-60.
[4]方勇,曹刚,王炳文,等. 基于降低95598万户故障报修工单数量的电网企业主动服务模式实践研究 [J]. 企业改革与管理, 2023, (23): 15-17.
[5]梁修权. 移动办公平台终端网络报修系统设计与实现 [J]. 信息记录材料, 2023, 24 (12): 149-151+154.
[6]游晶,邱淑丽,李敬文. 基于SpringBoot的校园智慧报修系统的设计与实现 [J]. 电脑知识与技术, 2023, 19 (32): 50-52+65.
[7]蒋银虎,鲍顺萍. 基于ASP.NET的高校报修系统的设计与实现 [J]. 电脑知识与技术, 2023, 19 (30): 37-39+43.
[8]邹骅,刘沈. 微信公众号结合Web的高校多媒体报修系统设计 [J]. 江苏工程职业技术学院学报, 2023, 23 (03): 15-19.
[9]Ghoshal A . Oracle’s MySQL HeatWave gets Vector Store, generative AI features [J]. InfoWorld.com, 2023,
[10]陈蓓蕾,洪年松. 基于SpringBoot的数据库接口设计 [J]. 信息与电脑(理论版), 2023, 35 (16): 181-183.
[11]魏林,朱杨骁,蔡亚洲,等. 基于SSM的高校实验室设备故障报修综合管理平台设计与实现 [J]. 电脑知识与技术, 2023, 19 (23): 57-59.
[12]张成英,钟逸,姜涌,等. 基于维修大数据和建筑全生命期品质管理的高校宿舍运维管理研究 [J]. 施工技术(中英文), 2023, 52 (15): 16-21+28.
[13]何昌昊,刘占友. 基于数据分析的学生宿舍管理研究——以西南大学为例 [J]. 西南师范大学学报(自然科学版), 2023, 48 (07): 89-94.
[14]陈霖. 应用匈牙利算法实现宿舍分配的宿舍管理系统[D]. 江西师范大学, 2023.
[15]张网娟,汪晋舟,蒋马利,等. 基于“互联网+”的设备报修系统设计与实现 [J]. 电子设计工程, 2023, 31 (07): 156-159+164.
[16]许粲. 基于Java的学校网络报修系统设计与研究 [J]. 信息记录材料, 2023, 24 (03): 181-184.
[17]Yang Y . Design and Implementation of Student Information Management System Based on Springboot [J]. Advances in Computer, Signals and Systems, 2022, 6 (6):
[18]黄俊荣. 福建高职院校学生宿舍管理研究[D]. 华侨大学, 2022.
[19]苗田. 高校宿舍维修改造项目现状问题分析及改进建议 [J]. 居舍, 2020, (26): 187-188.
[20]钟鸣. 基于Chameleon空间聚类算法的物业维修管理信息系统研发[D]. 中国地质大学(北京), 2020.
致 谢
这次毕业设计能够完成,最重要的就是来自指导老师的帮助,老师不厌其烦的对我的论文及毕业设计提出非常有建设性的建议,我的毕设能够完成离不开老师的帮助。我对老师由衷的表示感谢,
其次要感谢大学四年里学院里所有的任课老师的教导,老师们在我整个大学四年里给予了我丰富的知识,让我能够在大学中不虚度光阴,踏踏实实的学习,没有这些老师不辞辛劳的教诲,我无法完成这四年的学业。
由于自己的水平有限,毕设仍然存在着很大的缺陷,各位老师若提出意见,我会努力改正。
点赞+收藏+关注 →私信免费领取本源代码、数据库