基于javaweb的高校宿舍管理系统(java+springboot+layui+html+mysql)

基于javaweb的高校宿舍管理系统(java+springboot+layui+html+mysql)

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

20220819210602

20220819210603

20220819210604

20220819210605

20220819210606

20220819210607

20220819210608

基于javaweb+mysql的高校宿舍管理系统(java+SpringBoot+LayUI+HTML+Mysql)

项目介绍

本项目有学生、教师、宿管员三种角色;

系统的功能主要有: (1)基本信息管理 基本信息分为学生信息和宿舍信息两部分,其功能是负责维护这些信息,对它们进行增删查改等操作。 (2)宿舍分配管理 根据给定的宿舍信息与学生信息,按照一定的规则自动地给还未分配宿舍的学生分配宿舍,学生可在该宿舍内自选床位,最终的宿舍分配信息可以以文件形式(如 Excel 表格)导出。 (3)宿舍日常管理 主要包括卫生管理、报修管理、留言管理等。 卫生管理:记录并维护卫生检查信息。 报修管理:添加、查看、修改报修单信息。 留言管理:包括发布公告、失物招领、普通留言以及对这些信息的维护。 (4)离返校管理 对节假日学生的去向、寒暑假学生的留校以及返校登记信息进行统计及管理,并以图表形式呈现统计信息。 (5)综合查询管理 包括查找学生信息、各楼栋/专业的学生宿舍分配情况、卫生检查情况、学生离返校及留校信息、指定类型的留言、查看宿舍成员等。

环境需要

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

技术栈

HTML+CSS+JavaScript+mysql+SpringBoot+LayUI

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,在浏览器中输入http://localhost:xxx 访问

教师管理控制层:

/**

  • 教师对应的控制器

*/

@Controller

@RequestMapping(“/teacher”)

