计算机毕业设计—基于Koa+vue的高校宿舍管理系统宿舍可视化系统

项目介绍

项目背景

随着科技的发展,智能化管理越来越重要。大学生在宿舍的时间超过了1/3,因此良好的宿舍管理对学生的生活和学习极为关键。学生宿舍管理系统能够合理安排新生分配宿舍,不浪费公共资源,减轻学校管理压力,同时减少宿舍内同学之间的矛盾,促使学生享受舒适的校园生活。

需求分析

主要需求:
  • 学生信息录入、修改、删除、查询
  • 宿舍管理评分
  • 学生早起率、懒床率
  • 学生宿舍打扫频率
  • 学生晚归情况
  • 楼层管理

考虑到实用性,该系统需要拆分为两大子系统,一个是学生端系统,一个是后台管理端系统。学生端系统主要提供给学生使用,负责一些宿舍记录及个人信息记录的基本操作;后台管理模块则是主要负责对所有学生信息的整理,提供宿舍管理、楼层管理、数据查看等权限,提供给宿舍管理员使用的。

学生端功能需求

学生系统拥有以下功能:

  • 创建账户
  • 分配宿舍
  • 填写个人信息
  • 修改个人信息
  • 起床打卡(用于统计懒床率)
  • 归宿登记(用于统计晚归情况)
  • 打扫记录(用于统计宿舍打扫频率)
  • 查看宿日常数据
管理端功能需求

管理系统拥有以下功能:

  • 楼层管理
  • 宿舍评价
  • 宿舍信息管理
  • 学生信息查看
  • 保洁人员管理
  • 统计学生早起率
  • 统计学生宿舍打扫频率
  • 统计学生晚归

超级管理员在享有上述管理员同等权限的同时额外拥有如下功能:

  • 创建管理员
  • 创建宿舍楼
  • 为宿舍楼分配管理员
  • 为宿舍楼分配保洁人员

📣 有源码 获取源码

技术分析

前端:

  • Vue 作为基础框架
  • vue-router 控制路由(hash 模式)
  • vuex 状态管理
  • axios 接入数据
  • Vue-element-admin 作为基础框架

后台(Nodejs):

  • Koa 作为基础框架
  • koa-router —— 服务端路由控制
  • koa-static —— 读取静态文件
  • koa-jwt —— JWT 登录校验
  • koa-body —— http body 数据处理
  • koa-compress —— Gzip 压缩
  • koa-cors —— CORS 解决跨域问题
  • sequelize —— ORM

数据库:

  • MySQL

数据库设计一览:

在这里插入图片描述

系统设计

功能结构

在宿舍管理系统中,普通管理员的权限类似于一栋楼的宿管阿姨。而超级管理员含有系统的一切权限,包括普通管理员的任命与调任。
在这里插入图片描述

系统展示

登录注册

在这里插入图片描述

学生注册界面

在这里插入图片描述

学生注册流程

第一次注册使用该系统的学生,需要填写完如下信息后,才能使用该系统

在这里插入图片描述

学生端页面展示

宿舍概览

在该界面,用户可以看到自己宿舍的位置信息、入住时间、入住人员信息和管理员对于自己宿舍的评价。

在这里插入图片描述

起床记录

学生需要在该页面进行早起打卡,系统会统计学生的起床打卡时间,从而判断学生的早起率。

在这里插入图片描述

最高支持查看最近100天内的早起概率和打卡情况

在这里插入图片描述

归宿记录

归宿记录在功能上类似于起床记录,学生可在归宿后点击打卡,系统会统计学生的归宿情况,自动生成早归概率

注:该页面没有数据是因为笔者太懒了,没有养成傍晚进系统打卡的习惯

在这里插入图片描述

打扫记录

学生可在打扫记录页面进行打卡,记录自己打扫宿舍的次数与概率

注:该页面没有数据的原因同上

在这里插入图片描述
在这里插入图片描述

个人中心

学生在个人中心可以进行个人信息和密码的更改,以及自己的记录速览

在这里插入图片描述

管理端页面展示(超级管理员)

管理概览

在该页面可以看到宿舍楼信息以及学生的各种动态,或点击这里切换宿舍楼
在这里插入图片描述

在这里插入图片描述

管理员管理

在该页面可以添加各级管理员,查看所有管理员信息

在这里插入图片描述

宿舍楼管理

在这里插入图片描述

点击黄色按钮,为该宿舍楼分配管理员

在这里插入图片描述

点击灰色按钮为该宿舍楼配备保洁人员

在这里插入图片描述

楼层管理

楼层管理中,管理员可以看到该楼层的所有信息

在这里插入图片描述

宿舍信息管理

在这里插入图片描述

点击需要查看的宿舍后,即可获取宿舍信息

在这里插入图片描述

学生信息

可以通过宿舍查看该学生信息,也可以直接通过学号搜索

注:调剂宿舍功能仅超级管理员可用!管理员没有权限调剂宿舍!

在这里插入图片描述

记录查看

起床记录

在这里插入图片描述
筛选记录
在这里插入图片描述

归宿记录

在这里插入图片描述

打扫记录

在这里插入图片描述

来访人员登记

在这里插入图片描述
新增来访人员
在这里插入图片描述

个人中心

在这里插入图片描述

管理端页面展示(管理员)

普通管理员的功能权限已经被包含在超级管理员中,故不再重复展示。

特色功能演示

页面样式设置,用户可点击悬浮在系统右侧的设置按钮进行操作

在这里插入图片描述

宿舍调剂(仅超级管理员可用)

在这里插入图片描述

宿舍评价(评论人 才能对评论进行删除操作)

在这里插入图片描述

获取方式

见主页个人简介

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

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

相关文章

“image.save(image_path)“和“cv2.imwrite(image_path , image)”的区别

两者是保存图像的两种不同方式,分别适用于不同的图像库。 image.save(image_path)是PIL(Python Imaging Library)库中用于保存图像的方法。它需要将图像对象(Image对象)保存到指定的文件路径中。PIL库支持多种图像格式…

SQL中 WITH AS 的使用方法

一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以定义一个SQL片断,该SQL片断会被整个SQL语句用到。可以使SQL语句的可读性更高,也可以在UNION ALL的不同部分&#xff…

你了解Redis中的跳跃表吗?

跳跃表的基本内容: 对于一个有序序列,链表相对于数组来说,删除和插入的效率要快很多,只需要改变指针的指向,但是在查找的时候,数组就要更占优势一些,可以随机访问,然而链表需要从头…

第51次中国互联网络发展状况统计报告

3月2日,中国互联网络信息中心(CNNIC)在京发布第51次《中国互联网络发展状况统计报告》(以下简称:《报告》)。《报告》显示,截至2022年12月,我国网民规模达10.67亿,较2021…

SGML .HTML 、XML和XHTML的区别?

