引言

高校教学楼、宿舍与实验室中的空调、电脑、网络设备等一旦出现故障,师生往往需要通过电话或线下登记的方式报修。传统模式信息分散、进度不透明,管理员难以统一审核派单,维修人员也无法在移动端及时接收任务,最终导致响应慢、体验差。

本文介绍的校园设备报修系统,面向学生用户、维修员与管理员三类角色,以移动端小程序为师生服务入口,以 Spring Boot 管理后台为运营中枢,通过 MySQL 持久化报修单、图片附件与评价数据。系统把提交报修、审核派单、现场维修、确认完成、服务评价串成闭环,让每一张工单的状态与处理过程都可追溯,适合作为毕业设计或校园后勤信息化学习的参考案例。

系统概述

本系统包含三个使用端:移动端小程序供学生与维修员使用,Web 管理后台供管理员维护基础数据与审核工单,后端服务统一提供接口与页面渲染。

主要业务链路为:学生选择报修分类并上传故障照片提交工单,管理员审核通过后分配维修员,维修员在小程序标记维修完成,用户确认完结并评分评价。与此同时,系统还提供学校简介、系统公告等信息发布能力,方便在校师生了解校园动态。

技术架构

系统采用 Spring Boot 1.5.7.RELEASE 作为服务端框架,内嵌 Tomcat 8.5.20,监听 8080 端口,上下文路径为 /CampusEquipmentRepair。持久层使用 MyBatis 3.4.0 配合 mybatis-spring-boot-starter 1.1.1 访问 MySQL 数据库,管理端页面由 JSP 与 JSTL 渲染,小程序端基于原生小程序框架开发,基础库版本 2.19.6,通过 wx.request 调用后端 JSON 接口。

层次 技术选型 说明
表现层 小程序 + JSP 小程序负责师生交互,JSP 负责后台管理
业务层 Spring Boot + Spring MVC Controller 与 Service 处理审核、派单与状态流转
数据层 MySQL + MyBatis 九张核心业务表支撑报修、评价与内容管理

核心功能

用户注册与身份登录

学生可在小程序注册页填写账号、密码、姓名、性别、手机号、宿舍号并上传个人照片,提交后写入 users 表。登录页支持用户与维修员两种身份切换,同一入口根据角色进入不同的个人中心菜单。维修员账号由管理员在后台预先维护,登录后可查看当前任务与历史记录。

小程序用户注册页,填写账号、密码、姓名、宿舍号并上传头像

信息发布与首页展示

首页通过轮播图与列表摘要展示学校简介与系统公告,师生可进入详情页阅读富文本内容。后台管理员可使用 KindEditor 维护公告与简介图文,小程序端通过 Index_List 等接口拉取最新数据,形成后台编辑、前台展示的内容发布模式。

学校简介列表页,展示办学思想、历史沿革等图文条目

在线提交报修

用户在提交报修页选择报修分类(如设备维修、网络维护、设备保养),填写具体描述与联系电话,并可上传多张现场照片。提交后系统自动生成报修单号,状态置为待审核,同时在 progress 字段写入首条进度记录,关联图片保存至 photo 表与 upload 目录。

提交报修页面,选择设备保养分类、填写故障描述并上传现场照片

报修跟踪与进度时间线

用户可在我的报修中按状态查看工单,进入详情页后看到分类、联系电话、图片附件及完整进度时间线。待审核阶段支持查看与删除;维修完成后列表会出现评价入口,引导用户对维修员服务打分留言,评价结果进入 evaluation 表供后台查阅。

报修详情页,展示待审核工单的分类、状态与提交时间

管理端审核与派单

管理员登录 Web 后台后,在待审核报修列表中执行通过或驳回操作;审核通过的工单进入已审核报修,管理员选择维修员完成派单,状态更新为维修中,进度中自动追加派单时间与维修员联系方式。后台详情页可同时预览用户上传的照片,便于派单前判断故障类型。

管理后台登录界面,管理员通过浏览器进入系统

后台已审核报修详情,记录派单信息与维修进度时间线

维修员作业与双向确认

维修员登录小程序后,在当前维修列表处理分配给自己的工单,完成现场维修后更新状态;用户收到处理结果后确认完结,工单状态变为已完成。这种双向确认机制避免单方面结单,也为后续服务评价提供依据。

小程序登录页支持用户与维修员身份切换,后台同步展示业务菜单

我的报修列表,已完成工单可查看详情并提交服务评价

数据库设计

系统数据库 campusequipmentrepair 包含九张核心业务表:

  • users:学生账号、密码、姓名、宿舍号、头像与注册时间
  • workers:维修员账号、联系方式、照片等基础信息
  • admin:后台管理员账号与角色
  • repaircategory:报修分类字典,如设备维修、网络维护
  • repairs:报修单号、分类、描述、状态、进度时间线、指派维修员
  • photo:报修单关联的现场图片路径
  • evaluation:用户对已完成工单的评价分数与文字评语
  • announcement:系统公告标题、富文本内容与发布时间
  • schoolprofile:学校简介图文条目

报修状态按业务依次流转:待审核、审核通过、审核不过、维修中、已完成。progress 字段以多条带时间戳的记录拼接,完整保留审核、派单、维修与确认节点。

界面与交互展示

从演示录像可见,小程序端采用底部 TabBar 组织首页、学校简介、系统公告与我的四个主入口,报修相关页面通过个人中心菜单进入。管理端采用左侧折叠菜单与右侧内容区的经典后台布局,报修管理分为待审核与已审核两个子模块,与小程序端状态保持同步。文件上传后统一映射到 upload 路径,前后端均可直接访问图片资源。

部署与运行

运行环境建议 JDK 8、MySQL 5.5 及以上、小程序开发者工具与 Chrome 浏览器。部署时先执行 DB 目录下 campusequipmentrepair.sql 初始化库表,再修改 application.yml 中的数据库连接信息,运行 CampusEquipmentRepairApplication 启动后端。浏览器访问本地 8080 端口并带上项目上下文路径进入管理端,开发者工具打开小程序工程并将 config.js 中 basePath 指向同一后端地址即可联调。生产环境请务必修改所有默认管理员、用户与维修员账号密码,不要使用演示弱口令。

总结

该课题将移动端小程序的便捷性与 Spring Boot 后台的管理能力结合起来,完整覆盖了校园设备报修的提交、审核、派单、维修、确认与评价环节,代码结构清晰,适合学习 Spring MVC、MyBatis 与小程序前后端分离协作。后续可扩展消息订阅提醒、工单超时预警、按楼栋统计报表或对接校园统一身份认证等能力,进一步提升后勤数字化水平。

更多推荐