当前位置: 首页 > 图灵资讯 > 技术篇> 基于springboot+vue前后端分离开发实现宿舍管理系统

基于springboot+vue前后端分离开发实现宿舍管理系统

来源:图灵教育
时间:2023-06-06 09:36:25

一、项目简介

项目编号:BS-GX-037

本项目在Springboot+vue的基础上实现了一套宿舍管理系统,系统的整体设计是基于前后端分离的开发模式,前后端通过接口相互调用, 实现有效隔离。系统用户主要包括三类:管理员、学生和宿舍管理员。

1.1 管理员的主要功能:

用户管理:主要包括学生管理和宿舍管理员管理

宿舍管理:主要包括建筑管理和宿舍房间管理

信息管理:主要包括公告管理和宿舍维修管理

申请管理:主要包括学生宿舍管理的调整

访客管理:主要包括外人到宿舍的管理

个人管理:管理当前用户的个人信息

1.2 学生的主要功能

我的宿舍:查看当前学生的宿舍信息

宿舍转移申请:宿舍转移申请,宿舍管理员审批等待

维修申请:宿舍损坏的物品可以申请维修

个人信息:管理当前用户的个人信息

1.3 宿舍管理员的功能

用户管理:主要包括学生管理

宿舍管理:主要包括建筑管理和宿舍房间管理

信息管理:主要包括公告管理和宿舍维修管理

申请管理:主要包括学生宿舍管理的调整

访客管理:主要包括外人到宿舍的管理

个人管理:管理当前用户的个人信息

二、环境介绍

语言环境:Java: jdk1.8

数据库:Mysql: mysql5.7

应用服务器:Tomcat: tomcat8.5.31

开发工具:IDEA或IDEAeclipse

前端开发:VUE+Element

后端开发:Springboot+sprinmvc+mybatis-plus

三、系统显示

用户登陆

基于springboot+vue前后端分离开发实现宿舍管理系统_后端

管理首页

基于springboot+vue前后端分离开发实现宿舍管理系统_后端_02

学生管理

基于springboot+vue前后端分离开发实现宿舍管理系统_spring boot_03

宿管管理

基于springboot+vue前后端分离开发实现宿舍管理系统_vue开发宿舍管理_04

楼宇管理

基于springboot+vue前后端分离开发实现宿舍管理系统_vue开发宿舍管理_05

房间管理

基于springboot+vue前后端分离开发实现宿舍管理系统_后端_06

公告管理

基于springboot+vue前后端分离开发实现宿舍管理系统_spring boot_07

报修管理

基于springboot+vue前后端分离开发实现宿舍管理系统_宿舍管理系统_08

宿舍调整管理

基于springboot+vue前后端分离开发实现宿舍管理系统_宿舍管理系统_09

访客管理

基于springboot+vue前后端分离开发实现宿舍管理系统_spring boot_10

个人信息管理

宿舍管理系统是基于springboot+vue前后端分离开发的spring

宿舍管理人员的主要功能

基于springboot+vue前后端分离开发实现宿舍管理系统_spring boot_12

学生的主要功能模块

基于springboot+vue前后端分离开发实现宿舍管理系统_宿舍管理系统_13

四、核心代码显示

 

