N-129基于springboot,vue学生宿舍管理系统

开发工具:IDEA

服务器:Tomcat9.0, jdk1.8

项目构建:maven

数据库:mysql5.7

系统分前后台,项目采用前后端分离

前端技术:vue+vue-element-admin 

服务端技术:springboot,mybatis-plus

本系统分学生和管理员角色,功能包括: 

一.学生功能:

(1)登录、退出登录、首页

(2)宿舍管理:选择宿舍、我的宿舍(调换宿舍)

(3)报修管理:添加、修改、查询、删除

(4)公告列表

二.管理员功能:

(1)登录、退出登录、首页

(2)用户管理:添加、修改、查询、删除

(3)角色管理:添加、修改、查询、删除、分配权限

(4)菜单管理:添加、修改、删除

(5)学院管理:添加、修改、查询、删除

(6)专业管理:添加、修改、查询、删除

(7)班级管理:添加、修改、查询、删除

(8)学生管理:添加、修改、查询、删除、重置密码

(9)宿舍管理:楼栋管理、设置编号、宿舍管理、分配宿舍、调换申请

(10)考勤管理:添加、修改、查询、删除

(11)报修管理:添加、修改、查询、删除、处理

(12)出入登记

物品出入登记:添加、修改、查询、删除

来访人员登记:添加、修改、查询、删除

(13)公告管理:添加、修改、查询、删除

学生截图:

N-129基于springboot,vue学生宿舍管理系统_第1张图片N-129基于springboot,vue学生宿舍管理系统_第2张图片N-129基于springboot,vue学生宿舍管理系统_第3张图片N-129基于springboot,vue学生宿舍管理系统_第4张图片N-129基于springboot,vue学生宿舍管理系统_第5张图片

管理员截图:

N-129基于springboot,vue学生宿舍管理系统_第6张图片N-129基于springboot,vue学生宿舍管理系统_第7张图片N-129基于springboot,vue学生宿舍管理系统_第8张图片N-129基于springboot,vue学生宿舍管理系统_第9张图片N-129基于springboot,vue学生宿舍管理系统_第10张图片N-129基于springboot,vue学生宿舍管理系统_第11张图片N-129基于springboot,vue学生宿舍管理系统_第12张图片N-129基于springboot,vue学生宿舍管理系统_第13张图片N-129基于springboot,vue学生宿舍管理系统_第14张图片N-129基于springboot,vue学生宿舍管理系统_第15张图片N-129基于springboot,vue学生宿舍管理系统_第16张图片N-129基于springboot,vue学生宿舍管理系统_第17张图片N-129基于springboot,vue学生宿舍管理系统_第18张图片N-129基于springboot,vue学生宿舍管理系统_第19张图片N-129基于springboot,vue学生宿舍管理系统_第20张图片N-129基于springboot,vue学生宿舍管理系统_第21张图片N-129基于springboot,vue学生宿舍管理系统_第22张图片N-129基于springboot,vue学生宿舍管理系统_第23张图片

package com.itmk.web.sys_user.controller;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.itmk.utils.ResultUtils;
import com.itmk.utils.ResultVo;
import com.itmk.web.sys_role.entity.SysRole;
import com.itmk.web.sys_role.service.SysRoleService;
import com.itmk.web.sys_user.entity.PageParm;
import com.itmk.web.sys_user.entity.SysUser;
import com.itmk.web.sys_user.service.SysUserService;
import com.itmk.web.sys_user_role.entity.SysUserRole;
import com.itmk.web.sys_user_role.service.SysUserRoleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.DigestUtils;
import org.springframework.web.bind.annotation.*;

import java.util.Date;
import java.util.List;

@RestController
@RequestMapping("/api/user")
public class SysUserController {
    @Autowired
    private SysUserService sysUserService;
    @Autowired
    private SysRoleService sysRoleService;
    @Autowired
    private SysUserRoleService sysUserRoleService;

    //新增用户
    @PostMapping
    public ResultVo addUser(@RequestBody SysUser user) {
        //判断账户是否被占用
        QueryWrapper query = new QueryWrapper<>();
        query.lambda().eq(SysUser::getUsername, user.getUsername());
        SysUser one = sysUserService.getOne(query);
        if (one != null) {
            return ResultUtils.error("账户被占用!");
        }



        user.setIsAdmin("0");
        user.setCreateTime(new Date());
        user.setPassword(DigestUtils.md5DigestAsHex(user.getPassword().getBytes()));
        //入库处理
        sysUserService.add(user);
        return ResultUtils.success("新增用户成功!");
    }

    //编辑用户
    @PutMapping
    public ResultVo editUser(@RequestBody SysUser user) {
        //判断账户是否被占用
        QueryWrapper query = new QueryWrapper<>();
        query.lambda().eq(SysUser::getUsername, user.getUsername());
        SysUser one = sysUserService.getOne(query);
        if (one != null && one.getUserId() != user.getUserId()) {
            return ResultUtils.error("账户被占用!");
        }
        user.setUpdateTime(new Date());
        //更新处理
        sysUserService.edit(user);
        return ResultUtils.success("编辑用户成功!");
    }

    //删除用户
    @DeleteMapping("/{userId}")
    public ResultVo deleteUser(@PathVariable("userId") Long userId) {
        boolean remove = sysUserService.removeById(userId);
        if (remove) {
            return ResultUtils.success("删除成功!");
        }
        return ResultUtils.error("删除失败!");
    }

    //列表查询
    @GetMapping("/list")
    public ResultVo getList(PageParm parm) {
        IPage list = sysUserService.list(parm);
        //密码不显示
        list.getRecords().stream().forEach(item -> {
            item.setPassword("");
        });
        return ResultUtils.success("查询成功", list);
    }

    //查询角色列表
    @GetMapping("/roleList")
    public ResultVo getRoleList(){
        List list = sysRoleService.list();
        return ResultUtils.success("查询成功",list);
    }

    //查询用户对应的角色
    @GetMapping("/getRoleByUserId")
    public ResultVo getRoleByUserId(Long userId){
        QueryWrapper query = new QueryWrapper<>();
        query.lambda().eq(SysUserRole::getUserId,userId);
        SysUserRole one = sysUserRoleService.getOne(query);
        return ResultUtils.success("查询成功",one);
    }
}

你可能感兴趣的:(毕设源码,vue,springboot,springboot宿舍,vue,前后端分离)