基于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

相关文章

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

CSS place-items: center解析与用法详解

《CSSplace-items:center解析与用法详解》place-items:center;是一个强大的CSS简写属性,用于同时控制网格(Grid)和弹性盒(Flexbox)... place-items: center; 是一个强大的 css 简写属性,用于同时控制 网格(Grid) 和 弹性盒(F

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

CSS Anchor Positioning重新定义锚点定位的时代来临(最新推荐)

《CSSAnchorPositioning重新定义锚点定位的时代来临(最新推荐)》CSSAnchorPositioning是一项仍在草案中的新特性,由Chrome125开始提供原生支持需... 目录 css Anchor Positioning:重新定义「锚定定位」的时代来了! 什么是 Anchor Pos

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再

spring中的ImportSelector接口示例详解

《spring中的ImportSelector接口示例详解》Spring的ImportSelector接口用于动态选择配置类,实现条件化和模块化配置,关键方法selectImports根据注解信息返回... 目录一、核心作用二、关键方法三、扩展功能四、使用示例五、工作原理六、应用场景七、自定义实现Impor

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项