课程项目设计--项目设计--宿舍管理系统--vue+springboot完成项目--项目从零开始

news2024/9/21 18:32:15
写在前面:
本文是从项目设计到完成开始写的,本来这个项目基础功能是做完了的,但是之前时间紧张想从头做起了。之前一周写前端+后端累死了.
设计是关键,这一篇主讲设计。可能后面会有修改,本人实力有限,如有更好的欢迎交流。

文章目录

  • 目的与背景
  • 功能介绍
  • 技术选择
  • 数据库设计
    • 学生表
    • 系统用户表
    • 人员表
    • 用户角色关联表
    • 宿舍详情表
    • 宿舍楼表
    • 字典数据库
    • 字典类型数据库
    • 维修记录表
    • 路由菜单管理
    • 系统角色管理
    • 角色路由关联表
    • 电费日志
    • 进出表
    • 通知发送表
    • 通知接收表
    • 建议对话链接表
    • 建议内容表
    • 学生管理日志
    • 违规类型表
    • 动态定时任务表
    • 聊天数据库表
    • 分享表
  • 功能拆分
    • 用户管理
      • 用户注册
      • 用户登录
      • 密码重置
    • 学生管理
      • 添加学生
      • 删除学生
      • 修改学生信息
      • 申请退宿
    • 宿舍管理
      • 宿舍人员管理
      • 宿舍分配
      • 宿舍地图
      • 宿舍电量管理
        • 电量查询
        • 送电
        • 电量充值
        • 停电
        • 水电缺通知
    • 维修管理模块
      • 报修
      • 维修查询
      • 派遣维修人员
      • 维修状态修改
      • 维修缴费
      • 维修日志
    • 通知系统
      • 发送通知
    • 聊天系统
      • 群聊
      • 分享
    • 建议系统
      • 发出建议
      • 建议状态修改
      • 展示接收待办建议
    • 门禁系统
      • 进出记录
      • 进出管控
    • 违规管理
      • 违规记录
      • 违规申诉
      • 违规查询
    • 任务系统
      • 任务分配

目的与背景

本宿舍管理系统旨在提供一个高效、便捷、安全的宿舍管理平台,帮助学校或宿舍管理部门更好地管理学生宿舍,提升宿舍管理的质量和效率。该系统将涵盖学生管理、宿管管理、维修管理、门禁管理、消息管理、建议箱、宿舍地图等功能模块,以满足宿舍管理的各项需求,便捷高效的进行学生宿舍的管理和使用。通过本系统的建立与运行,可以实现对学生宿舍的全面管理和监控,提高宿舍管理的效率和质量,为学生提供一个更加安全、便捷和舒适的居住环境。

背景: 在大学或其他教育机构中,宿舍是学生们的重要居住场所,宿舍管理的好坏直接关系到学生的生活质量和学习环境。传统的宿舍管理方式往往面临诸多问题,如信息不畅通、维修难以及宿舍安全等方面存在隐患。因此,开发一套宿舍管理系统,将有助于提高宿舍管理的效率和质量,为学生提供更好的居住环境。