SGML(Standard Generalized Markup Language)是一种标记语言的元语言,它定义了用于创建其他标记语言的规范。 HTML(Hypertext Markup Language)是基于SGML的标记语言,用于创建网页。 XML(eXte…

oracle与gbase8s迁移数据类型对照

声明:以下为笔者阅读gbase官方文档和oracle官方文档的理解,如有错误,敬请指正。oracle与gbase8s迁移数据类型对照及举例说明 最终结论:oracle与gbase8s数据类型对应关系关于单精度与双精度的区别关于定点与浮点定义的区别精度的定…

动态规划 - 1137.第N个泰波那契数(C#和C实现)

动态规划 - 1137.第N个泰波那契数(C#和C实现) 题目描述 泰波那契序列 Tn 定义如下: T0 0, T1 1, T2 1,且在 n > 0 的条件下 Tn3 Tn Tn1 Tn2。给你整数 n,请返回第 n 个泰波那契数 Tn 的值。 示例 1: 输入:n 4 输出…

[报错已解决]得到一个不期待的值added_cond_kwargs,图生图和文生图的pipline是不同的

报错内容 得到一个不期待的值added_cond_kwargs 问题原因 对照下图,做测试unet_2d_condition.py里面UNet2dConditionModel类的forward输入 而StableDiffusionPipline(文生图t2i)的self.unet输入里面多了一个added_cond_kwargs需要写 从下图可…

函数torch.bincount( )的用法

torch.bincount()函数是PyTorch中的一个函数,用于计算一维整数张量中每个非负整数值出现的频次 函数的用法 : torch.bincount(input, weightsNone, minlength0) → Tensor 参数: input:输入的一维整数张量weights(…

JsonNode、ObjectNode和ArrayNode

我个人不喜欢fastjson,但是项目中很多地方用到json字符串转换对象但又不想创建pojo 所以使用jackson的JsonNode、ObjectNode和ArrayNode就非常好用,万能对象,这三 个对象是非常全面的,感兴趣的可以看下源码 JsonNode 只读&#x…

机器学习——支持向量机

目录 一、基于最大间隔分隔数据 二、寻找最大间隔 1. 最大间隔 2. 拉格朗日乘子法 3. 对偶问题 三、SMO高效优化算法 四、软间隔 五、SMO算法实现 1. 简化版SMO算法 2. 完整版SMO算法 3. 可视化决策结果 六、核函数 1. 线性不可分——高维可分 2. 核函数 …

【大数据面试】MapReduce常见问题与答案

目录 介绍下MapReduce MapReduce优缺点 MapReduce架构 MapReduce工作原理 MapReduce哪个阶段最费时间 ✅MapReduce中的Combine是干嘛的?有什么好出? ✅MapReduce环形缓冲区是什么 ✅MapReduce为什么一定要有环型缓冲区 MapReduce为什么一定要有Shuffle过程 MapRedu…

Autosar通信实战系列08-Com模块相关开发问题总结

本文框架 前言1. Com模块重要接口回顾2. 如何让通过Com模块配置改善发送报文周期不准问题?3. UDS 0x28服务关闭或打开APP报文与Com模块的交互?4. 如何在Com层实现接收报文的超时,ARC及信号有效性监控?4.1 信号超时监控的配置4.2 报文ARC校验4.3 报文信号值有效性校验前言 …

linux命令绕过

WAF绕过命令执行 1 命令分隔符2 命令执行绕过2.1 绕过空格2.2 拼接2.3 编码2.4 单引号、双引号绕过2.5 反斜线绕过2.6 通配符绕过 1 命令分隔符 linux: && || & | ; # &&绕过 [rootlocalhost ~]# echo 123&& cat /etc/passwd 123 root:…

拾壹[11],缩放形状匹配,函数CreateScaledShapeModel/FindScaledShapeModel

函数CreateScaledShapeModel 函数功能 创建可缩放比例的形状匹配模板 C形式 LIntExport void CreateScaledShapeModel( const HObject& Template, const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& …

设计模式 原型模式 与 Spring 原型模式源码解析(包含Bean的创建过程)

原型模式 原型模式(Prototype模式)是指:用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象。 原型模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象,无需知道如何创建的细节。 工作原…

threejs 内置变量函数

参考glsl文档 threejs 内置变量 vertex shader highp vec4 gl_PointSize 点大小mediump float gl_Position 不用多说 fragment shader mediump vec4 gl_FragCoord 屏幕坐标系bool gl_FrontFacingmediump vec4 gl_FragColor 最重要的mediump vec4 gl_FragData[gl_MaxDrawBu…

新年跨年烟花超酷炫合集【内含十八个烟花酷炫效果源码】

❤️以下展示为全部烟花特效效果 ❤️下方仅展示部分代码 ❤️源码获取见文末 🎀HTML5烟花喷泉 <style> * {padding:0;margin:0; } html,body {positi

清华提出ViLa,揭秘 GPT-4V 在机器人视觉规划中的潜力

人类在面对简洁的语言指令时&#xff0c;可以根据上下文进行一连串的操作。对于“拿一罐可乐”的指令&#xff0c;若可乐近在眼前&#xff0c;下意识的反应会是迅速去拿&#xff1b;而当没看到可乐时&#xff0c;人们会主动去冰箱或储物柜中寻找。这种自适应的能力源于对场景的…

springboot的配置文件,以及spring boot自动装配的原理,bean的管理。

配置优先级&#xff1a; spring boot中自此三种格式的配置文件&#xff1a; server.port&#xff1a;8081 server.port&#xff1a;8082 server.port&#xff1a;8083 spring boot还支持两种外部配置&#xff1a; java系统属性&#x…