基于springboot+vue的师生健康信息管理系统(前后端分离)

本文主要是介绍基于springboot+vue的师生健康信息管理系统(前后端分离),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

博主主页:猫头鹰源码

博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战

主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询

文末联系获取

研究背景: 

 随着社会的快速发展,计算机的影响是全面且深入的。人们生活水平的不断提高,日常生活中人们对医院管理方面的要求也在不断提高,由于老龄化人数更是不断增加,使得师生健康信息管理系统的开发成为必需而且紧迫的事情。师生健康信息管理系统主要是借助计算机,通过对师生健康信息管理系统所需的信息管理,增加用户的选择,同时也方便对广大师生健康信息管理系统的及时查询、修改以及对师生健康信息管理系统的及时了解。师生健康信息管理系统对用户带来了更多的便利,该系统通过和数据库管理系统软件协作来满足用户的需求。计算机技术在现代管理中的应用,使计算机成为人们应用现代技术的重要工具。能够有效的解决获取信息便捷化、全面化的问题,提高效率。本师生健康信息管理系统主要牵扯到程序,数据库与计算机技术等。覆盖知识面大,可以大大的提高系统人员工作效率。

功能介绍:

系统包含技术:

后端:springboot,mybatis
前端:element-ui、js、css等
开发工具:idea/vscode
数据库:mysql 5.7
JDK版本:jdk1.8

部分截图说明:

管理员登录,通过填写注册时输入的用户名、密码、角色进行登录,如图所示。

管理员登录进入师生健康信息管理系统可以查看个人中心、学生管理、教师管理、数据收集管理、问卷分类管理、疫情问卷管理、问卷调查管理、返校信息管理、数据采集管理、返校情况管理等信息。进行相对应操作。

学生管理,管理员在用户管理页面中可以查看学号、姓名、性别、学院、专业、手机、邮箱、身份证、宿舍号、照片等信息,进行查看详情、新增或修改、删除操作,如图所示。

教师管理,管理员在用户管理页面中可以查看工号、教师姓名、身份证、性别、照片、职称、联系电话、教师邮箱等信息,进行查看详情、新增或修改、删除操作,如图所示。

数据收集管理:通过列表可以获取近期住址、家庭住址、体温、身体状况、登记时间、学号、姓名、性别等信息,并可根据需要对数据收集信息进行行查看详情、新增、修改或删除等操作,如图所示。 

疫情问卷管理:通过页面可以获取编号、标题、问卷分类、问题等信息进行新增、查看详情、修改、删除操作,如图所示。 

问卷调查管理:通过列表可以获取姓名、性别、身份、标题、填报状态、填报时间、问题等信息,进行查看修改或删除操作。 

返校信息管理:通过列表可以获取返校状态、学号、姓名、学院、专业、宿舍号等信息,进行查看详情、下载或查看统计报表操作,如图所示。 

数据采集管理:通过列表可以获取近期住址、家庭住址、体温、身体状况、工号、教师姓名、性别等信息,进行查看详情、修改、删除操作,如图所示。 

部分代码: 