public class TeacherController {

@Resource

private TeacherService teacherService;

@RequestMapping(value = “/viewAllocationInfo”)

public String allocationList() {

return “/teacher/allocation-list”;

/**

  • 查询宿舍分配信息

  • 查询条件:专业/年级

  • @param aiVo

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/list”)

public DataGridViewResult findAllocationInfoList(AllocationInfoVo aiVo, HttpServletRequest request) {

// 获取session中的专业和年级

String dept = (String) request.getSession().getAttribute(“dept”);

String grade = (String) request.getSession().getAttribute(“grade”);

if (StringUtils.isNotBlank(dept)) {

aiVo.setStudept(dept);

if (StringUtils.isNotBlank(grade)) {

aiVo.setStugrade(grade);

System.out.println(aiVo);

// 设置分页信息

PageHelper.startPage(aiVo.getPage(), aiVo.getLimit());

// 查询

List list = teacherService.findAllocationInfoListByPage(aiVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 添加宿舍分配信息

  • @param ai

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/add”)

public String addAllocationInfo(AllocationInfo ai) {

HashMap<String, Object> map = new HashMap<>();

int result = teacherService.addAllocationInfo(ai);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “添加成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “添加失败!”);

return JSON.toJSONString(map);

/**

  • 更改宿舍分配信息

  • @param ai

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/update”)

public String updateAllocationInfo(AllocationInfo ai) {

HashMap<String, Object> map = new HashMap<>();

int result = teacherService.updateAllocationInfo(ai);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败!”);

return JSON.toJSONString(map);

/**

  • 删除宿舍分配信息

  • @param stuid

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/delete”)

public String deleteAllocationInfo(String stuid) {

HashMap<String, Object> map = new HashMap<>();

int result = teacherService.deleteAllocationInfo(stuid);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “删除成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

return JSON.toJSONString(map);

/**

  • 导出宿舍分配信息列表(excel格式)

  • @param request 用来获取缓存中的attribute

  • @param response 输出文件流

*/

@ResponseBody

@RequestMapping(value = “/allocation/export.action”)

public void exportAllocationInfoToExcel(HttpServletRequest request, HttpServletResponse response) {

HashMap<String, Object> map = new HashMap<>();

response.reset();// 清除缓存

String studept = (String) request.getSession().getAttribute(“dept”);

String grade = (String) request.getSession().getAttribute(“grade”);

System.out.println(“studept” + studept);

System.out.println(“grade” + grade);

// 查找宿舍分配信息列表

List list = teacherService.exportByDept(studept, grade);

// 拼接excel表名

StringBuffer filenamebuffer = new StringBuffer();

if (StringUtils.isNotBlank(studept)) {

filenamebuffer.append(studept);

filenamebuffer.append(“-”);

if (StringUtils.isNotBlank(grade)) {

filenamebuffer.append(grade);

filenamebuffer.append(“-”);

filenamebuffer.append(“宿舍分配表”);

String filename = filenamebuffer.toString();

try {

ExcelUtils.writeExcel(filename, response, list, AllocationInfo.class);

map.put(“success”, true);

map.put(“mag”, “导出成功!”);

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“mag”, “导出失败!”);

// return JSON.toJSONString(map);

@RequestMapping(value = “/viewStudentInfo”)

public String studentList() {

return “/teacher/student-list”;

/**

  • 获取学生信息列表

  • @param si

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/student/list”)

public DataGridViewResult findStudentInfoList(StudentInfoVo si, HttpServletRequest request) {

// 获取教师所负责的专业和年级,年级对应学号

String studept = (String) request.getSession().getAttribute(“dept”);

String grade = (String) request.getSession().getAttribute(“grade”);

if (StringUtils.isNotBlank(studept)) {

si.setStudept(studept);

// 如果学号为空,则教师负责的年级作为学号的前缀条件

if (StringUtils.isBlank(si.getStuid())) {

if (StringUtils.isNotBlank(grade)) {

si.setStuid(grade);

System.out.println(si);

// 设置分页信息

PageHelper.startPage(si.getPage(), si.getLimit());

// 查询

List list = teacherService.findStudentInfoListByPage(si);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 添加学生信息

  • @param si

  • @return

*/

@ResponseBody

@RequestMapping(value = “/student/add”)

public String addStudentInfo(StudentInfo si) {

HashMap<String, Object> map = new HashMap<>();

String grade = si.getStuid().substring(0, 4);

si.setStugrade(grade);

System.out.println(grade);

int result = teacherService.addStudentInfo(si);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “添加成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “添加失败!”);

return JSON.toJSONString(map);

/**

  • 更改学生信息

  • @param si

  • @return

*/

@ResponseBody

@RequestMapping(value = “/student/update”)

public String updateStudentInfo(StudentInfo si) {

HashMap<String, Object> map = new HashMap<>();

int result = teacherService.updateStudentInfo(si);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败!”);

return JSON.toJSONString(map);

/**

  • 删除学生信息

  • @param stuid

  • @return

*/

@ResponseBody

@RequestMapping(value = “/student/delete”)

public String deleteaddStudentInfo(String stuid) {

HashMap<String, Object> map = new HashMap<>();

int result = teacherService.deleteStudentInfo(stuid);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “删除成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

return JSON.toJSONString(map);

/**

  • 导入学生信息

  • @param file excel表格

  • @return

*/

@ResponseBody

@RequestMapping(value = “/student/import.action”)

public String importExcel(@RequestParam(“file”) MultipartFile file) {

HashMap<String, Object> map = new HashMap<>();

try {

List list = ExcelUtils.readExcel(“”, StudentInfo.class, file);

for (int i = 0; i < list.size(); i++) {

String grade = list.get(i).getStuid().substring(0, 4);

list.get(i).setStugrade(grade);

System.out.println(grade);

boolean result = teacherService.batchInsert(list);

if (result) {

map.put(“code”, 200);

map.put(“msg”, “导入成功!”);

map.put(“data”, null);

} else {

map.put(“code”, 500);

map.put(“msg”, “导入失败!”);

map.put(“data”, null);

} catch (Exception e) {

e.printStackTrace();

map.put(“code”, 500);

map.put(“msg”, “导入失败,请检查文件内容是否正确。”);

map.put(“data”, null);

return JSON.toJSONString(map);

/**

  • 查看卫生检查情况

  • @return

*/

@RequestMapping(value = “/viewCleanInfo”)

public String viewCleanInfo() {

return “/teacher/clean-list”;

/**

  • 专业班级卫生检查信息

  • @param ciVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/clean/list”)

public DataGridViewResult findCleanInfoListByPage(CleanInfoVo ciVo, HttpServletRequest request) {

// 获取session中的专业和年级

String dept = (String) request.getSession().getAttribute(“dept”);

String grade = (String) request.getSession().getAttribute(“grade”);

if (StringUtils.isNotBlank(dept)) {

ciVo.setStudept(dept);

if (StringUtils.isNotBlank(grade)) {

ciVo.setStuid(grade);

System.out.println(ciVo);

// 设置分页信息

PageHelper.startPage(ciVo.getPage(), ciVo.getLimit());

// 查询

List list = teacherService.findCleanInfoListByPage(ciVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

@RequestMapping(value = “/viewLeaveInfo”)

public String viewLeaveInfo() {

return “/teacher/leave-info”;

@ResponseBody

@RequestMapping(value = “/leave/list”)

public DataGridViewResult findLeaveInfoByPage(LeaveInfoVo liVo, HttpServletRequest request) {

// 专业和年级

String dept = (String) request.getSession().getAttribute(“dept”);

String grade = (String) request.getSession().getAttribute(“grade”);

if (StringUtils.isNotBlank(dept)) {

liVo.setStudept(dept);

if (StringUtils.isNotBlank(grade)) {

liVo.setStugrade(grade);

System.out.println(liVo);

// 设置分页信息

PageHelper.startPage(liVo.getPage(), liVo.getLimit());

// 查询

List list = teacherService.findLeaveInfoListByPage(liVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

@ResponseBody

@RequestMapping(value = “/leave/delete”)

public String batchDeleteLeaveInfo(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String params = request.getParameter(“params”);

try {

if (StringUtils.isBlank(params)) {

map.put(“success”, false);

map.put(“msg”, “请选择要删除的行!”);

return JSON.toJSONString(map);

boolean result = teacherService.batchDeleteLeaveInfo(params);

if (result) {

map.put(“success”, true);

map.put(“msg”, “删除成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “系统错误,请稍后再试!”);

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“msg”, “系统错误,请稍后再试!”);

return JSON.toJSONString(map);

/**

  • 将学生去向信息导出到Excel中

  • @param request

  • @param response

*/

@ResponseBody

@RequestMapping(value = “/leave/export.action”)

public void exportLeaveInfoToExcel(HttpServletRequest request, HttpServletResponse response) {

response.reset();// 清除缓存

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

// 查找学生登记信息

List list = teacherService.exportLeaveInfo(studept, stugrade);

// 拼接excel表名

StringBuffer filenamebuffer = new StringBuffer();

if (StringUtils.isNotBlank(studept)) {

filenamebuffer.append(studept);

filenamebuffer.append(“-”);

if (StringUtils.isNotBlank(stugrade)) {

filenamebuffer.append(stugrade);

filenamebuffer.append(“级-”);

filenamebuffer.append(“节假日去向表”);

String filename = filenamebuffer.toString();

try {

ExcelUtils.writeExcel(filename, response, list, LeaveInfo.class);

} catch (Exception e) {

e.printStackTrace();

/**

  • 获取饼状图的数据

  • @return

*/

@ResponseBody

@RequestMapping(value = “/leave/echartsData”)

public String getLeaveInfoEchartsData(HttpServletRequest request) {

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

HashMap<String, Object> map = teacherService.getLeaveInfoEchartsData(studept, stugrade);

String result = JSON.toJSONString(map);

System.out.println(result);

return result;

/**

  • 留校管理

  • @return

*/

@RequestMapping(value = “/stayinManage”)

public String stayinManege() {

return “/teacher/stayin-manage”;

/**

  • 留校申请列表

  • @param siVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/list”)

public DataGridViewResult findStayInfoListByPage(StayInfoVo siVo, HttpServletRequest request) {

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

if (StringUtils.isNotBlank(studept)) {

siVo.setStudept(studept);

if (StringUtils.isNotBlank(stugrade)) {

siVo.setStugrade(stugrade);

System.out.println(siVo);

// 设置分页信息

PageHelper.startPage(siVo.getPage(), siVo.getLimit());

// 查询

List list = teacherService.findStayInfoListByPage(siVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 审批学生留校申请

  • @param si

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/approve”)

public String approveStayInfo(StayInfo si) {

HashMap<String, Object> map = new HashMap<>();

System.out.println(si);

int result = teacherService.approveStayInfo(si);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “审批成功”);

} else {

map.put(“success”, false);

map.put(“msg”, “审批失败,请稍后再试!”);

return JSON.toJSONString(map);

/**

  • 导出学生留校申请信息

  • @param request

  • @param response

*/

@ResponseBody

@RequestMapping(value = “/stayin/export.action”)

public void exportStayInfoToExcel(HttpServletRequest request, HttpServletResponse response) {

response.reset();// 清除缓存

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

// 查找学生登记信息

List list = teacherService.exportStayInfo(studept, stugrade);

// 拼接excel表名

StringBuffer filenamebuffer = new StringBuffer();

if (StringUtils.isNotBlank(studept)) {

filenamebuffer.append(studept);

filenamebuffer.append(“-”);

if (StringUtils.isNotBlank(stugrade)) {

filenamebuffer.append(stugrade);

filenamebuffer.append(“级-”);

filenamebuffer.append(“留校申请表”);

String filename = filenamebuffer.toString();

try {

ExcelUtils.writeExcel(filename, response, list, StayInfo.class);

} catch (Exception e) {

e.printStackTrace();

/**

  • 获取留校申请中的统计数据

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/echartsData”)

public String getStayInfoEchartsData(HttpServletRequest request) {

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

JSONObject data = teacherService.getStayInfoEchartsData(studept, stugrade);

System.out.println(JSON.toJSONString(data));

return JSON.toJSONString(data);

@RequestMapping(value = “/backManage”)

public String backManage() {

return “/teacher/back-manage”;

/**

  • 查找学生返校信息

  • @param bsVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/back/list”)

public DataGridViewResult findBackToScInfoListByPage(BackToScInfoVo bsVo, HttpServletRequest request) {

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

if (StringUtils.isNotBlank(studept)) {

bsVo.setStudept(studept);

if (StringUtils.isNotBlank(stugrade)) {

bsVo.setStugrade(stugrade);

System.out.println(bsVo);

// 设置分页信息

PageHelper.startPage(bsVo.getPage(), bsVo.getLimit());

// 查询

List list = teacherService.findBackToScInfoListByPage(bsVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 导出学生返校登记信息

  • @param request

  • @param response

*/

@ResponseBody

@RequestMapping(value = “/back/export.action”)

public void exportBackToScInfoToExcel(HttpServletRequest request, HttpServletResponse response) {

response.reset();// 清除缓存

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

// 查找学生登记信息

List list = teacherService.exportBackToScInfo(studept, stugrade);

// 拼接excel表名

StringBuffer filenamebuffer = new StringBuffer();

if (StringUtils.isNotBlank(studept)) {

filenamebuffer.append(studept);

filenamebuffer.append(“-”);

if (StringUtils.isNotBlank(stugrade)) {

filenamebuffer.append(stugrade);

filenamebuffer.append(“级-”);

filenamebuffer.append(“返校登记表”);

String filename = filenamebuffer.toString();

try {

ExcelUtils.writeExcel(filename, response, list, BackToScInfo.class);

} catch (Exception e) {

e.printStackTrace();

/**

  • 获取返校登记的统计数据

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/back/echartsData”)

public String getBackToScInfoEchartsData(HttpServletRequest request) {

String studept = (String) request.getSession().getAttribute(“dept”);

String stugrade = (String) request.getSession().getAttribute(“grade”);

JSONObject data = teacherService.getBackToScInfoEchartsData(studept, stugrade);

System.out.println(JSON.toJSONString(data));

return JSON.toJSONString(data);

/**

  • 查看基本信息(老师/宿管员)

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/basic/info”)

public String viewStudentInfo(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String uid = (String) request.getSession().getAttribute(“uid”);

if (StringUtils.isNotBlank(uid)) {

Users users = teacherService.findUsersByUid(uid);

if (users != null) {

map.put(“success”, true);

map.put(“data”, users);

} else {

map.put(“success”, false);

map.put(“msg”, “系统错误:不存在该用户!”);

return JSON.toJSONString(map);

/**

  • 更改基本信息

  • @param users

  • @return

*/

@ResponseBody

@RequestMapping(value = “/basic/update”)

public String updateUsers(Users users) {

HashMap<String, Object> map = new HashMap<>();

System.out.println(users);

int result = teacherService.updateUsers(users);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “保存成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “保存失败!”);

return JSON.toJSONString(map);

学生管理控制层:

@Controller

@RequestMapping(“/student”)

public class StudentController {

@Resource

private StudentService studentService;

/**

  • 我的卫生检查记录界面

  • @return

*/

@RequestMapping(value = “/viewMyCleanInfo”)

public String viewMyCleanInfo() {

return “/student/clean-list”;

/**

  • 查询我的宿舍卫生检查记录

  • @param ciVo 分页信息

  • @param request 用于获取session中的uid

  • @return

*/

@ResponseBody

@RequestMapping(value = “/clean/list”)

public DataGridViewResult findMyCleanInfoListByPage(CleanInfoVo ciVo, HttpServletRequest request) {

// 获取学号

String uid = (String) request.getSession().getAttribute(“uid”);

ciVo.setStuid(uid);

// 设置分页信息

PageHelper.startPage(ciVo.getPage(), ciVo.getLimit());

// 查询

List list = studentService.findMyCleanInfoListByPage(ciVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 我的报修界面

  • @return

*/

@RequestMapping(value = “/viewMyRepairInfo”)

public String viewMyRepairInfo() {

return “/student/repair-list”;

/**

  • 查询我的宿舍的报修记录

  • @param riVo 分页信息

  • @param request 用于获取session中的uid

  • @return

*/

@ResponseBody

@RequestMapping(value = “/repair/list”)

public DataGridViewResult findMyRepairInfoListByPage(RepairInfoVo riVo, HttpServletRequest request) {

// 获取学号

String uid = (String) request.getSession().getAttribute(“uid”);

riVo.setStuid(uid);

// 设置分页信息

PageHelper.startPage(riVo.getPage(), riVo.getLimit());

// 查询

List list = studentService.findMyRepairInfoListByPage(riVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 提交报修单

  • @param ri

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/repair/add”)

public String addRepairInfo(RepairInfo ri, HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

ri.setStuid(stuid);

// 报修提交时间

Date date = new Date();

DateFormat format = new SimpleDateFormat(“yyyy-MM-dd”);

ri.setSubtime(format.format(date));

System.out.println(ri);

// 去执行添加操作

int result = studentService.addRepairInfo(ri);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “添加成功”);

} else {

map.put(“success”, false);

map.put(“msg”, “添加失败”);

return JSON.toJSONString(map);

/**

  • 修改报修单

  • @param ri

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/repair/update”)

public String updateRepairInfo(RepairInfo ri, HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

System.out.println(ri);

// 判断这是不是自己的提交的报修单

String stuid = (String) request.getSession().getAttribute(“uid”);

if (!stuid.equals(ri.getStuid())) {

map.put(“success”, false);

map.put(“msg”, “只能修改自己提交的报修单!”);

return JSON.toJSONString(map);

int result = studentService.updateRepairInfo(ri);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “修改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “修改失败!”);

return JSON.toJSONString(map);

/**

  • 我的宿舍界面

  • @return

*/

@RequestMapping(value = “/viewMyDormInfo”)

public String viewMyDormInfo() {

return “/student/myDorm”;

/**

  • 查看留言板

  • @return

*/

@RequestMapping(value = “/viewMessageBoard”)

public String viewMessageBoard() {

return “/student/messageboard”;

@ResponseBody

@RequestMapping(value = “/message/list”)

public String findMessageListByPage(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

try {

// 获取id,用来查找所在宿舍区

String uid = (String) request.getSession().getAttribute(“uid”);

// 获取当前页

Integer curr = Integer.parseInt(request.getParameter(“curr”));

// 获取页面size

Integer limit = Integer.parseInt(request.getParameter(“limit”));

// 获取信息类型

Integer type = Integer.parseInt(request.getParameter(“type”));

// 起始行数

Integer start = (curr - 1) * limit;

List list = studentService.findMessageListByPage(uid, start, limit, type);

// 总行数

Integer count = studentService.findMessageCount(type);

// 总页数

Integer total = (count - 1) / limit + 1;

map.put(“success”, true);

map.put(“count”, count);

map.put(“total”, total);

map.put(“curr”, curr);

map.put(“limit”, limit);

map.put(“data”, list);

System.out.println(JSON.toJSONString(map));

return JSON.toJSONString(map);

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“msg”, “系统错误!”);

return JSON.toJSONString(map);

/**

  • 查看我的留言

  • @return

*/

@RequestMapping(value = “viewMyMessage”)

public String viewMyMessage() {

return “/student/my-message”;

/**

  • 查看我的留言

  • @param mbVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/message/my”)

public DataGridViewResult myMessage(MessageBoardVo mbVo, HttpServletRequest request) {

String uname = (String) request.getSession().getAttribute(“uname”);

mbVo.setAnnouncer(uname);

// 设置分页信息

PageHelper.startPage(mbVo.getPage(), mbVo.getLimit());

// 查询

List list = studentService.findMyMessage(mbVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 发布留言

  • @param mb

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/message/add”)

public String addMessage(MessageBoard mb, HttpServletRequest request) {

String uname = (String) request.getSession().getAttribute(“uname”);

mb.setAnnouncer(uname);

HashMap<String, Object> map = new HashMap<>();

int result = studentService.addMessage(mb);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “添加成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “添加失败!”);

return JSON.toJSONString(map);

/**

  • 批量删除留言

  • @param request 获取前端传来的id数组

  • @return

*/

@ResponseBody

@RequestMapping(value = “/message/delete”)

public String deleteMessage(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String params = request.getParameter(“params”);

System.out.println(params);

try {

if (StringUtils.isNotBlank(params)) {

// 获取id数组

JSONArray jsonArray = JSONArray.parseArray(params);

List list = new ArrayList<>();

for (int i = 0; i < jsonArray.size(); i++) {

JSONObject obj = jsonArray.getJSONObject(i);

Integer id = (Integer) obj.get(“id”);

list.add(id);

boolean result = studentService.deleteMessage(list);

if (result) {

map.put(“success”, true);

map.put(“msg”, “删除成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

return JSON.toJSONString(map);

/**

  • 查看学生基本信息

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/basic/info”)

public String viewStudentInfo(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

if (StringUtils.isNotBlank(stuid)) {

StudentInfo si = studentService.findStudentInfoByStuid(stuid);

if (si != null) {

map.put(“success”, true);

map.put(“data”, si);

} else {

map.put(“success”, false);

map.put(“msg”, “系统错误:不存在该用户!”);

return JSON.toJSONString(map);

/**

  • 更改基本信息

  • @param si

  • @return

*/

@ResponseBody

@RequestMapping(value = “/basic/update”)

public String updateStudentInfo(StudentInfo si) {

HashMap<String, Object> map = new HashMap<>();

System.out.println(si);

int result = studentService.updateStudentInfo(si);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “保存成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “保存失败!”);

return JSON.toJSONString(map);

@RequestMapping(value = “/leave/register”)

public String myLeaveInfo() {

return “/student/leave-info”;

/**

  • 查找我的离校登记记录

  • @param liVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/leave/list”)

public DataGridViewResult findMyLeaveInfoByPage(LeaveInfoVo liVo, HttpServletRequest request) {

String stuid = (String) request.getSession().getAttribute(“uid”);

liVo.setStuid(stuid);

System.out.println(liVo);

// 设置分页信息

PageHelper.startPage(liVo.getPage(), liVo.getLimit());

// 查询

List list = studentService.findMyLeaveInfoByPage(liVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 添加离校登记记录

  • @param li

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/leave/add”)

public String addMyLeaveInfo(LeaveInfo li, HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

li.setStuid(stuid);

System.out.println(li);

int result = studentService.addMyLeaveInfo(li);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “登记成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “登记失败,请稍后再试!”);

return JSON.toJSONString(map);

/**

  • 修改离校登记记录

  • @param li

  • @return

*/

@ResponseBody

@RequestMapping(value = “/leave/update”)

public String updateMyLeaveInfo(LeaveInfo li) {

HashMap<String, Object> map = new HashMap<>();

System.out.println(li);

int result = studentService.updateMyLeaveInfo(li);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败,请稍后再试!”);

return JSON.toJSONString(map);

/**

  • 留校申请

  • @return

*/

@RequestMapping(value = “/stayin/apply”)

public String myStayInfo() {

return “/student/stayin-apply”;

/**

  • 查看自己的留校申请

  • @param siVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/list”)

public DataGridViewResult findMyStayInfoListByPage(StayInfoVo siVo, HttpServletRequest request) {

String stuid = (String) request.getSession().getAttribute(“uid”);

siVo.setStuid(stuid);

System.out.println(siVo);

// 设置分页信息

PageHelper.startPage(siVo.getPage(), siVo.getLimit());

// 查询

List list = studentService.findMyStayInfoListByPage(siVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 上传图片

  • @param file

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/uploadImage”)

public String uploadOpinionImage(MultipartFile file, HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

HashMap<String, Object> data = new HashMap<>();

try {

if (file != null) {

String stuid = (String) request.getSession().getAttribute(“uid”);

String originalFilename = file.getOriginalFilename();

Date date = new Date();

String fileName = date.getTime() + “-” + originalFilename;

// 类路径

// String classPath = ResourceUtils.getURL(“classpath:”).getPath();

// windows系统设置

String classPath = “D:/file”;

// Mac系统设置

// String classPath = “/Users/hanmeng/Desktop/upload”;

// 父路径

String src = “/upload/stayin/”; // + stuid + “/”;

File directory = new File(classPath, src);

if (!directory.exists()) {

directory.mkdir();

// 文件名

String imagePath = directory.getPath() + “/” + fileName;

System.out.println(imagePath);

file.transferTo(new File(imagePath));

data.put(“src”, src + fileName);

map.put(“code”, 0);

map.put(“msg”, “上传成功!”);

map.put(“data”, data);

return JSON.toJSONString(map);

} else {

map.put(“code”, -1);

map.put(“msg”, “请选择图片!”);

return JSON.toJSONString(map);

} catch (Exception e) {

e.printStackTrace();

map.put(“code”, -1);

map.put(“msg”, “上传失败,请稍后重试!”);

return JSON.toJSONString(map);

/**

  • 提交留校申请

  • @param si

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/add”)

public String addStayInfo(StayInfo si, HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

si.setStuid(stuid);

System.out.println(si);

int result = studentService.addMyStayInfo(si);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “提交申请成功”);

} else {

map.put(“success”, false);

map.put(“msg”, “提交申请失败,请稍后重试!”);

return JSON.toJSONString(map);

/**

  • 修改留校申请信息

  • @param si

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/update”)

public String updateMyStayInfo(StayInfo si) {

HashMap<String, Object> map = new HashMap<>();

System.out.println(si);

int result = studentService.updateMyStayInfo(si);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “修改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “修改失败,请稍后再试!”);

return JSON.toJSONString(map);

/**

  • 查看我的返校信息

  • @return

*/

@RequestMapping(value = “/viewMyBackInfo”)

public String viewMyBackToScInfo() {

return “/student/back-info”;

/**

  • 查找我的返校登记记录

  • @param bsVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/back/list”)

public DataGridViewResult findMyBackInfoByPage(BackToScInfoVo bsVo, HttpServletRequest request) {

String stuid = (String) request.getSession().getAttribute(“uid”);

bsVo.setStuid(stuid);

System.out.println(bsVo);

// 设置分页信息

PageHelper.startPage(bsVo.getPage(), bsVo.getLimit());

// 查询

List list = studentService.findMyBackInfoByPage(bsVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 添加返校登记记录

  • @param bs

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/back/add”)

public String addMyBackInfo(BackToScInfo bs, HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

bs.setStuid(stuid);

System.out.println(bs);

int result = studentService.addMyBackInfo(bs);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “提交成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “提交失败,请稍后再试!”);

return JSON.toJSONString(map);

/**

  • 修改返校登记记录

  • @param bs

  • @return

*/

@ResponseBody

@RequestMapping(value = “/back/update”)

public String updateMyBackInfo(BackToScInfo bs) {

HashMap<String, Object> map = new HashMap<>();

System.out.println(bs);

int result = studentService.updateMyBackInfo(bs);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败,请稍后再试!”);

return JSON.toJSONString(map);

/**

  • 密码设置

  • @return

*/

@RequestMapping(value = “/setting”)

public String passwordSetting() {

return “password-setting”;

@RequestMapping(value = “/myDormitoryInfo”)

public String viewMyDormitoryInfo() {

return “/student/my-dormitory”;

/**

  • 查看自己宿舍信息

  • @param aiVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/mydorm/list”)

public DataGridViewResult findMyDormitoryInfoListByPage(AllocationInfoVo aiVo, HttpServletRequest request) {

String stuid = (String) request.getSession().getAttribute(“uid”);

aiVo.setStuid(stuid);

System.out.println(aiVo);

// 设置分页信息

PageHelper.startPage(aiVo.getPage(), aiVo.getLimit());

// 查询

List list = studentService.findMyDormitoryInfoListByPage(aiVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 判断是否已经选择床位了

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/mydorm/isChoosed”)

public String isChooseBed(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

boolean status = studentService.isChooseBed(stuid);

map.put(“status”, status);

return JSON.toJSONString(map);

/**

  • 提交选择的床位号

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/mydorm/chooseBed”)

public String chooseBed(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

String bed = request.getParameter(“bed”);

if (StringUtils.isNotBlank(bed)) {

int bedNum = Integer.parseInt(bed);

// 提交床位号

int result = studentService.chooseBed(stuid, bedNum);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “选择成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “选择失败!”);

return JSON.toJSONString(map);

} else {

map.put(“success”, false);

map.put(“msg”, “床位号不能为空!”);

return JSON.toJSONString(map);

/**

  • 查找已经选择了的床位

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/mydorm/alreadyBeds”)

public String findAlreadyChooseBeds(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String stuid = (String) request.getSession().getAttribute(“uid”);

List list = studentService.findAlreadyChooseBeds(stuid);

map.put(“beds”, list);

return JSON.toJSONString(map);

卫生检查管理控制层:

@Controller

@RequestMapping(“/dm”)

public class DorMController {

@Resource

private DorMService dormService;

/**

  • 卫生检查列表

  • @return

*/

@RequestMapping(value = “/cleanList”)

public String cleanList() {

return “/dm/clean-list”;

/**

  • 查看卫生检查情况

  • @param ciVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/clean/list”)

public DataGridViewResult findCleanInfoList(CleanInfoVo ciVo, HttpServletRequest request) {

// 获取宿管员管理的宿舍区和楼栋号,拼接成brcode

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

String brcode = MyStringUtil.getBrcode(brarea, brbid, “”);

if (StringUtils.isNotBlank(brcode)) {

ciVo.setBrcode(brcode);

System.out.println(ciVo);

// 设置分页信息

PageHelper.startPage(ciVo.getPage(), ciVo.getLimit());

// 查询

List list = dormService.findCleanInfoListByPage(ciVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 更改卫生检查信息

  • @param ci

  • @return

*/

@ResponseBody

@RequestMapping(value = “/clean/update”)

public String updateCleanInfo(CleanInfo ci) {

System.out.println(ci);

HashMap<String, Object> map = new HashMap<>();

int result = dormService.updateCleanInfo(ci);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败!”);

return JSON.toJSONString(map);

/**

  • 删除卫生检查记录

  • @param id

  • @return

*/

@ResponseBody

@RequestMapping(value = “/clean/delete”)

public String deleteCleanInfo(String id) {

System.out.println(id);

HashMap<String, Object> map = new HashMap<>();

int result = dormService.deleteCleanInfo(id);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “删除成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

return JSON.toJSONString(map);

/**

  • 返回添加卫生检查记录页面

  • @return

*/

@RequestMapping(value = “/clean/add.html”)

public String addCleanInfo() {

return “/dm/clean-add”;

/**

  • 批量添加卫生检查记录

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/clean/add”)

public String batchAddCleanInfo(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String params = request.getParameter(“params”);

String checker = (String) request.getSession().getAttribute(“uname”);

try {

boolean result = dormService.batchInsertCleanInfo(params, checker);

if (result) {

map.put(“success”, true);

map.put(“msg”, “添加成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “添加失败!”);

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“msg”, “添加失败!”);

return JSON.toJSONString(map);

/**

  • 学生报修列表

  • @return

*/

@RequestMapping(value = “/repairList”)

public String viewRepairList() {

return “/dm/repair-list”;

/**

  • 查找该宿管员负责的楼栋下的报修信息

  • @param riVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/repair/list”)

public DataGridViewResult findRepairInfoList(RepairInfoVo riVo, HttpServletRequest request) {

// 拼接brcode

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

if (StringUtils.isBlank(brarea)) {

brarea = riVo.getBrarea();

if (StringUtils.isBlank(brbid)) {

brbid = riVo.getBrbid();

String brcode = MyStringUtil.getBrcode(brarea, brbid, “”);

if (StringUtils.isNotBlank(brcode)) {

riVo.setBrcode(brcode);

System.out.println(riVo);

// 设置分页信息

PageHelper.startPage(riVo.getPage(), riVo.getLimit());

// 查询

List list = dormService.findRepairInfoListByPage(riVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 查看报修详情

  • @return

*/

@RequestMapping(value = “/repair/detail.html”)

public String repairDetail() {

return “/dm/repair-detail”;

/**

  • 导出报修数据

  • @param request

  • @param response

*/

@ResponseBody

@RequestMapping(value = “/repair/export.action”)

public void exportToExcel(HttpServletRequest request, HttpServletResponse response) {

HashMap<String, Object> map = new HashMap<>();

response.reset();// 清除缓存

// 获取宿管员管理的宿舍区和楼栋号,拼接成brcode

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

String brcode = MyStringUtil.getBrcode(brarea, brbid, “”);

String status = request.getParameter(“status”);

System.out.println(“status” + status);

System.out.println(“brcode” + brcode);

// 根据条件查找报修列表

List list = dormService.exportRepairInfo(brcode, status);

// 拼接excel表名

StringBuffer filenamebuffer = new StringBuffer();

if (StringUtils.isNotBlank(brcode)) {

filenamebuffer.append(brcode);

filenamebuffer.append(“-”);

filenamebuffer.append(“报修表”);

String filename = filenamebuffer.toString();

try {

ExcelUtils.writeExcel(filename, response, list, RepairInfo.class);

map.put(“success”, true);

map.put(“msg”, “导出成功!”);

System.out.println(JSON.toJSONString(map));

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“msg”, “导出失败!”);

// return JSON.toJSONString(map);

/**

  • 批量更改报修状态

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/repair/edit”)

public String editRepairStatus(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String params = request.getParameter(“params”);

if (StringUtils.isNotBlank(params)) {

boolean result = dormService.batchEditRepairStatus(params);

if (result) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

return JSON.toJSONString(map);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败!”);

return JSON.toJSONString(map);

map.put(“success”, false);

map.put(“msg”, “更改失败!请选择要更改的行。”);

return JSON.toJSONString(map);

/**

  • 学生报修列表

  • @return

*/

@RequestMapping(value = “/buildroomList”)

public String viewBuildRoomList() {

return “/dm/buildroom-list”;

/**

  • 查看宿舍信息

  • @param biVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/buildroom/list”)

public DataGridViewResult findBuildRoomInfo(BuildRoomInfoVo biVo, HttpServletRequest request) {

// 拼接brcode

String brarea = (String) request.getSession().getAttribute(“brarea”);

if (StringUtils.isBlank(brarea)) {

brarea = biVo.getBrarea();

/*

  • 如果管理员负责具体的一栋楼,则只能查询本栋楼有关的宿舍信息;

  • 如果是负责一个区,则可以查询这个区下所有楼的宿舍信息

  • session中没有brbid说明是负责一个区的,此时按照用户输入的楼栋数来进行查询

*/

String brbid = (String) request.getSession().getAttribute(“brbid”);

if (StringUtils.isBlank(brbid)) {

brbid = biVo.getBrbid();

String brrid = biVo.getBrrid();

String brcode = MyStringUtil.getBrcode(brarea, brbid, brrid);

if (StringUtils.isNotBlank(brcode)) {

biVo.setBrcode(brcode);

System.out.println(biVo);

// 设置分页信息

PageHelper.startPage(biVo.getPage(), biVo.getLimit());

// 查询

List list = dormService.findBuildRoomInfoListByPage(biVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 单个添加宿舍信息

  • @param bi

  • @return

*/

@ResponseBody

@RequestMapping(value = “/buildroom/add”)

public String addBuildRoomInfo(BuildRoomInfo bi) {

HashMap<String, Object> map = new HashMap<>();

// 拼接brcode,如果brcode是空,说明宿舍信息错误了

String brarea = bi.getBrarea();

String brbid = bi.getBrbid();

String brrid = bi.getBrrid();

String brcode = MyStringUtil.getBrcode(brarea, brbid, brrid);

if (StringUtils.isBlank(brcode)) {

map.put(“success”, false);

map.put(“msg”, “添加失败!宿舍信息错误!”);

return JSON.toJSONString(map);

// 计算空余数

Integer free = bi.getVolume() - bi.getPeople();

if (free < 0) {

map.put(“success”, false);

map.put(“msg”, “添加失败!入住数不能大于床位数!”);

return JSON.toJSONString(map);

bi.setBrcode(brcode);

bi.setFree(free);

System.out.println(bi);

List list = new ArrayList<>();

list.add(bi);

boolean result = dormService.addBuildRoomInfo(list);

if (result) {

map.put(“success”, true);

map.put(“msg”, “添加成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “添加失败!”);

return JSON.toJSONString(map);

/**

  • 导入宿舍信息

  • @param file excel表格

  • @return

*/

@ResponseBody

@RequestMapping(value = “/buildroom/import.action”)

public String importExcel(@RequestParam(“file”) MultipartFile file) {

HashMap<String, Object> map = new HashMap<>();

try {

List list = ExcelUtils.readExcel(“”, BuildRoomInfo.class, file);

// 拼接brcode和计算空余数

for (int i = 0; i < list.size(); i++) {

String brarea = list.get(i).getBrarea();

String brbid = list.get(i).getBrbid();

String brrid = list.get(i).getBrrid();

String brcode = MyStringUtil.getBrcode(brarea, brbid, brrid);

Integer free = list.get(i).getVolume() - list.get(i).getPeople();

list.get(i).setBrcode(brcode);

list.get(i).setFree(free);

boolean result = dormService.addBuildRoomInfo(list);

if (result) {

map.put(“code”, 200);

map.put(“msg”, “导入成功!”);

map.put(“data”, null);

} else {

map.put(“code”, 500);

map.put(“msg”, “导入失败!”);

map.put(“data”, null);

} catch (Exception e) {

e.printStackTrace();

map.put(“code”, 500);

map.put(“msg”, “导入失败!”);

map.put(“data”, null);

return JSON.toJSONString(map);

/**

  • 更改宿舍信息

  • @param bi

  • @return

*/

@ResponseBody

@RequestMapping(value = “/buildroom/update”)

public String updateBuildRoomInfo(BuildRoomInfo bi) {

HashMap<String, Object> map = new HashMap<>();

try {

// 如果入住数小于等于床位数,则执行更新操作,否则返回提示

Integer free = bi.getVolume() - bi.getPeople();

if (free >= 0) {

bi.setFree(free);

System.out.println(bi);

int result = dormService.updateBuildRoomInfo(bi);

// 返回值大于0表示成功执行了更改操作,小于0表示发生了异常

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

return JSON.toJSONString(map);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败!”);

return JSON.toJSONString(map);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败!入住数不能大于床位数!”);

return JSON.toJSONString(map);

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“msg”, “更改失败!”);

return JSON.toJSONString(map);

/**

  • 删除宿舍信息

  • @param brcode

  • @return

*/

@ResponseBody

@RequestMapping(value = “/buildroom/delete”)

public String deleteBuildRoomInfo(String brcode) {

System.out.println(brcode);

HashMap<String, Object> map = new HashMap<>();

int result = dormService.deleteBuildRoomInfo(brcode);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “删除成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

return JSON.toJSONString(map);

@RequestMapping(value = “/messageList”)

public String viewMessageBoard() {

return “/dm/message-list”;

/**

  • 公告管理、失物招领

  • @param mbVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/message/list”)

public DataGridViewResult findMessageList(MessageBoardVo mbVo, HttpServletRequest request) {

// 获取当前管理员的管理区域

// 如果管理员负责众多楼栋,则按查询条件的宿舍区和楼栋来查,否则只能查他所负责的楼栋的公告信息

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

if (StringUtils.isBlank(brarea)) {

brarea = mbVo.getBrarea();

if (StringUtils.isBlank(brbid)) {

brbid = mbVo.getBrbid();

String brcode = MyStringUtil.getBrcode(brarea, brbid, “”);

mbVo.setBrcode(brcode);

System.out.println(mbVo);

// 设置分页信息

PageHelper.startPage(mbVo.getPage(), mbVo.getLimit());

// 查询

List list = dormService.findMessageListByPage(mbVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 添加公告/失物招领信息

  • @param mb

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/message/add”)

public String addMessage(MessageBoard mb, HttpServletRequest request) {

// announcer是管理员的uname

String uname = (String) request.getSession().getAttribute(“uname”);

mb.setAnnouncer(uname);

HashMap<String, Object> map = new HashMap<>();

int result = dormService.addMessage(mb);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “添加成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “添加失败!”);

return JSON.toJSONString(map);

/**

  • 更新公告/失物招领

  • @param mb

  • @return

*/

@ResponseBody

@RequestMapping(value = “/message/update”)

public String updateMessage(MessageBoard mb) {

// 拼接brcode

String brcode = MyStringUtil.getBrcode(mb.getBrarea(), mb.getBrbid(), “”);

mb.setBrcode(brcode);

System.out.println(mb);

HashMap<String, Object> map = new HashMap<>();

int result = dormService.updateMessage(mb);

if (result > 0) {

map.put(“success”, true);

map.put(“msg”, “更改成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “更改失败!”);

return JSON.toJSONString(map);

/**

  • 批量删除公告/失物招领信息

  • @param request 获取前端传来的id数组

  • @return

*/

@ResponseBody

@RequestMapping(value = “/message/delete”)

public String deleteMessage(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String params = request.getParameter(“params”);

System.out.println(params);

try {

if (StringUtils.isNotBlank(params)) {

// 获取id数组

JSONArray jsonArray = JSONArray.parseArray(params);

List list = new ArrayList<>();

for (int i = 0; i < jsonArray.size(); i++) {

JSONObject obj = jsonArray.getJSONObject(i);

Integer id = (Integer) obj.get(“id”);

System.out.println(id);

list.add(id);

boolean result = dormService.deleteMessage(list);

if (result) {

map.put(“success”, true);

map.put(“msg”, “删除成功!”);

} else {

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

} catch (Exception e) {

e.printStackTrace();

map.put(“success”, false);

map.put(“msg”, “删除失败!”);

return JSON.toJSONString(map);

/**

  • 留校信息列表

  • @return

*/

@RequestMapping(value = “/stayinList”)

public String viewStayInfoList() {

return “/dm/stayin-list”;

/**

  • 查找留校信息列表

  • @param stVo

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/list”)

public DataGridViewResult findStayInfoListByPage(StayInfoVo stVo, HttpServletRequest request) {

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

if (StringUtils.isNotBlank(brarea)) {

stVo.setBrarea(brarea);

if (StringUtils.isNotBlank(brbid)) {

stVo.setBrbid(brbid);

System.out.println(stVo);

// 设置分页信息

PageHelper.startPage(stVo.getPage(), stVo.getLimit());

// 查询

List list = dormService.findStayInfoListByPage(stVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 导出学生留校信息

  • @param request

  • @param response

*/

@ResponseBody

@RequestMapping(value = “/stayin/export.action”)

public void exportStayInfoToExcel(HttpServletRequest request, HttpServletResponse response) {

response.reset();// 清除缓存

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

// 查找学生登记信息

List list = dormService.exportStayInfo(brarea, brbid);

// 拼接excel表名

StringBuffer filenamebuffer = new StringBuffer();

if (StringUtils.isNotBlank(brarea)) {

filenamebuffer.append(brarea);

filenamebuffer.append(“-”);

if (StringUtils.isNotBlank(brbid)) {

filenamebuffer.append(brbid);

filenamebuffer.append(“栋-”);

filenamebuffer.append(“学生留校信息”);

String filename = filenamebuffer.toString();

try {

ExcelUtils.writeExcel(filename, response, list, StayInfo.class);

} catch (Exception e) {

e.printStackTrace();

/**

  • 获取留校申请中的统计数据

  • @param request

  • @return

*/

@ResponseBody

@RequestMapping(value = “/stayin/echartsData”)

public String getStayInfoEchartsData(HttpServletRequest request) {

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

JSONObject data = dormService.getStayInfoEchartsData(brarea, brbid);

System.out.println(JSON.toJSONString(data));

return JSON.toJSONString(data);

/**

  • 预分配宿舍界面

  • @return

*/

@RequestMapping(value = “/allocation/pre”)

public String preAllocateDorm() {

return “/dm/pre-allocate”;

/**

  • 查找空余寝室

  • @param biVo

  • @return

*/

@ResponseBody

@RequestMapping(value = “/room/list”)

public DataGridViewResult getFreeRoomList(BuildRoomInfoVo biVo) {

System.out.println(biVo);

// 设置分页信息

PageHelper.startPage(biVo.getPage(), biVo.getLimit());

// 查询

List list = dormService.findFreeRoomListByPage(biVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 查找未分配寝室的学生

  • @param siVo

  • @return

*/

@ResponseBody

@RequestMapping(value = “/student/list”)

public DataGridViewResult getNotAllocateStudentList(StudentInfoVo siVo) {

System.out.println(siVo);

// 设置分页信息

PageHelper.startPage(siVo.getPage(), siVo.getLimit());

// 查询

List list = dormService.findNotAllocateStudentListByPage(siVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

@ResponseBody

@RequestMapping(value = “/allocation/doAllocate”)

public String doAllocate(HttpServletRequest request) {

HashMap<String, Object> map = new HashMap<>();

String room = request.getParameter(“room”);

String student = request.getParameter(“student”);

System.out.println(room);

System.out.println(student);

map.put(“msg”, “接受到数据”);

return JSON.toJSONString(map);

/**

  • 判断床位数够不够

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/isEnough”)

public String judgeIsEnough() {

HashMap<String, Object> map = new HashMap<>();

boolean enough = dormService.judgeIsEnough();

if (enough) {

map.put(“success”, true);

} else {

map.put(“success”, false);

map.put(“msg”, “床位数不够,请先添加空余宿舍信息!”);

return JSON.toJSONString(map);

/**

  • 全部分配

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/assignAll”)

public String assignAll() {

HashMap<String, Object> map = new HashMap<>();

boolean success = dormService.doAssignAll();

if (success) {

map.put(“success”, true);

map.put(“msg”, “分配完毕,分配结果显示在当前页面下方。”);

} else {

map.put(“success”, false);

map.put(“msg”, “分配失败!”);

return JSON.toJSONString(map);

/**

  • 显示分配结果

  • @param aiVo

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/result”)

public DataGridViewResult viewAllocateResult(AllocationInfoVo aiVo) {

// 设置分页信息

PageHelper.startPage(aiVo.getPage(), aiVo.getLimit());

// 查询

List list = dormService.viewAllocateResult(aiVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 宿舍分配列表

  • @return

*/

@RequestMapping(value = “/allocation/list”)

public String allocationList() {

return “/dm/allocation-list”;

/**

  • 查询宿舍分配信息

  • 查询条件:专业/年级

  • @param aiVo

  • @return

*/

@ResponseBody

@RequestMapping(value = “/allocation/info”)

public DataGridViewResult findAllocationInfoList(AllocationInfoVo aiVo, HttpServletRequest request) {

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

if (StringUtils.isNotBlank(brarea)) {

aiVo.setBrarea(brarea);

if (StringUtils.isNotBlank(brbid)) {

aiVo.setBrbid(brbid);

System.out.println(aiVo);

// 设置分页信息

PageHelper.startPage(aiVo.getPage(), aiVo.getLimit());

// 查询

List list = dormService.findAllocationInfoListByPage(aiVo);

// 创建分页对象

PageInfo pageInfo = new PageInfo(list);

// 按接口要求返回数据

DataGridViewResult data = new DataGridViewResult(pageInfo.getTotal(), pageInfo.getList());

return data;

/**

  • 导出学生宿舍分配信息

  • @param request

  • @param response

*/

@ResponseBody

@RequestMapping(value = “/allocation/export.action”)

public void exportAllocationInfoToExcel(HttpServletRequest request, HttpServletResponse response) {

response.reset();// 清除缓存

String brarea = (String) request.getSession().getAttribute(“brarea”);

String brbid = (String) request.getSession().getAttribute(“brbid”);

// 查找宿舍分配信息

List list = dormService.exportAllocationInfo(brarea, brbid);

// 拼接excel表名

StringBuffer filenamebuffer = new StringBuffer();

if (StringUtils.isNotBlank(brarea)) {

filenamebuffer.append(brarea);

filenamebuffer.append(“-”);

if (StringUtils.isNotBlank(brbid)) {

filenamebuffer.append(brbid);

filenamebuffer.append(“栋-”);

filenamebuffer.append(“学生宿舍分配名单”);

String filename = filenamebuffer.toString();

try {

ExcelUtils.writeExcel(filename, response, list, AllocationInfo.class);

} catch (Exception e) {

e.printStackTrace();


  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值