【468】基于ssm jsp高校疫情防控系统源码和论文
开发工具:idea 或eclipse
数据库mysql5.7+
数据库链接工具:navcat,小海豚等
技术:ssm
摘 要
随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。
校园疫情防控管理系统,主要的模块包括系统系统用户管理员管理,学生信息管理,风险地区管理,学生行程管理,健康体温上报管理,学生紧急情况管理,防疫措施信息管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的操作权限。
要想实现校园疫情防控管理系统的各项功能,需要后台数据库的大力支持。管理员验证注册信息,收集的信息,并由此分析得出的关联信息等大量的数据都由数据库管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。
本系统的开发使获取校园疫情防控管理系统信息能够更加方便快捷,同时也使校园疫情防控管理系统管理信息变的更加系统化、有序化。系统界面较友好,易于操作。
关键词:校园疫情防控管理系统;Java;Mysql ssm
package com.xiaoniucr.controller;
import com.xiaoniucr.dto.PageQueryDto;
import com.xiaoniucr.entity.HealthReport;
import com.xiaoniucr.util.PropertiesUtils;
import com.xiaoniucr.vo.JSONReturn;
import com.xiaoniucr.vo.LoginSession;
import com.xiaoniucr.vo.PageVo;
import org.apache.commons.io.FileUtils;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import sun.rmi.runtime.Log;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 健康打卡控制器
*/
@Controller
@RequestMapping(value = "/hr")
public class HealthReportController extends BaseController {
/**
* 健康打卡记录查询分页
* @return
*/
@RequestMapping(value = "/list")
@ResponseBody
public PageVo findHealthReport(@RequestParam Map<String,Object> map){
LoginSession loginSession = (LoginSession) getSession("user");
PageQueryDto queryDto = new PageQueryDto(map);
if(loginSession.getRole() == 2){
queryDto.put("userId",loginSession.getId());
}
return healthReportService.page(queryDto);
}
/**
* 根据ID查询健康打卡记录
* @param id
* @return
*/
@RequestMapping(value = "/{id}")
@ResponseBody
public JSONReturn selectById(@PathVariable(value = "id")Integer id){
HealthReport report = healthReportService.selectById(id);
return JSONReturn.success("查询成功!",report);
}
/**
* 添加健康打卡记录
* @param report
* @return
*/
@RequestMapping(value = "/add")
@ResponseBody
public JSONReturn add(@RequestBody HealthReport report){
LoginSession session = (LoginSession) getSession("user");
report.setUserId(session.getId());
Integer rows = healthReportService.add(report);
return rows > 0 ? JSONReturn.success("添加成功!") : JSONReturn.fail("添加失败!");
}
/**
* 更新健康打卡记录
* @param report
* @return
*/
@RequestMapping(value = "/update")
@ResponseBody
public JSONReturn update(@RequestBody HealthReport report){
Integer rows = healthReportService.update(report);
return rows > 0 ? JSONReturn.success("更新成功!") : JSONReturn.fail("操作失败!");
}
/**
* 删除健康打卡记录
* @param report
* @return
*/
@RequestMapping(value = "/del")
@ResponseBody
public JSONReturn del(@RequestBody HealthReport report){
Integer rows = healthReportService.del(report);
return rows > 0 ? JSONReturn.success("删除成功!") : JSONReturn.fail("删除失败!");
}
/**
* 上传体检报告
* @param request
* @return
*/
@RequestMapping(value = "/uploadReport",method = RequestMethod.POST )
@ResponseBody
public JSONReturn uploadHealthCode(HttpServletRequest request) {
Integer id = Integer.parseInt(request.getParameter("id"));
//得到文件的列表
List<MultipartFile> files = ((MultipartHttpServletRequest) request).getFiles("file");
// 创建年月文件夹
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String dateDirs = sdf.format(new Date());
//这里的地址文件上传到的地方
for (int i = 0; i < files.size(); i++) {
MultipartFile file = files.get(i);
if (file.isEmpty()) {
return JSONReturn.fail("上传第" + (i++) + "个文件失败");
}
String originalFilename = file.getOriginalFilename();
// 新的文件名称
String newFileName = System.currentTimeMillis() + originalFilename.substring(originalFilename.lastIndexOf("."));
// 新文件
File dest = new File(PropertiesUtils.getValue("file.path") + File.separator + dateDirs + File.separator + newFileName);
// 判断目标文件所在的目录是否存在
if (!dest.getParentFile().exists()) {
// 如果目标文件所在的目录不存在,则创建父目录
dest.getParentFile().mkdirs();
}
try {
HealthReport healthReport = healthReportService.selectById(id);
healthReport.setReportFileName(originalFilename);
healthReport.setReportFilePath("/"+dateDirs+"/"+newFileName);
healthReportService.update(healthReport);
file.transferTo(dest);
} catch (IOException e) {
return JSONReturn.fail("上传第" + (i++) + "个文件失败:"+e.getMessage());
}
}
return JSONReturn.success("文件上传成功!");
}
@RequestMapping(value="/downloadReport")
public ResponseEntity<byte[]> download(@RequestParam Integer id)throws Exception {
//服务器中下载文件的路径
String filePath = PropertiesUtils.getValue("file.path");
HealthReport hr = healthReportService.selectById(id);
File file = new File(filePath + hr.getReportFilePath());
HttpHeaders headers = new HttpHeaders();
//下载显示的文件名,解决中文名称乱码问题
String downloadFielName = new String(hr.getReportFileName().getBytes("UTF-8"),"iso-8859-1");
//通知浏览器以attachment(下载方式)打开图片
headers.setContentDispositionFormData("attachment", downloadFielName);
//application/octet-stream : 二进制流数据(最常见的文件下载)。
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
//通过fileutils的工具输入输出下载的文件
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),
headers, HttpStatus.CREATED);
}
}
package com.xiaoniucr.controller;
import com.xiaoniucr.dto.PageQueryDto;
import com.xiaoniucr.entity.AreaRisk;
import com.xiaoniucr.entity.Trip;
import com.xiaoniucr.util.PropertiesUtils;
import com.xiaoniucr.vo.JSONReturn;
import com.xiaoniucr.vo.LoginSession;
import com.xiaoniucr.vo.PageVo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
*
* 行程管理控制器
*/
@Controller
@RequestMapping(value = "/trip")
public class TripController extends BaseController {
/**
* 行程查询分页
* @return
*/
@RequestMapping(value = "/list")
@ResponseBody
public PageVo findTrip(@RequestParam Map<String,Object> map){
LoginSession loginSession = (LoginSession) getSession("user");
PageQueryDto queryDto = new PageQueryDto(map);
if(loginSession.getRole() == 2){
queryDto.put("userId",loginSession.getId());
}
return tripService.page(queryDto);
}
/**
* 根据ID查询记录
* @param id
* @return
*/
@RequestMapping(value = "/{id}")
@ResponseBody
public JSONReturn selectById(@PathVariable(value = "id")Integer id){
Trip trip = tripService.selectById(id);
return JSONReturn.success("查询成功!",trip);
}
/**
* 添加行程
* @param trip
* @return
*/
@RequestMapping(value = "/add")
@ResponseBody
public JSONReturn add(@RequestBody Trip trip){
LoginSession loginSession = (LoginSession) getSession("user");
trip.setUserId(loginSession.getId());
Integer rows = tripService.add(trip);
return rows > 0 ? JSONReturn.success("添加成功!") : JSONReturn.fail("添加失败!");
}
/**
* 更新行程
* @param trip
* @return
*/
@RequestMapping(value = "/update")
@ResponseBody
public JSONReturn update(@RequestBody Trip trip){
Integer rows = tripService.update(trip);
return rows > 0 ? JSONReturn.success("更新成功!") : JSONReturn.fail("操作失败!");
}
/**
* 删除行程
* @param trip
* @return
*/
@RequestMapping(value = "/del")
@ResponseBody
public JSONReturn del(@RequestBody Trip trip){
Integer rows = tripService.del(trip.getId());
return rows > 0 ? JSONReturn.success("删除成功!") : JSONReturn.fail("删除失败!");
}
/**
* 行程码上传
* @param request
* @return
*/
@RequestMapping(value = "/uploadTripCode",method = RequestMethod.POST )
@ResponseBody
public JSONReturn uploadTripCode(HttpServletRequest request) {
Integer id = Integer.parseInt(request.getParameter("id"));
//得到文件的列表
List<MultipartFile> files = ((MultipartHttpServletRequest) request).getFiles("file");
// 创建年月文件夹
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String dateDirs = sdf.format(new Date());
//这里的地址文件上传到的地方
for (int i = 0; i < files.size(); i++) {
MultipartFile file = files.get(i);
if (file.isEmpty()) {
return JSONReturn.fail("上传第" + (i++) + "个文件失败");
}
String originalFilename = file.getOriginalFilename();
// 新的文件名称
String newFileName = System.currentTimeMillis() + originalFilename.substring(originalFilename.lastIndexOf("."));
// 新文件
File dest = new File(PropertiesUtils.getValue("file.path") + File.separator + dateDirs + File.separator + newFileName);
// 判断目标文件所在的目录是否存在
if (!dest.getParentFile().exists()) {
// 如果目标文件所在的目录不存在,则创建父目录
dest.getParentFile().mkdirs();
}
try {
file.transferTo(dest);
Trip trip = tripService.selectById(id);
trip.setTripCode("/file/"+dateDirs+"/"+newFileName);
tripService.update(trip);
} catch (IOException e) {
return JSONReturn.fail("上传第" + (i++) + "个文件失败:"+e.getMessage());
}
}
return JSONReturn.success("文件上传成功!");
}
/**
* 健康码上传
* @param request
* @return
*/
@RequestMapping(value = "/uploadHealthCode",method = RequestMethod.POST )
@ResponseBody
public JSONReturn uploadHealthCode(HttpServletRequest request) {
Integer id = Integer.parseInt(request.getParameter("id"));
//得到文件的列表
List<MultipartFile> files = ((MultipartHttpServletRequest) request).getFiles("file");
// 创建年月文件夹
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String dateDirs = sdf.format(new Date());
//这里的地址文件上传到的地方
for (int i = 0; i < files.size(); i++) {
MultipartFile file = files.get(i);
if (file.isEmpty()) {
return JSONReturn.fail("上传第" + (i++) + "个文件失败");
}
String originalFilename = file.getOriginalFilename();
// 新的文件名称
String newFileName = System.currentTimeMillis() + originalFilename.substring(originalFilename.lastIndexOf("."));
// 新文件
File dest = new File(PropertiesUtils.getValue("file.path") + File.separator + dateDirs + File.separator + newFileName);
// 判断目标文件所在的目录是否存在
if (!dest.getParentFile().exists()) {
// 如果目标文件所在的目录不存在,则创建父目录
dest.getParentFile().mkdirs();
}
try {
Trip trip = tripService.selectById(id);
trip.setHealthCode("/file/"+dateDirs+"/"+newFileName);
tripService.update(trip);
file.transferTo(dest);
} catch (IOException e) {
return JSONReturn.fail("上传第" + (i++) + "个文件失败:"+e.getMessage());
}
}
return JSONReturn.success("文件上传成功!");
}
}