功能介绍

  1. 学生管理:该功能模块用于学生信息的录入、查询和管理,包括学生入住登记、退宿办理、学生信息变更等。通过该功能,可以实现对学生的个人信息进行统一管理,方便宿舍管理部门随时了解学生的宿舍情况。

  2. 宿管管理:宿管管理功能模块用于宿管人员的管理和任务分配。宿管人员可以通过系统对宿舍进行巡查、卫生检查等,并及时记录和处理违规行为。同时,宿管人员也可以通过系统与学生进行沟通和交流。

  3. 维修管理:该功能模块用于宿舍内设施的维修和报修管理。学生可以通过系统提交维修请求,宿舍管理部门可以及时处理并派遣维修人员进行维修。同时,系统还可以记录维修历史,方便后续的维修管理和维修质量的评估。

  4. 门禁管理:门禁管理功能模块用于宿舍出入口的门禁管理。通过系统可以实现学生的刷码/人脸识别进出宿舍,有效控制宿舍的出入人员,提高宿舍的安全性。

  5. 宿舍选择功能 ,该模块通过学生习惯的填写,来进行宿舍的分配。尝试由管理自主选择,宿舍分配规则,是由习惯,还是依靠传统的班级学号进行分配,就看学校的规定了。

  6. 消息管理:该功能模块用于宿舍管理部门向学生发送通知、公告等信息。学生可以通过系统及时接收到相关信息,方便宿舍管理部门与学生之间的沟通和信息传递。(本来想看看能不能接入微信公众号玩一玩的,但是需要的是服务号且必须获得企业认证)

  7. 宿舍楼聊天系统:改模块可用于同一栋师生之间进行聊天沟通,

  8. 建议箱:建议箱功能模块用于学生提出宿舍管理方面的建议和意见。学生可以通过系统将自己的建议或问题反馈给宿舍管理部门,以便宿舍管理部门及时了解学生的需求和问题,并进行相应的改进。

  9. 宿舍地图:该功能模块用于提供宿舍楼层、房间分布等信息,方便学生和宿舍管理部门查找宿舍位置和了解宿舍的布局情况。

  10. 宿舍水电费管理:该模块用于对宿舍的水电费进行管理、同步和缴纳功能。方便学生的在线缴费。

技术选择

  • JDK17
    后端采用java的jdk17进行
  • maven3.9
    采用maven3进行包管理
  • Springboot3
    后端框架使用springboot3全家桶进行操作
  • spring security
    spring的安全框架
  • spring mvc
    mvc控制
  • mybatis-plus
    持久化框架使用mp来进行数据库操作
  • Mysql数据库
    数据库选择小而免费的mysql数据库
  • xxl-job/手动实现
    定时任务管理
  • npm
    前端包管理工具
  • vue3框架
    前端框架采用vue3进行,由于vue3还未学,时间不够则会采用vue2进行。
  • Element-ui库
    前端使用element-ui进行美化组件的选择。
  • 百度开放平台api
    或采用,用于地图,定位和人脸识别,后期人脸识别会尝试手动实现
  • websocket
    用于消息聊天同步,以及通知功能的实现
  • redis
    或采用redis加速查询速度
  • 其他工具类
    包括但不限于像hutool工具类、fastjson2,JWT令牌、Quartz等

格外的编程工具选用
后端采用:idea

数据库设计

表通过idea的图工具导出

学生表

在这里插入图片描述

系统用户表

在这里插入图片描述

人员表

在这里插入图片描述

用户角色关联表

在这里插入图片描述

宿舍详情表

在这里插入图片描述

宿舍楼表

在这里插入图片描述

字典数据库

在这里插入图片描述

字典类型数据库

在这里插入图片描述

维修记录表

在这里插入图片描述

路由菜单管理

在这里插入图片描述

系统角色管理

在这里插入图片描述

角色路由关联表

在这里插入图片描述

电费日志

在这里插入图片描述

进出表

在这里插入图片描述

通知发送表

在这里插入图片描述

通知接收表

在这里插入图片描述

建议对话链接表

在这里插入图片描述

建议内容表

在这里插入图片描述

学生管理日志

违规类型表

在这里插入图片描述

动态定时任务表

字段还不明确

聊天数据库表

字段还不明确

分享表

类似朋友圈,可分享自己的记录
不明确

功能拆分

用户管理

用户注册

分为2个模块,学生用户和其他用户
学生用户通过输入学生的学号,姓名,手机号进行身份验证,然后需要进行邮箱绑定和密码的设置完成注册。
其他用户需要通过管理员统一进行用户注册。
注意,密码在数据库需要加密处理。

用户登录

通过输入验证码输入验证后,输入账号密码来进行登录校验。
获取jwt令牌和用户信息

邮箱登录

格外的或实现人脸登录。

密码重置

通过邮箱验证进行重置密码

学生管理

添加学生

可单个添加选择,输入学生的名字,姓名,年龄,手机号等基本信息进行添加。

批量添加,导入excel进行学生的批量添加,可按照班级进行批量添加(需要设置班级)

删除学生

可对学生进行逻辑删除。

也可批量对班级/年级学生进行删除
没用年级表,班级管理是另外的价钱,班级字段采用年份4+专业字典2+班级编号的方式2

修改学生信息

学生本人通过系统账号进行申请或管理员进行修改。

申请退宿

学生可通过系统提交退宿申请,通过后将删除学生的宿舍信息。

宿舍管理

宿舍人员管理

可对宿舍的人员进行查询,修改

宿舍分配

学生通过问卷的形式,通过对习惯的分析进行宿舍的分配。
也可以按照学校要求通过班级学号的形式直接进行分配。

宿舍地图

可进行宿舍地图查看,方便新生找到宿舍。

宿舍电量管理

电量查询

可对宿舍电量进行查询

管理员可查看所有宿舍的电量

送电

可对停用但无法充值的寝室进行送电

电量充值

可进行电费的充值,由于无充值只进行模拟

停电

由于无实际常见,只进行模拟。

水电缺通知

当水电费低于5快的时候提醒学生尽快重置。

维修管理模块

报修

通过小程序/网站上进行报修

维修查询

管理员和维修人员可进行维修查询

派遣维修人员

系统派发维修任务

维修状态修改

管理员和维修人员可对维修状态进行修改。

维修缴费

部分维修需要付费。模拟进行

维修日志

每一次就进行记录方便查询。(反馈)

通知系统

发送通知

管理部门可对特定角色人员下发通知。
宿管可对改管理楼层同学进行通知。

聊天系统

群聊

可进行学生内的闲聊,和分享

分享

可进行自己的分享

建议系统

发出建议

学生可进行建议反馈。
可匿名

建议状态修改

当交流过后,可修改建议的完成度和满意度。

展示接收待办建议

可公开接收并打算实现/实现了的建议

门禁系统

进出记录

对进出宿舍的学生进行记录

进出管控

通过刷二维码/人脸识别进行进出权限管控

违规管理

违规记录

记录违规状态

违规申诉

如有特殊情况可进行申诉

违规查询

可查询自己的违规记录

管理员可查询所有。

任务系统

任务分配

可对特定角色进行任务分配/通知。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/902155.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【微信小程序】下拉刷新功能实现

微信小程序开发系列 文章目录 前言一、onPullDownRefresh函数二、实现1.开启下拉刷新2.监听下拉事件 前言 在开发微信小程序中经常会需要下拉页面进行更新要页面数据的功能,微信小程序提供了onPullDownRefresh函数。该函数作用是监听用户下拉动作。 一、onPullDown…

【多线程】 —— 线程池

文章目录 1、什么是线程池,线程池有哪些(创建)(1) newCachedThreadPool(2) newFixedThreadPool(3) newSingleThreadExecutor(4) newScheduleThreadPool 2、为什么要使用线程池?3、线程池底层工作原理4、ThreadPoolExecutor 对象有…

【剖析STL】vector

vector的介绍及使用 1.1 vector的介绍 cplusplus.com/reference/vector/vector/ vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素 进行访问,和数组一样高效。但是…

激活函数总结(十四):激活函数补充(Gaussian 、GCU、ASU)

激活函数总结(十四):激活函数补充 1 引言2 激活函数2.1 Gaussian 激活函数2.2 Growing Cosine Unit (GCU)激活函数2.3 Amplifying Sine Unit (ASU)激活函数 3. 总结 1 引言 在前面的文章中已经介绍了介绍了一系列激活函数 (Sigmoid、Tanh、R…

AI绘画之三_StableDiffusion_界面操作

1 介绍 首先,介绍界面中的重要元素,如图所示: 基础模型:基础模型是最重要的设置项文生图:选项卡列出了各大功能,文生图指通过文字生成图片图生图:图生图指通过图片和文字生成图片修复照片&am…

LLM大模型生产部署的12个最佳实践

大型语言模型 (LLM) 彻底改变了自然语言处理和理解领域,实现了跨各个领域的广泛人工智能应用。 然而,在生产中部署 LLM 应用程序也面临着一系列挑战。 从解决自然语言的歧义到管理成本和延迟,有几个因素需要仔细考虑。 推荐:用 NS…

腾讯云轻量应用服务器配置(详细版)

腾讯云轻量应用服务器CPU内存带宽配置高,成本很低,腾讯云百科来详细说下腾讯云服务器从购买、配置到网站上线全流程,包括轻量服务器配置选择、应用镜像选择、重置密码、防火墙开放端口教程等详细教程: 目录 一:注册腾…

jsp 网络社区便利店系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 网络社区便利店系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.…

解决Kibana(OpenSearch)某些字段无法搜索问题

背景 最近在OpenSearch查看线上日志的时候,发现某个索引下有些字段无法直接在界面上筛选,搜索到也不高亮,非常的不方便,就像下面这样 字段左侧两个筛选按钮禁用了无法点击,提示 Unindexed fields can not be searched…

Ubuntu系统下搭建QtCreator开发环境详细过程(Qt简介;Linux下安装QtCreator)

关于Qt的相关介绍,可以参考QT从入门到实战x篇,Qt 5.9 C开发指南,对于重复部分,本栏目不做详细介绍。关于Linux的基础,本人将重新整理一个栏目,就叫Linux基础吧,有需要的可以后期关注下。 文章目…

Apache ShenYu 学习笔记一

1、简介 这是一个异步的,高性能的,跨语言的,响应式的 API 网关。 官网文档:Apache ShenYu 介绍 | Apache ShenYu仓库地址:GitHub - apache/shenyu: Apache ShenYu is a Java native API Gateway for service proxy, pr…

和韦老师相约RISC-V交流会​

关注、星标公众号,直达精彩内容 来源:技术让梦想更伟大作者:李肖遥 和韦老师相约RISC-V交流会,最近公司项目有在用xuantie C906的core,一直在使用和学习riscv,正巧有个xuantie主题的训练会,想来…

Component name “Home“ should always be multi-word

错误 解决方案 在根目录找到eslintrc.js文件,配置关闭名称的校验,在该文件中,找到rules进行配置,如下代码: rules: {vue/multi-word-component-names: off, // 关闭名称校验}

查询投稿会议的好用网址

会议伴侣 https://www.myhuiban.com/ 艾思科蓝 https://www.ais.cn/

什么是Eureka?以及Eureka注册服务的搭建

导包 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 htt…

MathType7MAC中文版数学公式编辑器下载安装教程

如今许多之前需要手写的内容都可以在计算机中完成了。以前我们可以通过word输入一些简单的数学公式&#xff0c;但现在通过数学公式编辑器便可以完成几乎所有数学公式的写作。许多简单的数学公式&#xff0c;我们可以使用输入法一个个找到特殊符号并输入&#xff0c;但是对于高…

PHP命名空间结合自动加载spl_autoload_register使用

1、控制器命名空间controller/index.php <?php namespace app\admin\controller; class index {public function test(){echo "运行\admin\controller\index-> test()";} }2、模型命名空间model/index.php <?php namespace app\admin\model; class tes…

C语言入门_Day7 逻辑运算

目录&#xff1a; 前言 1.逻辑运算 2.优先级 3.易错点 4.思维导图 前言 算术运算用来进行数据的计算和处理&#xff1b;比较运算是用来比较不同的数据&#xff0c;进而来决定下一步怎么做&#xff1b;除此以外还有一种运算叫做逻辑运算&#xff0c;它的应用场景也是用来影…

【搭建WebDAV服务手机ES文件浏览器远程访问】

文章目录 1. 安装启用WebDAV2. 安装cpolar3. 配置公网访问地址4. 公网测试连接5. 固定连接公网地址6. 使用固定地址测试连接 有时候我们想通过移动设备访问群晖NAS 中的文件,以满足特殊需求,我们在群辉中开启WebDav服务,结合cpolar内网工具生成的公网地址,通过移动客户端ES文件…

2023腾讯云轻量应用服务器配置表大全2核2G/2核4G/4核8G/8核16G

腾讯云轻量应用服务器&#xff08;TencentCloud Lighthouse&#xff09;是新一代开箱即用、面向轻量应用场景的云服务器产品&#xff0c;助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、APP、电商应用、云盘/图床和开发测试环境&#xff0c;相比普通云…