/*** 数据采集* 后端接口* @author * @email * @date 2021-04-04 11:13:07*/
@RestController
@RequestMapping("/shujucaiji")
public class ShujucaijiController {@Autowiredprivate ShujucaijiService shujucaijiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,ShujucaijiEntity shujucaiji,HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaoshi")) {shujucaiji.setGonghao((String)request.getSession().getAttribute("username"));}EntityWrapper<ShujucaijiEntity> ew = new EntityWrapper<ShujucaijiEntity>();PageUtils page = shujucaijiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shujucaiji), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,ShujucaijiEntity shujucaiji, HttpServletRequest request){EntityWrapper<ShujucaijiEntity> ew = new EntityWrapper<ShujucaijiEntity>();PageUtils page = shujucaijiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shujucaiji), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( ShujucaijiEntity shujucaiji){EntityWrapper<ShujucaijiEntity> ew = new EntityWrapper<ShujucaijiEntity>();ew.allEq(MPUtil.allEQMapPre( shujucaiji, "shujucaiji")); return R.ok().put("data", shujucaijiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(ShujucaijiEntity shujucaiji){EntityWrapper< ShujucaijiEntity> ew = new EntityWrapper< ShujucaijiEntity>();ew.allEq(MPUtil.allEQMapPre( shujucaiji, "shujucaiji")); ShujucaijiView shujucaijiView =  shujucaijiService.selectView(ew);return R.ok("查询数据采集成功").put("data", shujucaijiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){ShujucaijiEntity shujucaiji = shujucaijiService.selectById(id);return R.ok().put("data", shujucaiji);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){ShujucaijiEntity shujucaiji = shujucaijiService.selectById(id);return R.ok().put("data", shujucaiji);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ShujucaijiEntity shujucaiji, HttpServletRequest request){shujucaiji.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shujucaiji);shujucaijiService.insert(shujucaiji);return R.ok();}/*** 前端保存*/@IgnoreAuth@RequestMapping("/add")public R add(@RequestBody ShujucaijiEntity shujucaiji, HttpServletRequest request){shujucaiji.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shujucaiji);shujucaijiService.insert(shujucaiji);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody ShujucaijiEntity shujucaiji, HttpServletRequest request){//ValidatorUtils.validateEntity(shujucaiji);shujucaijiService.updateById(shujucaiji);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){shujucaijiService.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<String, Object> 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<ShujucaijiEntity> wrapper = new EntityWrapper<ShujucaijiEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("jiaoshi")) {wrapper.eq("gonghao", (String)request.getSession().getAttribute("username"));}int count = shujucaijiService.selectCount(wrapper);return R.ok().put("count", count);}

以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。

好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~ 

这篇关于基于springboot+vue的师生健康信息管理系统(前后端分离)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/637597

相关文章

java实现延迟/超时/定时问题

《java实现延迟/超时/定时问题》:本文主要介绍java实现延迟/超时/定时问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java实现延迟/超时/定时java 每间隔5秒执行一次,一共执行5次然后结束scheduleAtFixedRate 和 schedu

Java Optional避免空指针异常的实现

《JavaOptional避免空指针异常的实现》空指针异常一直是困扰开发者的常见问题之一,本文主要介绍了JavaOptional避免空指针异常的实现,帮助开发者编写更健壮、可读性更高的代码,减少因... 目录一、Optional 概述二、Optional 的创建三、Optional 的常用方法四、Optio

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

idea maven编译报错Java heap space的解决方法

《ideamaven编译报错Javaheapspace的解决方法》这篇文章主要为大家详细介绍了ideamaven编译报错Javaheapspace的相关解决方法,文中的示例代码讲解详细,感兴趣的... 目录1.增加 Maven 编译的堆内存2. 增加 IntelliJ IDEA 的堆内存3. 优化 Mave

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

springboot filter实现请求响应全链路拦截

《springbootfilter实现请求响应全链路拦截》这篇文章主要为大家详细介绍了SpringBoot如何结合Filter同时拦截请求和响应,从而实现​​日志采集自动化,感兴趣的小伙伴可以跟随小... 目录一、为什么你需要这个过滤器?​​​二、核心实现:一个Filter搞定双向数据流​​​​三、完整代码

SpringBoot利用@Validated注解优雅实现参数校验

《SpringBoot利用@Validated注解优雅实现参数校验》在开发Web应用时,用户输入的合法性校验是保障系统稳定性的基础,​SpringBoot的@Validated注解提供了一种更优雅的解... 目录​一、为什么需要参数校验二、Validated 的核心用法​1. 基础校验2. php分组校验3

Java Predicate接口定义详解

《JavaPredicate接口定义详解》Predicate是Java中的一个函数式接口,它代表一个判断逻辑,接收一个输入参数,返回一个布尔值,:本文主要介绍JavaPredicate接口的定义... 目录Java Predicate接口Java lamda表达式 Predicate<T>、BiFuncti

Vue3使用router,params传参为空问题

《Vue3使用router,params传参为空问题》:本文主要介绍Vue3使用router,params传参为空问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录vue3使用China编程router,params传参为空1.使用query方式传参2.使用 Histo

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA