Java项目:校园宿舍管理系统(优质版)(Springboot3+Maven+Mybatis Plus+Vue3+ Element Plus+Mysql)

devtools/2024/11/16 16:36:41/
项目介绍 :

Springboot3+Maven+Mybatis Plus+Vue3+ Element Plus+Mysql 开发的前后端分离的校园宿舍管理系统

项目演示:
https://www.bilibili.com/video/BV16UmoYWEVR/

运行环境:

最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。

IDE环境:

Eclipse,Myeclipse,IDEA或者Spring Tool Suite都可以

适用于:

由于本程序规模不大,可供课程设计,毕业设计学习演示之用

内置功能

管理员角色包含以下功能:

  • 首页信息统计展示
  • 学生信息管理
  • 宿管信息管理
  • 楼宇信息管理
  • 房间信息管理
  • 学生信息管理
  • 公告信息管理
  • 报修信息管理
  • 调宿信息管理
  • 访客信息管理
  • 水费信息管理
  • 电费信息管理
  • 卫生检查信息管理
  • 个人信息管理

宿舍管理员包含以下功能

  • 首页信息统计展示
  • 学生信息管理
  • 楼宇信息管理
  • 房间信息管理
  • 学生信息管理
  • 报修信息管理
  • 调宿信息管理
  • 访客信息管理
  • 卫生检查信息管理
  • 个人信息管理

学生包含以下功能

  • 首页信息统计展示
  • 房间信息查看
  • 床位信息查看
  • 报修申请
  • 调宿申请
  • 水费信息添加
  • 电费信息添加
  • 卫生信息查看
  • 个人信息管理
项目预览

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

用户管理控制层:

java">package com.example.springboot.controller;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.springboot.common.Result;
import com.example.springboot.entity.DormManager;
import com.example.springboot.entity.User;
import com.example.springboot.service.DormManagerService;
import org.apache.commons.lang.StringUtils;
import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;
import javax.servlet.http.HttpSession;@RestController
@RequestMapping("/dormManager")
public class DormManagerController {@Resourceprivate DormManagerService dormManagerService;/*** 宿管添加*/@PostMapping("/add")public Result<?> add(@RequestBody DormManager dormManager) {int i = dormManagerService.addNewDormManager(dormManager);if (i == 1) {return Result.success();} else {return Result.error("-1", "添加失败");}}/*** 宿管信息更新*/@PutMapping("/update")public Result<?> update(@RequestBody DormManager dormManager) {if (StringUtils.equals("test",dormManager.getUsername())){return Result.error("-1", "禁止修改测试账号");}int i = dormManagerService.updateNewDormManager(dormManager);if (i == 1) {return Result.success();} else {return Result.error("-1", "更新失败");}}/*** 宿管删除*/@DeleteMapping("/delete/{username}")public Result<?> delete(@PathVariable String username) {if (StringUtils.equals("test",username)){return Result.error("-1", "禁止修改测试账号");}int i = dormManagerService.deleteDormManager(username);if (i == 1) {return Result.success();} else {return Result.error("-1", "删除失败");}}/*** 宿管查找*/@GetMapping("/find")public Result<?> findPage(@RequestParam(defaultValue = "1") Integer pageNum,@RequestParam(defaultValue = "10") Integer pageSize,@RequestParam(defaultValue = "") String search) {Page page = dormManagerService.find(pageNum, pageSize, search);if (page != null) {return Result.success(page);} else {return Result.error("-1", "查询失败");}}/*** 宿管登录*/@PostMapping("/login")public Result<?> login(@RequestBody User user, HttpSession session) {Object o = dormManagerService.dormManagerLogin(user.getUsername(), user.getPassword());if (o != null) {System.out.println(o);//存入sessionsession.setAttribute("Identity", "dormManager");session.setAttribute("User", o);return Result.success(o);} else {return Result.error("-1", "用户名或密码错误");}}
}

用户信息主页

java"><template><div><el-breadcrumb separator-icon="ArrowRight" style="margin: 16px"><el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item><el-breadcrumb-item>用户管理</el-breadcrumb-item><el-breadcrumb-item>宿管信息</el-breadcrumb-item></el-breadcrumb><el-card style="margin: 15px; min-height: calc(100vh - 111px)"><div><!--    功能区--><div style="margin: 10px 0"><!--    搜索区--><div style="margin: 10px 0"><el-input v-model="search" clearable placeholder="请输入姓名" prefix-icon="Search" style="width: 20%"/><el-button icon="Search" style="margin-left: 5px" type="primary" @click="load"></el-button><el-button icon="refresh-left" style="margin-left: 10px" type="default" @click="reset"></el-button><div style="float: right"><el-tooltip content="添加" placement="top"><el-button icon="plus" style="width: 50px" type="primary" @click="add"></el-button></el-tooltip></div></div></div><!--    表格--><el-table v-loading="loading" :data="tableData" border max-height="705" style="width: 100%"><el-table-column label="#" type="index"/><el-table-column label="账号" prop="username" sortable/><el-table-column label="姓名" prop="name"/><el-table-column:filter-method="filterTag":filters="[{ text: '男', value: '男' },{ text: '女', value: '女' },]"filter-placement="bottom-end"label="性别"prop="gender"/><el-table-column label="年龄" prop="age" sortable/><el-table-column label="手机号" prop="phoneNum"/><el-table-column label="邮箱" prop="email"/><el-table-column label="任职宿舍楼" prop="dormBuildId" sortable/><!--      操作栏--><el-table-column label="操作" width="130px"><template #default="scope"><el-button icon="Edit" type="primary" @click="handleEdit(scope.row)"></el-button><el-popconfirm title="确认删除?" @confirm="handleDelete(scope.row.username)"><template #reference><el-button icon="Delete" type="danger"></el-button></template></el-popconfirm></template></el-table-column></el-table><!--分页--><div style="margin: 10px 0"><el-paginationv-model:currentPage="currentPage":page-size="pageSize":page-sizes="[10, 20]":total="total"layout="total, sizes, prev, pager, next, jumper"@size-change="handleSizeChange"@current-change="handleCurrentChange"></el-pagination></div><div><!--      弹窗--><el-dialog v-model="dialogVisible" title="操作" width="30%" @close="cancel"><el-form ref="form" :model="form" :rules="rules" label-width="120px"><el-form-item label="账号" prop="username"><el-input v-model="form.username" :disabled="judgeAddOrEdit" style="width: 80%"></el-input></el-form-item><el-form-item label="密码" prop="password"><el-input v-model="form.password" :disabled="disabled" :show-password="showpassword"style="width: 80%"></el-input><el-tooltip content="修改密码" placement="right"><el-icon :style="editDisplay" size="large" style="margin-left: 5px; cursor: pointer"@click="EditPass"><edit/></el-icon></el-tooltip></el-form-item><el-form-item :style="display" label="确认密码" prop="checkPass"><el-input v-model="form.checkPass" :show-password="showpassword" style="width: 80%"></el-input></el-form-item><el-form-item label="姓名" prop="name"><el-input v-model="form.name" style="width: 80%"></el-input></el-form-item><el-form-item label="年龄" prop="age"><el-input v-model.number="form.age" style="width: 80%"></el-input></el-form-item><el-form-item label="性别" prop="gender"><el-radio v-model="form.gender" label="男"></el-radio><el-radio v-model="form.gender" label="女"></el-radio></el-form-item><el-form-item label="手机号" prop="phoneNum"><el-input v-model.number="form.phoneNum" style="width: 80%"></el-input></el-form-item><el-form-item label="邮箱地址" prop="email"><el-input v-model="form.email" style="width: 80%"></el-input></el-form-item><el-form-item label="任职宿舍楼" prop="dormBuildId"><el-input v-model="form.dormBuildId" style="width: 80%"></el-input></el-form-item></el-form><template #footer><span class="dialog-footer"><el-button @click="cancel">取 消</el-button><el-button type="primary" @click="save">确 定</el-button></span></template></el-dialog></div></div></el-card></div>
</template>
<script src="@/assets/js/DormManagerInfo.js"></script>

创作不易,源码非无偿提供,需要获取源码的私信博主


http://www.ppmy.cn/devtools/134474.html

相关文章

最后一个单词的长度---每日小题

目录 题目 题目分析 题目 给你一个字符串 s&#xff0c;由若干单词组成&#xff0c;单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大 子字符串。 示例 1&#xff1a; 输入&#xff1a;s "Hello Wo…

39.安卓逆向-壳-smali语法3(方法)

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a;图灵Python学院 本人写的内容纯属胡编乱造&#xff0c;全都是合成造假&#xff0c;仅仅只是为了娱乐&#xff0c;请不要盲目相信。 工…

Rust 模板匹配——根据指定图片查找处于大图中的位置(支持GPU加速)

Rust 模板匹配——根据指定图片查找处于大图中的位置(支持GPU加速) 01 前言 在手搓RPA工具的时候,总会碰到不好定位的情况,那么,就需要根据小图来找到对应屏幕上的位置(以图识图),这个需求也比较简单。想到市面上也有不少RPA工具都有这个功能,那么人家有的,俺也可以…

通过css的哪些方式可以实现隐藏页面上的元素?

1&#xff1a;opacity:0 通过将元素的透明度设置为o&#xff0c;实现隐藏效果&#xff0c;但是依然会占用空间并可以进行交互。 2&#xff1a;visibility:hidden 与透明度度为0的方案类似&#xff0c;会占据空间&#xff0c;但不可以进行交互。 3&#xff1a;Overflow:hi…

如何将java项目打包成docker 镜像并且可运行

java 项目打包成 Docker 可运行的镜像&#xff0c;其目的是便于运用docker容器来管理项目。下面是具体的步骤&#xff0c;如果大家遇到啥问题可以留言有空会逐一回复。 目录 1. 确保项目已经打包成 JAR 文件 2. 编写 Dockerfile 3. 构建 Docker 镜像 4. 运行 Docker 容器 …

【计网不挂科】计算机网络第四章< 网络层 >习题库(含答案)

前言 大家好吖&#xff0c;欢迎来到 YY 滴计算机网络 系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C的老铁 本博客主要内容&#xff0c;收纳了一部门基本的计算机网络题目&#xff0c;供yy应对期中考试复习。大家可以参考 本章为分章节的习题内容题库&#x…

【大数据学习 | HBASE高级】hbase的参数优化

Zookeeper 会话超时时间 属性&#xff1a;zookeeper.session.timeout 解释&#xff1a;默认值为 90000 毫秒&#xff08;90s&#xff09; hbase.client.pause&#xff08;默认值 100ms&#xff09;重试间隔 hbase.client.retries.number&#xff08;默认 15 次&#xff09;重试…

【JavaScript】JavaScript开篇基础(6)

1.❤️❤️前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; Hello, Hello~ 亲爱的朋友们&#x1f44b;&#x1f44b;&#xff0c;这里是E绵绵呀✍️✍️。 如果你喜欢这篇文章&#xff0c;请别吝啬你的点赞❤️❤️和收藏&#x1f4d6;&#x1f4d6;。如果你对我的…