package com.example.springboot.controller;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.example.springboot.common.Result;import com.example.springboot.entity.AdjustRoom;import com.example.springboot.service.AdjustRoomService;import com.example.springboot.service.DormRoomService;import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;/** * znz */@RestController@RequestMapping("/adjustRoom")public class AdjustRoomController {    @Resource    private AdjustRoomService adjustRoomService;    @Resource    private DormRoomService dormRoomService;    /**     * 添加订单     */    @PostMapping("/add")    public Result<?> add(@RequestBody AdjustRoom adjustRoom) {        int result = adjustRoomService.addApply(adjustRoom);        if (result == 1) {            return Result.success();        } else {            return Result.error("-1", “查询失败”;        }    }    /**     * 更新订单     */    @PutMapping("/update/{state}")    public Result<?> update(@RequestBody AdjustRoom adjustRoom, @PathVariable Boolean state) {        if (state) {            // 更新房间表信息            int i = dormRoomService.adjustRoomUpdate(adjustRoom);            if (i == -2) {                return Result.error("-1", "重复操作";            }        }        ///更新调宿表信息        int i = adjustRoomService.updateApply(adjustRoom);        if (i == 1) {            return Result.success();        } else {            return Result.error("-1", “更新失败”);        }    }    /**     * 删除订单     */    @DeleteMapping("/delete/{id}")    public Result<?> delete(@PathVariable Integer id) {        int i = adjustRoomService.deleteAdjustment(id);        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 = adjustRoomService.find(pageNum, pageSize, search);        if (page != null) {            return Result.success(page);        } else {            return Result.error("-1", “查询失败”;        }    }}

 

 

package com.example.springboot.controller;import com.example.springboot.common.Result;import com.example.springboot.common.UID;import com.example.springboot.entity.Admin;import com.example.springboot.entity.User;import com.example.springboot.service.AdminService;import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;import javax.servlet.http.HttpSession;@RestController@RequestMapping("/admin")public class AdminController {    String uid = new UID().produceUID();    @Resource    private AdminService adminService;    /**     * 管理员登录     */    @PostMapping("/login")    public Result<?> login(@RequestBody User user, HttpSession session) {        Object o = adminService.adminLogin(user.getUsername(), user.getPassword());        if (o != null) {            System.out.println(o);            ///存储session            session.setAttribute("Identity", "admin");            session.setAttribute("User", o);            return Result.success(o);        } else {            return Result.error("-1", “用户名或密码错误”;        }    }    /**     * 更新管理员信息     */    @PutMapping("/update")    public Result<?> update(@RequestBody Admin admin) {        int i = adminService.updateAdmin(admin);        if (i == 1) {            return Result.success();        } else {            return Result.error("-1", “更新失败”);        }    }}

 

 

package com.example.springboot.controller;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.example.springboot.common.Result;import com.example.springboot.entity.DormBuild;import com.example.springboot.service.DormBuildService;import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;import java.util.List;import java.util.stream.Collectors;@RestController@RequestMapping("/building")public class DormBuildController {    @Resource    private DormBuildService dormBuildService;    /**     * 楼宇添加     */    @PostMapping("/add")    public Result<?> add(@RequestBody DormBuild dormBuild) {        int i = dormBuildService.addNewBuilding(dormBuild);        if (i == 1) {            return Result.success();        } else {            return Result.error("-1", “添加失败”);        }    }    /**     * 更新建筑信息     */    @PutMapping("/update")    public Result<?> update(@RequestBody DormBuild dormBuild) {        int i = dormBuildService.updateNewBuilding(dormBuild);        if (i == 1) {            return Result.success();        } else {            return Result.error("-1", “更新失败”);        }    }    /**     * 楼宇删除     */    @DeleteMapping("/delete/{dormBuildId}")    public Result<?> delete(@PathVariable Integer dormBuildId) {        int i = dormBuildService.deleteBuilding(dormBuildId);        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 = dormBuildService.find(pageNum, pageSize, search);        if (page != null) {            return Result.success(page);        } else {            return Result.error("-1", “查询失败”;        }    }    /**     * Echarts首页 获取建筑信息     */    @GetMapping("/getBuildingName")    public Result<?> getBuildingName() {        List<DormBuild> buildingName = dormBuildService.getBuildingId();        List<Integer> buildingId = buildingName.stream().map(dormBuildId -> dormBuildId.getDormBuildId()).collect(Collectors.toList());        if (!buildingId.isEmpty()) {            return Result.success(buildingId);        } else {            return Result.error("-1", “查询失败”;        }    }}

 

 

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.springframework.web.bind.annotation.*;import javax.annotation.Resource;import javax.servlet.http.HttpSession;@RestController@RequestMapping("/dormManager")public class DormManagerController {    @Resource    private 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) {        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) {        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);            ///存储session            session.setAttribute("Identity", "dormManager");            session.setAttribute("User", o);            return Result.success(o);        } else {            return Result.error("-1", 用户名或密码错误");        }    }}

 

 

package com.example.springboot.controller;import com.baomidou.mybatisplus.extension.plugins.pagination.Page;import com.example.springboot.common.Result;import com.example.springboot.entity.DormRoom;import com.example.springboot.service.DormRoomService;import org.springframework.web.bind.annotation.*;import javax.annotation.Resource;import java.util.ArrayList;@RestController@RequestMapping("/room")public class DormRoomController {    @Resource    private DormRoomService dormRoomService;    /**     * 添加房间     */    @PostMapping("/add")    public Result<?> add(@RequestBody DormRoom dormRoom) {        int i = dormRoomService.addNewRoom(dormRoom);        if (i == 1) {            return Result.success();        } else {            return Result.error("-1", “添加失败”);        }    }    /**     * 更新房间     */    @PutMapping("/update")    public Result<?> update(@RequestBody DormRoom dormRoom) {        int i = dormRoomService.updateNewRoom(dormRoom);        if (i == 1) {            return Result.success();        } else {            return Result.error("-1", “更新失败”);        }    }    /**     * 删除房间     */    @DeleteMapping("/delete/{dormRoomId}")    public Result<?> delete(@PathVariable Integer dormRoomId) {        int i = dormRoomService.deleteRoom(dormRoomId);        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 = dormRoomService.find(pageNum, pageSize, search);        if (page != null) {            return Result.success(page);        } else {            return Result.error("-1", “查询失败”;        }    }    /**     * 主页顶部:空宿舍统计     */    @GetMapping("/noFullRoom")    public Result<?> noFullRoom() {        int num = dormRoomService.notFullRoom();        if (num >= 0) {            return Result.success(num);        } else {            return Result.error("-1", “空宿舍查询失败”;        }    }    /**     * 删除床位学生信息     */    @DeleteMapping("/delete/{bedName}/{dormRoomId}/{calCurrentNum}")    public Result<?> deleteBedInfo(@PathVariable String bedName, @PathVariable Integer dormRoomId, @PathVariable int calCurrentNum) {        int i = dormRoomService.deleteBedInfo(bedName, dormRoomId, calCurrentNum);        if (i == 1) {            return Result.success();        } else {            return Result.error("-1", “删除失败”);        }    }    /**     * 床位信息,查询学生是否已经是床位     */    @GetMapping("/judgeHadBed/{value}")    public Result<?> judgeHadBed(@PathVariable String value) {        DormRoom dormRoom = dormRoomService.judgeHadBed(value);        if (dormRoom == null) {            return Result.success();        } else {            return Result.error("-1", "该学生已有宿舍";        }    }    /**     * 主页 住宿人数     */    @GetMapping("/selectHaveRoomStuNum")    public Result<?> selectHaveRoomStuNum() {        Long count = dormRoomService.selectHaveRoomStuNum();        if (count >= 0) {            return Result.success(count);        } else {            return Result.error("-1", “查询首页住宿人数失败”;        }    }    /**     * 住宿分布人数     */    @GetMapping("/getEachBuildingStuNum/{num}")    public Result<?> getEachBuildingStuNum(@PathVariable int num) {        ArrayList<Long> arrayList = new ArrayList();        for (int i = 1; i <= num; i++) {            Long eachBuildingStuNum = dormRoomService.getEachBuildingStuNum(i);            arrayList.add(eachBuildingStuNum);        }        if (!arrayList.isEmpty()) {            return Result.success(arrayList);        } else {            return Result.error("-1", “获取人数失败”);        }    }    /**     * 学生功能: 我的宿舍     */    @GetMapping("/getMyRoom/{name}")    public Result<?> getMyRoom(@PathVariable String name) {        DormRoom dormRoom = dormRoomService.judgeHadBed(name);        if (dormRoom != null) {            return Result.success(dormRoom);        } else {            return Result.error("-1", “不存在此生”);        }    }    /**     * 检查房间是否满员     */    @GetMapping("/checkRoomState/{dormRoomId}")    public Result<?> checkRoomState(@PathVariable Integer dormRoomId) {        DormRoom dormRoom = dormRoomService.checkRoomState(dormRoomId);        if (dormRoom != null) {            return Result.success(dormRoom);        } else {            return Result.error("-1", “这个房间人满”;        }    }    /**     * 检查床是否已经有人了     */    @GetMapping("/checkBedState/{dormRoomId}/{bedNum}")    public Result<?> getMyRoom(@PathVariable Integer dormRoomId, @PathVariable int bedNum) {        DormRoom dormRoom = dormRoomService.checkBedState(dormRoomId, bedNum);        if (dormRoom != null) {            return Result.success(dormRoom);        } else {            return Result.error("-1", "这张床已有人";        }    }    /**     * 检查房间是否满员     */    @GetMapping("/checkRoomExist/{dormRoomId}")    public Result<?> checkRoomExist(@PathVariable Integer dormRoomId) {        DormRoom dormRoom = dormRoomService.checkRoomExist(dormRoomId);        if (dormRoom != null) {            return Result.success(dormRoom);        } else {            return Result.error("-1", “没有这个房间”;        }    }}

五、项目总结

项目的整体功能 完整,界面简洁大方,前后端分离的使用方式更符合当前发展的主流趋势,更适合毕业设计。