随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。
校园疫情防控管理系统,主要的模块包括系统系统用户管理员管理,学生信息管理,风险地区管理,学生行程管理,健康体温上报管理,学生紧急情况管理,防疫措施信息管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对后台有相应的操作权限。
要想实现校园疫情防控管理系统的各项功能,需要后台数据库的大力支持。管理员验证注册信息,收集的信息,并由此分析得出的关联信息等大量的数据都由数据库管理。本文中数据库服务器端采用了Mysql作为后台数据库,使Web与数据库紧密联系起来。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。
本系统的开发使获取校园疫情防控管理系统信息能够更加方便快捷,同时也使校园疫情防控管理系统管理信息变的更加系统化、有序化。系统界面较友好,易于操作。
package com.xiaoniucr.controller;
import com.xiaoniucr.dto.PageQueryDto;
import com.xiaoniucr.entity.HealthReport;
import com.xiaoniucr.entity.Notice;
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.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
*/
@Controller
@RequestMapping(value = "/notice")
public class NoticeController extends BaseController {
/**
* 公告查询分页
* @return
*/
@RequestMapping(value = "/list")
@ResponseBody
public PageVo findNotice(@RequestParam Map<String,Object> map){
PageQueryDto queryDto = new PageQueryDto(map);
return noticeService.page(queryDto);
}
/**
* 根据ID查询记录
* @param id
* @return
*/
@RequestMapping(value = "/{id}")
@ResponseBody
public JSONReturn selectById(@PathVariable(value = "id")Integer id){
Notice notice = noticeService.selectById(id);
return JSONReturn.success("查询成功!",notice);
}
/**
* 添加公告
* @param notice
* @return
*/
@RequestMapping(value = "/add")
@ResponseBody
public JSONReturn add(@RequestBody Notice notice){
Integer rows = noticeService.add(notice);
return rows > 0 ? JSONReturn.success("发布成功!") : JSONReturn.fail("发布失败!");
}
/**
* 上传体检报告
* @param request
* @return
*/
@RequestMapping(value = "/addimg",method = RequestMethod.POST )
@ResponseBody
public JSONReturn addimg(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 {
Notice notice = noticeService.selectById(id);
notice.setName("/file/"+dateDirs+"/"+newFileName);
noticeService.update(notice);
file.transferTo(dest);
} catch (IOException e) {
return JSONReturn.fail("上传第" + (i++) + "个文件失败:"+e.getMessage());
}
}
return JSONReturn.success("文件上传成功!");
}
/**
* 更新公告
* @param notice
* @return
*/
@RequestMapping(value = "/update")
@ResponseBody
public JSONReturn update(@RequestBody Notice notice){
Integer rows = noticeService.update(notice);
return rows > 0 ? JSONReturn.success("更新成功!") : JSONReturn.fail("操作失败!");
}
/**
* 删除公告
* @param notice
* @return
*/
@RequestMapping(value = "/del")
@ResponseBody
public JSONReturn del(@RequestBody Notice notice){
Integer rows = noticeService.del(notice);
return rows > 0 ? JSONReturn.success("删除成功!") : JSONReturn.fail("删除失败!");
}
}