【开源】JAVA+Vue.js实现校园疫情防控管理系统


目录

  • 一、摘要
    • [1.1 项目介绍](#1.1 项目介绍)
    • [1.2 项目录屏](#1.2 项目录屏)
  • 二、功能模块
    • [2.1 学生](#2.1 学生)
    • [2.2 老师](#2.2 老师)
    • [2.3 学校管理部门](#2.3 学校管理部门)
  • 三、系统展示
  • 四、核心代码
    • [4.1 新增健康情况上报](#4.1 新增健康情况上报)
    • [4.2 查询健康咨询](#4.2 查询健康咨询)
    • [4.3 新增离返校申请](#4.3 新增离返校申请)
    • [4.4 查询防疫物资](#4.4 查询防疫物资)
    • [4.5 查询防控宣传数据](#4.5 查询防控宣传数据)
  • 五、免责说明

一、摘要

1.1 项目介绍

基于JAVA+Vue+SpringBoot+MySQL的校园疫情防控管理系统,包含了健康情况上报模块、健康咨询模块、离返校申请模块、防疫物资模块和防控宣传模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,校园疫情防控管理系统基于角色的访问控制,给学生、高校管理员使用,可将权限精确到按钮级别,您可以自定义角色并分配权限,系统适合设计精确的权限约束需求。

1.2 项目录屏


二、功能模块

校园疫情防控管理系统是一个基于信息技术的应用系统,旨在通过计算机网络和相关技术,协助学校管理部门实现对校园疫情的及时监测、管理、预警和防控。

  1. 分析目前校园疫情防控的现状,确定系统的设计目标和功能需求。

  2. 设计系统的数据库、用户界面,制定系统的预警和防控策略,实现对校园疫情的及时监测、预警和防控,开发系统的相关功能模块,完成对问题的定义,可行性研究,需求分析,概要设计,详细设计,测试,软件功能说明。

功能要求如下。

设计制作校园疫情防控管理系统,具有基本的网站结构,有数据采集、防控宣传、数据分析等功能模块,是结合目前校园疫情防控要求所设定。建立学生、老师、学校管理部门三级权限,管理部门对后台及下一级老师进行管理。要有一定的安全加密模块。

2.1 学生

可主动申请上报健康状况、离校方式与时间、个人居住地,浏览疫情防控知识、疫情心理健康留言等。

2.2 老师

隔离学生管理、分析学生健康情况、提供防控措施和指导、批准学生离返校、查看学生各省分布、确认班车送达、回复留言板。

2.3 学校管理部门

对防疫物资进行管理,能够采集并上传学生、教师和校园公共区域的健康信息、发布校园疫情状况、分院系及专业统计学生健康情况,查看学生健康动态与教师工作动态。


三、系统展示










四、核心代码

4.1 新增健康情况上报

java 复制代码
@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增健康情况上报")
public Result<HealthReport> insert(HealthReport healthReport){
    User currUser = securityUtil.getCurrUser();
    QueryWrapper<HealthReport> hrQw = new QueryWrapper<>();
    hrQw.eq("user_id",currUser.getId());
    hrQw.eq("date",healthReport.getDate());
    if(iHealthReportService.count(hrQw) > 0L) {
        return ResultUtil.error("已创建");
    }
    healthReport.setUserId(currUser.getId());
    healthReport.setUserName(currUser.getNickname());
    healthReport.setDate(DateUtil.today());
    iHealthReportService.saveOrUpdate(healthReport);
    return new ResultUtil<HealthReport>().setData(healthReport);
}

4.2 查询健康咨询

java 复制代码
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询健康咨询")
public Result<IPage<HealthyConsulting>> getByPage(@ModelAttribute HealthyConsulting healthyConsulting ,@ModelAttribute PageVo page){
    QueryWrapper<HealthyConsulting> qw = new QueryWrapper<>();
    User currUser = securityUtil.getCurrUser();
    QueryWrapper<User> userQw = new QueryWrapper<>();
    userQw.eq("id",currUser.getId());
    userQw.inSql("id","SELECT user_id FROM a_user_role WHERE del_flag = 0 AND role_id = '1536606659751841799'");
    if(iUserService.count(userQw) < 1L) {
        qw.eq("consulting_id",currUser.getId());
    }
    if(!ZwzNullUtils.isNull(healthyConsulting.getConsultingName())) {
        qw.eq("consulting_name",healthyConsulting.getConsultingName());
    }
    if(!ZwzNullUtils.isNull(healthyConsulting.getContent())) {
        qw.like("content",healthyConsulting.getContent());
    }
    IPage<HealthyConsulting> data = iHealthyConsultingService.page(PageUtil.initMpPage(page),qw);
    return new ResultUtil<IPage<HealthyConsulting>>().setData(data);
}

4.3 新增离返校申请

java 复制代码
@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增离返校申请")
public Result<LeavingApply> insert(LeavingApply leavingApply){
    User currUser = securityUtil.getCurrUser();
    leavingApply.setUserId(currUser.getId());
    leavingApply.setUserName(currUser.getNickname());
    iLeavingApplyService.saveOrUpdate(leavingApply);
    return new ResultUtil<LeavingApply>().setData(leavingApply);
}

4.4 查询防疫物资

java 复制代码
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询防疫物资")
public Result<IPage<Material>> getByPage(@ModelAttribute Material material ,@ModelAttribute PageVo page){
    QueryWrapper<Material> qw = new QueryWrapper<>();
    if(!ZwzNullUtils.isNull(material.getTitle())) {
        qw.like("title",material.getTitle());
    }
    if(!ZwzNullUtils.isNull(material.getCategory())) {
        qw.like("category",material.getCategory());
    }
    if(!ZwzNullUtils.isNull(material.getSupplier())) {
        qw.like("supplier",material.getSupplier());
    }
    IPage<Material> data = iMaterialService.page(PageUtil.initMpPage(page),qw);
    return new ResultUtil<IPage<Material>>().setData(data);
}

4.5 查询防控宣传数据

java 复制代码
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "查询防控宣传")
public Result<IPage<Propaganda>> getByPage(@ModelAttribute Propaganda propaganda ,@ModelAttribute PageVo page){
    QueryWrapper<Propaganda> qw = new QueryWrapper<>();
    if(!ZwzNullUtils.isNull(propaganda.getTitle())) {
        qw.like("title",propaganda.getTitle());
    }
    if(!ZwzNullUtils.isNull(propaganda.getPublisher())) {
        qw.like("publisher",propaganda.getPublisher());
    }
    if(!ZwzNullUtils.isNull(propaganda.getContent())) {
        qw.like("content",propaganda.getContent());
    }
    IPage<Propaganda> data = iPropagandaService.page(PageUtil.initMpPage(page),qw);
    return new ResultUtil<IPage<Propaganda>>().setData(data);
}

五、免责说明

  • 本项目仅供个人学习使用,商用授权请联系博主,否则后果自负。
  • 博主拥有本软件构建后的应用系统全部内容所有权及独立的知识产权,拥有最终解释权。
  • 如有问题,欢迎在仓库 Issue 留言,看到后会第一时间回复,相关意见会酌情考虑,但没有一定被采纳的承诺或保证。

下载本系统代码或使用本系统的用户,必须同意以下内容,否则请勿下载!

  1. 出于自愿而使用/开发本软件,了解使用本软件的风险,且同意自己承担使用本软件的风险。
  2. 利用本软件构建的网站的任何信息内容以及导致的任何版权纠纷和法律争议及后果和博主无关,博主对此不承担任何责任。
  3. 在任何情况下,对于因使用或无法使用本软件而导致的任何难以合理预估的损失(包括但不仅限于商业利润损失、业务中断与业务信息丢失),博主概不承担任何责任。
  4. 必须了解使用本软件的风险,博主不承诺提供一对一的技术支持、使用担保,也不承担任何因本软件而产生的难以预料的问题的相关责任。
相关推荐
计算机学姐22 分钟前
基于Python爬虫大屏可视化的热门旅游景点数据分析系统
开发语言·vue.js·后端·爬虫·python·mysql·django
夏天里的肥宅水24 分钟前
Python_爬虫1_Requests库入门
开发语言·爬虫·python
阿星_25 分钟前
python selenium库的使用:通过兴趣点获取坐标
开发语言·python·selenium
夏天里的肥宅水26 分钟前
Python_爬虫2_爬虫引发的问题
开发语言·爬虫·python
武子康1 小时前
大数据-226 离线数仓 - Flume 优化配置 自定义拦截器 拦截原理 了 拦截器实现 Java
java·大数据·数据仓库·hive·hadoop·数据挖掘·flume
Mr.Liu61 小时前
小程序20-样式:自适应尺寸单位 rpx
前端·微信小程序·小程序
Mr.Liu61 小时前
小程序19-微信小程序的样式和组件介绍
前端·微信小程序·小程序
小牛itbull1 小时前
ReactPress与WordPress:一场内容管理系统的较量
开发语言·javascript·wordpress·reactpress
起风的秋天@2 小时前
CSS Modules中的 :global
前端·css
林太白2 小时前
❤React-React 组件基础(类组件)
前端·javascript·react.js