Java项目:Springboot+vue的宿舍管理系统

作者主页:Java毕设网

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

一、相关文档

        JAVA是前SUN公司(已被甲骨文收购)在九十年代中期推出的一门面向对象的编程语言,目前广泛应用于开发基于WEB的大中型应用系统。本设计综合应用了JAVA web技术的特点,同时结合jeecg智能开发平台和MySQL数据库技术,实现基于局域网的宿舍管理系统。

        根据本校宿舍的工作流程与实际的需求和特色,本系统需满足以下几个方面的要求:

    1、查询宿舍学生的基本信息以及各个宿舍的基本信息
    2、 学生可以提交报修信息
    3、学生可以修改自己的密码
    4、 宿舍管理员可以查询宿舍区域、楼宇、院系、班级等信息
    5、宿舍管理员可以查询保修信息的跟进情况

        与本系统相关的角色包括:

系统管理员:管理系统用户、角色与权限、拥有系统全部权限,保证系统正常运行。拥有操作调宿申请,查看报修是否完成,查看用户基本信息等权利。

学生:查看宿舍信息,申请调宿,报修。

二、项目介绍

管理员:

用户管理:主要包含学生管理和宿舍管理员管理
宿舍管理:主要包含楼宇管理和宿舍房间管理
信息管理:主要包含公告管理和宿舍报修管理
申请管理:主要包含学生调剂宿舍管理
访客管理:主要包含外人到访宿舍的管理
个人管理:管理当前用户的个人信息

学生:
我的宿舍:查看当前学生自己所在的宿舍信息
申请调宿舍:申请调剂宿舍,等待宿舍管理员审批
报修申请:宿舍内有损坏的物品可以申请维修
个人信息:管理当前用户的个人信息

宿舍管理员:
用户管理:主要包含学生管理
宿舍管理:主要包含楼宇管理和宿舍房间管理
信息管理:主要包含公告管理和宿舍报修管理
申请管理:主要包含学生调剂宿舍管理
访客管理:主要包含外人到访宿舍的管理
个人管理:管理当前用户的个人信息

三、环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
4.数据库:MySql 8.0/5.7版本;
5.是否Maven项目:是;

四、技术栈

后端框架:Springboot、MybatisPlus
前端技术:ElementUI、vue、css、JavaScript、axios

五、使用说明

项目运行:
**先启动后端再启动前端**
后端:
1.使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入数据库脚本里面的sql文件.
2.使用IDEA/Eclipse/MyEclipse导入项目;
3.将项目中application.properties中的数据库配置改为自己的配置

前端:
1、命令行切换到该路径安装项目的依赖命令  npm install   推荐用cnpm install
2、npm run serve启动项目

前台地址:http://localhost:8081/

六、运行截图

 

七、相关代码

管理员管理控制器

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.Student;
import com.example.springboot.entity.User;
import com.example.springboot.service.StudentService;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpSession;

@RestController
@RequestMapping("/stu")
public class StudentController {

    @Resource
    private StudentService studentService;

    /**
     * 添加学生信息
     */
    @PostMapping("/add")
    public Result<?> add(@RequestBody Student student) {
        int i = studentService.addNewStudent(student);
        if (i == 1) {
            return Result.success();
        } else {
            return Result.error("-1", "添加失败");
        }

    }

    /**
     * 更新学生信息
     */
    @PutMapping("/update")
    public Result<?> update(@RequestBody Student student) {
        int i = studentService.updateNewStudent(student);
        if (i == 1) {
            return Result.success();
        } else {
            return Result.error("-1", "更新失败");
        }
    }

    /**
     * 删除学生信息
     */
    @DeleteMapping("/delete/{username}")
    public Result<?> delete(@PathVariable String username) {
        int i = studentService.deleteStudent(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 = studentService.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) {
        System.out.println(user.getUsername());
        System.out.println(user.getPassword());
        Object o = studentService.stuLogin(user.getUsername(), user.getPassword());
        if (o != null) {
            System.out.println(o);
            //存入session
            session.setAttribute("Identity", "stu");
            session.setAttribute("User", o);
            return Result.success(o);
        } else {
            return Result.error("-1", "用户名或密码错误");
        }
    }

    /**
     * 主页顶部:学生统计
     */
    @GetMapping("/stuNum")
    public Result<?> stuNum() {
        int num = studentService.stuNum();
        if (num > 0) {
            return Result.success(num);
        } else {
            return Result.error("-1", "查询失败");
        }
    }


    /**
     * 床位信息,查询是否存在该学生
     * 床位信息,查询床位上的学生信息
     */
    @GetMapping("/exist/{value}")
    public Result<?> exist(@PathVariable String value) {
        Student student = studentService.stuInfo(value);
        if (student != null) {
            return Result.success(student);
        } else {
            return Result.error("-1", "不存在该学生");
        }
    }
}

八、如果也想学习本系统,下面领取。关注并回复:113springboot

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值