博主介绍:专注于Java技术领域和毕业项目实战
文末获取源码联系
精彩专栏推荐订阅 不然下次找不到哟
Java项目精品实战案例(300套)
目录
一、效果演示
二、前言介绍
三、主要技术
四、系统设计(部分)
4.1、主要功能模块设计
4.2、系统登录设计
五、运行截图
5.1、管理员功能模块
5.1.1、管理员登录
5.1.2、公告信息管理
5.1.3、院系管理
5.1.4、班级管理
5.1.5、学生管理
5.1.6、卫生检查管理
5.1.7、缴费信息管理
5.1.8、报修信息管理
5.1.9、报修处理管理
5.2、学生功能模块
5.2.1、公告信息管理
5.2.2、宿舍安排管理
5.2.3、卫生检查管理
5.2.4、缴费信息管理
5.2.5、报修处理管理
六、数据库设计(部分)
七、代码参考
八、源码获取
一、效果演示
基于springboot+vue的新生宿舍管理系统演示视频
二、前言介绍
随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,新生宿舍管理系统当然也不能排除在外。新生宿舍管理系统是以实际运用为开发背景,运用软件工程原理和开发方法,采用springboot框架构建的一个管理系统。
三、主要技术
技术名 | 作用 |
---|---|
SpringBoot | 后端框架 |
Vue | 前端框架 |
MySQL | 数据库 |
四、系统设计(部分)
五、运行截图
图5-1管理员登录界面图
管理员登录进入新生宿舍管理系统可以查看首页、个人中心、公告信息管理、院系管理、班级管理、学生管理、宿舍信息管理、宿舍安排管理、卫生检查管理、报修信息管理、报修处理管理、缴费信息管理等信息。
图5-2公告信息管理界面图
图5-3院系管理面图
图5-4班级管理界面图
图5-5学生管理界面图
图5-6卫生检查管理界面图
图5-7缴费信息管理界面图
图5-8报修信息管理界面图
图5-9报修处理管理界面图
学生登录进入新生宿舍管理系统可以查看首页、个人中心、公告信息管理、宿舍安排管理、卫生检查管理、报修信息管理、报修处理管理、缴费信息管理等内容。
图5-10公告信息管理界面图
图5-11宿舍安排管理界面图
图5-12卫生检查管理界面图
图5-13缴费信息管理界面图
图5-14报修处理管理界面图
六、数据库设计(部分)
通过新生宿舍管理系统的功能进行规划分成几个实体信息,实体信息将通过ER图进行说明,本系统的主要实体图如下:
管理员信息属性图如图4-5所示。
图4-5 管理员信息实体属性图
学生信息实体属性图如图4-6所示。
图4-6学生信息属性图
七、代码参考
package com.controller;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;
import com.entity.BanjiEntity;
import com.entity.view.BanjiView;
import com.service.BanjiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;
/**
* 班级
* 后端接口
* @author
* @email
* @date 2021-03-18 15:35:05
*/
@RestController
@RequestMapping("/banji")
public class BanjiController {
@Autowired
private BanjiService banjiService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map params,BanjiEntity banji,
HttpServletRequest request){
EntityWrapper ew = new EntityWrapper();
PageUtils page = banjiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, banji), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@RequestMapping("/list")
public R list(@RequestParam Map params,BanjiEntity banji, HttpServletRequest request){
EntityWrapper ew = new EntityWrapper();
PageUtils page = banjiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, banji), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( BanjiEntity banji){
EntityWrapper ew = new EntityWrapper();
ew.allEq(MPUtil.allEQMapPre( banji, "banji"));
return R.ok().put("data", banjiService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(BanjiEntity banji){
EntityWrapper< BanjiEntity> ew = new EntityWrapper< BanjiEntity>();
ew.allEq(MPUtil.allEQMapPre( banji, "banji"));
BanjiView banjiView = banjiService.selectView(ew);
return R.ok("查询班级成功").put("data", banjiView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
BanjiEntity banji = banjiService.selectById(id);
return R.ok().put("data", banji);
}
/**
* 前端详情
*/
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
BanjiEntity banji = banjiService.selectById(id);
return R.ok().put("data", banji);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody BanjiEntity banji, HttpServletRequest request){
banji.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(banji);
banjiService.insert(banji);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody BanjiEntity banji, HttpServletRequest request){
banji.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(banji);
banjiService.insert(banji);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody BanjiEntity banji, HttpServletRequest request){
//ValidatorUtils.validateEntity(banji);
banjiService.updateById(banji);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
banjiService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper wrapper = new EntityWrapper();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
int count = banjiService.selectCount(wrapper);
return R.ok().put("count", count);
}
}
八、源码获取
大家点赞、收藏、关注、评论啦 、查看文章结尾获取联系方式
精彩专栏推荐订阅:在下方专栏
Java项目精品实战案例(300套)
私信我即可打包获取300多个项目源码+论文+演示视频~