基于Java的校园疫情防控管理系统的设计与实现_第1页
基于Java的校园疫情防控管理系统的设计与实现_第2页
基于Java的校园疫情防控管理系统的设计与实现_第3页
基于Java的校园疫情防控管理系统的设计与实现_第4页
基于Java的校园疫情防控管理系统的设计与实现_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章绪论1.1研究背景近年来,新冠疫情事态趋于平缓,各地区疫情得到有效控制,各省各地也陆续解封。能达到如此的成果,除了有国家的周密管控,及时发布相关利民政策外,还有人民的众志成城,团结一致的精神,疫情期间人民积极参加核酸检测、积极接种疫苗、自觉封闭在家等行为,都给“抗疫行动”提供巨大的帮助。而今,疫情的隐患仍未尽除,防控管理任务依旧严峻。高校校园作为人员组成复杂、人群聚集密度大的场所,由于其社会关注度高、风险点密集,是目前疫情防控最重要的场所之一REF_Ref15083\r[1]。做好疫情的精准科学防控,是稳定社会秩序,维护师生生命健康的重要工作。通过有效使用校园疫情防控管理系统,不仅可以有效减少人力物力的消耗,而且可以更加准确地掌握学生的基本信息,同时有效地落实确认人员的行踪,大大降低了感染的风险,极大地提升了校园防控的效率。1.2研究目的和意义2019年,一场疫情袭击了整个中国,其速度之快、范围之广都使“抗疫局势”变得非常严峻。然经过党的坚强领导,政府部门精心策划,加上全体公众的共同努力,我国已经取得了抗击疫情的阶段性胜利。但是,由于全球疫情的持续蔓延,仍给中国人民的生命健康带来了巨大的挑战。鉴于当前全球疫情形势的严峻性,为确保公众的健康安全,我国已经开始实施全面的疫情防控措施,以确保社会的安全和秩序的稳定。根据“做好教育系统疫情防控工作”的相关主题会议的要求,高校校园的疫情防控已经成为常态化的重要组成部分,必须加强管理,确保学生的健康安全。随着商场、工厂等各行各业的不断恢复正常,生活逐渐步入正轨。随着返校学生人数的持续增长,各地学校正在采取多种措施,以应对这一挑战,并为学校的防疫工作提供更有效的支持。为了有效地控制疫情,本文提出了一种基于微服务架构的校园疫情防控系统。这个系统具有数据处理能力,同时本系统支持请假、核酸检测预约申请和健康上报信息的管理,能够及时了解学生的健康状况与其所在地点,有效地降低了校园疫情的管控成本。1.3国内外研究现状在国内的疫情期间,根据我国教育主管部门要求,学校严格执行“日报告”“零报告”机制,此期间校园疫情防控管理得到飞速发展。杨众在2020年发布了《高校新冠肺炎防疫程序的系统设计与实施》,本文所设计的系统是在微信云端的基础上开发出来的,方便了老师与学生的身份认证、学生的健康状况上报、防护用品的领取和处置、公共区域的消毒等。在此基础上,对每个学生、教师、来访者的健康情况进行了全面、细致的了解,从而更好的进行校园防疫工作。程序基于微信云开发,无需本地化部署,快速响应,数据支持云端管理,无需下载多余APP,使用便捷,为各大中小院校防疫工作提供了技术保障REF_Ref15449\r[2]。2022年,胡琨在《基于微服务的校园疫情防控系统的设计与实现》REF_Ref15527\r[3]一文中提出一种新型的、基于微服务架构的校园疫情预警与管理体系,旨在帮助学生们及时了解和预防疫病,并采取必要的预防和治疗措施,从而实现最佳的预警和治疗效果。其通过使用SpringCloud架构,将系统分成多个模块,包括系统管理、班级管理、部门管理、场所管理和校园出入管理。这样可以在一定程度上减少人员和物资的消耗,并且有助于确保教学和科研活动的顺利进行。在国外,对管理系统早有较深入的研究;再结合疫情期间的管理要求,所研发出的防疫管理系统为不同组织、企业提供有效帮助。2020年,Teodoro,Alamo,DanielG在《Designandimplementationofweb-basedpersonnel-intensiveenterpriseepidemicpreventioninformationmanagementsystem》中采用Java语言和SQLServer数据库进行开发,具有防疫检测信息管理、企业信息管理、人员信息管理等功能,实现从政府到企业的防疫流程。该系统对提高政府监管人员密集型企业的防疫效率、促进人员密集型企业的疫情防控具有积极意义REF_Ref13059\r[4]。1.4研究内容本文的主要研究内容如下:(1)结合疫情防控需求,通过对不同的应用环境进行深入的探索,结合当下的疫情形势,并考虑到用户的实际需求,本文将系统细化成了两个主体:一个是面向学生的前置应用平台,另一个是面向管理员的后台管理平台。(2)为了提高系统的性能,本系统将采用前后端不同的开发技术,在前端使用Vue技术,在后端使用Java语言,通过将SpringMVC框架,MyBatis,SpringBoot等多种方法有机地融合在一起,以提升系统性能。这样,既能确保系统的安全性,又能更好的满足用户的需要。(3)通过对SpringBoot进行深入探索,可以有效地改善微服务框架,它可以迅速地部署各种单独的微服务,并且可以把整个系统划分成若干小模块,从而减少了相互之间的干扰,大大提升了系统的性能,并且可以在未来进行进一步的拓展,最终实现对相关信息的集成与管理。(4)研究数据库相关知识,选择MySQL作为主要的数据库,提高查询和存储速度,从而在一定程度上缓解并发带来的卡顿现象。(5)在完成系统的开发之后,应当使用IDEA工具对系统的各个模块进行全面的测试,以确保后端接口的准确性和可靠性。1.5论文组织架构本篇论文中,其各个章节的内容阐述如下:第1章:剖析开发系统所处的背景、目的以及其开发意义,同时也比较了国内外相关研究的发展情况,并对研究内容进行说明。第2章:讨论分析实现校园疫情防控管理系统所需的主要理论及技术。第3章:通过对可行性、需求、运行流程等方面进行分析,对所要研发的校园疫情防控管理系统有全面的了解。第4章:借助功能模块设计和数据库设计,对校园疫情防控管理系统软件进行总体设计。第5章:概括实现系统所需的环境及相关工具,并展示系统中每个模块的功能是如何实现的。第6章:对校园疫情防控管理系统软件的部分模块的功能进行了测试,并展示相关测试结果。结论:对设计与开发校园疫情防控管理系统过程进行总结,并对今后的发展进行展望。

第2章相关理论和技术2.1Java简介Java作为一种高效的、面向对象的编程语言,因其高度的灵活性、高度的稳定性、高度的扩展性以及其支持各种不同的操作系统,在各种不同的环境中都表现出色。Java已经成为当今世界上最前沿、最实用、功能最完善的计算机语言REF_Ref1120\r[5],拥有无限的发展潜力。在移动电话、科学超级计算机、PC和互联网等领域都得到了广泛的应用。2.2MySQL特点MySQL是一个强大的关联型数据库,它能够跨越多种操作系统,包括Solaris、MacOS、FreeBSD、Windows、Linux等,为用户提供更加便捷的服务。该系统的核心任务是收集和分析信息REF_Ref15939\r[6],并且还可以将这些信息存储在内部。2.3MVC模式MVC模式是一种广泛应用于软件开发的架构模式,通过将软件按功能和性能结合,划分为三个基本组成部分:模型、视图和控制器REF_Ref16017\r[7]。可以有效地把多个功能整合在一起,无需再次构建复杂的代码,以提升用户的体验,缩短了编程周期,提高代码的可重复利用率。MVC模式的流程如下:首先,用户通过视图层向服务器发出请求,在服务器中,控制器接受请求,同时调用相应的模型层处理请求,请求处理完成后,将结果返回给控制器,然后再将结果传送到视图层,经过渲染后反馈给用户REF_Ref16115\r[8]。2.4Vue技术Vue是一种具有渐进式特征的构建用户界面的框架,其采用自下而上增量开发的设计。Vue简单易用,能够将新的项目与现有的项目进行联接整合;同时也可以与各式各样的现代工具链或多种支持类的库进行结合使用,为复杂的页面应用提供推动力,从而实现更高效、更灵活的操作。

第3章系统分析3.1可行性分析3.1.1技术可行性以Java为基础,构建了一个校园疫情防控管理系统,该系统的开发思路采用了MVC设计模式,具有耦合性低、视图层和业务层分离的特点。以Windows工具为开发系统,所使用的语言为Java语言,系统后台数据库使用MySQL数据库,在开发过程中,主要以SpringBoot框架为基础,用IDEA平台亦是因其操作简单,相关开发工具较多。3.1.2经济可行性经济可行性考虑的是发展过程中的经济预算。整个发展过程的开支都有明确的文件记录,符合发展过程的要求。经济可行性所考虑的包括系统开发前的需求和系统开发后的需求。经过多方研究设计所得出的结论,证明设计开发此类校园管理系统在经济上是可行的。3.1.3操作可行性对于学生与管理员来说,该系统界面友好,易于使用。学生可以通过填写表格来提交学校管理所需的信息,而管理员也可以对这些信息进行审核和管理,以确保信息的实时性和完整性。对于不同的用户有不同的操作权限。基于以上内容考虑,最终可以确认其操作性的可行性。3.1.4法律可行性在法律上,整个开发工作都是合法的,所有相关技术资料都是合法获得的。既没有知识产权方面的问题,也没有抄袭任何网站或侵犯任何网站的版权。此外,整个开发工作完全来自于个人劳动,不涉及任何法律责任。

3.2需求分析完善的需求分析,可以在运行系统功能时设计需要什么和不需要什么的方面提供相关信息,以尽可能避免出现简单错误,提高软件生产效率,减低成本并提高质量。3.2.1功能需求分析在基于Java的校园疫情防控管理系统当中,其拥有不同的面向对象,包括学生用户对象和管理员用户对象两个方面,二者所需功能如下所示:1.学生用户(1)注册登录模块:学生注册完成个人信息后可登录进入系统。(2)疫情公告模块:学生可以查看后台管理员发送的公告咨询和疫情小知识等。(3)学生请假模块:学生向后台管理员发送请假请求并查看结果。(4)核酸预约模块:学生对做核酸检测进行预约并查看预约结果。(5)健康上报管理模块:学生每日上报个人健康信息。(6)自动定位模块:学生自动定位当前所在的地点。(7)交流论坛模块:学生进行沟通交流,发帖留言。学生用户用例图如图3.1所示:图3.1学生用户用例图2.管理员用户(1)注册登录模块:通过登录注册,管理员用户可以进入到管理系统。(2)用户管理模块:通过添加、删除和其他操作,可以实现对现有用户信息进行管理。(3)疫情公告管理模块:包括对公告咨询和疫情小知识等内容的管理。(4)学生请假管理模块:对学生发出的请假请求进行审核处理。(5)核酸预约管理模块:对学生发出的核酸检测预约申请进行处理,及时发布合适的核酸检测监测站点。(6)健康上报管理模块:管理学生所上报的相关健康信息。(7)交流论坛管理模块:对相关公告谈论区进行维护,以确保论坛环境风清气正。管理员用例图如图3.2所示:图3.2管理员用户用例图3.2.2性能需求分析(1)并发性。由于学校的规模庞大,可能会出现短时间内大量的学生同时应用系统,因此应该采取有效措施来维持并发访问时系统的稳定与流畅。(2)实时性。该系统能够实时收集学生的健康状况和疫情信息,并且能够根据需要制定相关规定,来保证对所需数据的更新。(3)界面友好性。系统分为前台学生界面和后台管理员界面,界面设计简约规范,文字指引性强,不同的用户对象都有良好的体验。(4)安全性。为了确保安全性,系统在访问数据库时,会通过严格的配置措施来防止SOL注入,以防止用户数据泄露。

3.3流程分析3.3.1数据流程分析本系统登录界面一共有两种,一种提供给用户,另一种提供给管理员。但无论哪一种,登陆系统都需要检测账号密码是否正确,正确则赋予相应权限,成功进入,否则报错,需重新输入REF_Ref16206\r[9]。登录流程图如图3.3所示:图3.3登录流程图

3.3.2业务流程分析学生登陆系统后,根据自身需要可以申请核酸检测,选择合适的检测站点,提交预约时间、预约详情等相关信息,提交申请到系统内等待管理员审核REF_Ref16324\r[10]。管理员审核通过学生可以前往进行核酸检测,如审核不通过,用户需要重新提交申请。申请检测流程图如图3.4所示:图3.4申请检测业务流程图

第4章系统设计4.1功能模块设计通过对不同用户对象所需要的功能进行分析,本校园疫情防控管理系统具有的功能模块包括以下种类:注册登录管理模块、用户信息管理模块、疫情公告管理模块、学生请假管理模块、核酸预约管理模块、健康上报管理模块、自动定位管理模块、交流论坛管理模块。系统的功能模块如图4.1所示:图4.1系统功能模块图4.2数据库设计4.2.1数据库概念结构设计数据库的概念结构设计是指将通过需求分析所得到的关于学生与管理员的需求信息抽象为概念模型的过程,合理运用概念模型能充分的反映事物与事物之间的联系,满足用户对数据的处理要求REF_Ref16409\r[11]。同时该设计也方便和不熟悉计算机的用户交换信息,以完善需求分析。其中E-R图便是描述概念模型最有力的工具。其中各部分信息实体图如图4.2-4.6所示:(1)学生信息实体,包括学号、密码、姓名、性别、头像、联系电话。如图4.2所示:图4.2学生信息实体图(2)管理员实体,包括管理员名、密码、角色。如图4.3所示:图4.3管理员实体图(3)公告信息实体,包括标题、简介、图片、内容。如图4.4所示:图4.4公告信息实体图(4)交流论坛实体,包括帖子标题、帖子内容、父节点id、用户id、用户名、头像、状态。如图4.5所示:图4.5交流论坛实体图(5)学生信息与请假信息实体、健康上报信息实体、核酸预约信息实体、核酸检测站点实体之间的关系如下所示:学生与请假信息、健康上报信息、核酸预约信息实、核酸检测站点之间的对应关系都是一对多的关系。请假信息实体,包括申请编号、请假标题、请假类型、请假时间、请假天数、请假事由、是否审核、审核回复。健康上报信息实体,包括上报编号、打卡时间、是否去中高风险地区、体温、健康状态、核酸状态、健康码、行动轨迹、是否审核、审核回复。核酸预约信息实体,包括预约编号、预约时间、预约详情、是否审核、审核回复。核酸检测站点实体,包括站点编号、站点名称、封面图片、站点位置、服务时段、站点详情。其中系统局部E-R图如下图4.6所示:图4.6系统局部E-R图4.2.2数据库逻辑结构设计在数据库逻辑结构设计中,设计的目标是将E-R图从抽象的概念框架转变成实际的逻辑架构。在概念设计的基础上,进一步确定数据库中的实体、属性、关系、主键等细节与实体之间的关系。校园疫情防控管理系统如表4.1-4.8所示。(1)学生表xuesheng“学生表”是用来记录学生的信息。xuesheng的结构如表4.1所示。表4.1学生表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPxuehaovarchar40学号mimavarchar50密码xingmingvarchar40姓名xingbievarchar10性别touxianglongtext4294967295头像lianxidianhuavarchar30联系电话(2)管理员表users“管理员表”是用来记录管理员的信息。users的结构如表4.2所示。表4.2管理员表字段名称类型长度字段说明主键默认值idbigint主键主键usernamevarchar40管理员名passwordvarchar50密码rolevarchar40角色管理员addtimetimestamp创建时间CURRENT_TIMESTAMP(3)公告信息表news公告信息表的结构如表4.3所示,该表可以用来表示公告信息所需各类信息需求。表4.3公告信息表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPtitlevarchar60标题introductionlongtext4294967295简介picturelongtext4294967295图片contentlongtext4294967295内容(4)交流论坛表forum交流论坛表的结构如表4.4所示,该表可以用来表示交流论坛模块的各类信息需求。表4.4交流论坛表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPtitlevarchar60帖子标题contentlongtext4294967295帖子内容parentidbigint父节点iduseridbigint用户idusernamevarchar40用户名avatarurllongtext4294967295头像isdonevarchar200状态(5)请假信息表qingjiaxinxi请假信息结构如表4.5所示,该表可以用来表示请假申请所需各类信息。

表4.5请假信息表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPshenqingbianhaovarchar200申请编号qingjiabiaotivarchar60请假标题qingjialeixingvarchar200请假类型qingjiashijiandatetime请假时间qingjiatianshuvarchar200请假天数qingjiashiyoulongtext4294967295请假事由xuehaovarchar40学号xingmingvarchar40姓名sfshvarchar200是否审核待审核shhflongtext4294967295审核回复(6)健康上报表jiankangshangbao“健康上报表”是用来记录学生上报的健康信息。jiankangshangbao的结构如表4.6所示。表4.6健康上报表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPshangbaobianhaovarchar200上报编号xuehaovarchar40学号xingmingvarchar40姓名续表4.6健康上报表字段名称类型长度字段说明主键默认值dakashijiandatetime打卡时间shifouquzhonggaofengxiandiquvarchar200是否去中高风险地区tiwenvarchar100体温jiankangzhuangtaivarchar200健康状态hesuanzhuangtaivarchar100核酸状态jiankangmalongtext4294967295健康码xingdongguijilongtext4294967295行动轨迹sfshvarchar200是否审核待审核shhflongtext4294967295审核回复(7)核酸预约表hesuanyuyue请核酸预约信息结构如表4.7所示,该表可以用来表示申请核酸检测预约所需信息。表4.7核酸预约表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPyuyuebianhaovarchar200预约编号zhandianmingchengvarchar200站点名称yuyueshijiandatetime预约时间yuyuexiangqinglongtext4294967295预约详情xuehaovarchar40学号xingmingvarchar40姓名sfshvarchar200是否审核待审核shhflongtext4294967295审核回复(8)核酸检测站点表hesuanjiancezhandian“核酸检测站点表”是用来记录学生的核酸检测结构的信息。hesuanjiancezhandian的结构如表4.8所示。表4.8核酸检测站点表字段名称类型长度字段说明主键默认值idbigint主键主键addtimetimestamp创建时间CURRENT_TIMESTAMPzhandianbianhaovarchar200站点编号zhandianmingchengvarchar200站点名称fengmianlongtext4294967295封面照片zhandianweizhivarchar200站点位置fuwushiduanvarchar200服务时段zhandianxiangqinglongtext4294967295站点详情

系统实现5.1实现环境该系统设计中,采用Java作为开发语言;用SpringBoot框架;Java语言的软件开发工具包JDK为1.8版本;服务器为tomcat7;MySQL数据库为5.7版本。数据库工具为Navicat11;开发软件主要用IDEA平台,也用辅助使用eclipse、myeclipse工具;Maven包为Maven3.3.9;采用谷歌浏览器进行浏览。5.2注册登录管理模块5.2.1管理员注册登录若在登录界面,提示框显示“帐号或密码不正确”,意为输入的信息有问题。当管理员登陆后台管理系统的时候,只需要输入正确的帐号和密码,就可以进入后台管理主页。具体的登录界面如图5.1所示:图5.1登录界面管理员输入账号和密码,并选择登录角色,点击“登录”,就可以进入系统的首页,这表明管理员用户已经成功登录REF_Ref16504\r[12]。管理员登录成功界面如图5.2所示:图5.2管理员登录成功界面实现该功能的关键代码如下:@IgnoreAuth@PostMapping(value="/login")publicRlogin(Stringusername,Stringpassword,Stringcaptcha,HttpServletRequestrequest){UsersEntityuser=userService.selectOne(newEntityWrapper<UsersEntity>().eq("username",username));if(user==null||!user.getPassword().equals(password)){returnR.error("账号或密码不正确");}Stringtoken=tokenService.generateToken(user.getId(),username,"users",user.getRole());returnR.ok().put("token",token);}5.2.2学生用户注册登陆若学生为首次进入系统,在点击个人中心时会自动跳转到用户登录注册界面,学生注册需要输入学号、姓名、密码、姓名、手机号码等信息,点击注册,出现注册成功提示,即表示注册成功,否则注册失败REF_Ref16504\r[12]。学生用户注册成功界面如图5.3所示:图5.3学生用户注册成功界面如果学生用户在注册的时候,提示“注册用户已存在”,则说明该用户已经完成了注册,无法再次进行注册。其界面如图5.4所示:图5.4重复注册失败界面当学生尝试登录操作时,其需要输入账号和密码,并选择用户角色,然后单击“登录”按钮,提示框会有“登录成功”的提示,系统会自动跳转到登录界面,如果没有输入用户名或密码,登录将会失败,提示框会有“请输入用户名或密码”REF_Ref16504\r[12]。登录成功后,用户可以看到如图5.5所示的界面:图5.5用户登录成功界面实现该功能的关键代码如下:@IgnoreAuth@RequestMapping("/register")publicRregister(@RequestBodyXueshengEntityxuesheng){//ValidatorUtils.validateEntity(xuesheng);XueshengEntityu=xueshengService.selectOne(newEntityWrapper<XueshengEntity>().eq("xuehao",xuesheng.getXuehao()));if(u!=null){returnR.error("注册用户已存在");}LonguId=newDate().getTime();xuesheng.setId(uId);xueshengService.insert(xuesheng);returnR.ok();}5.3用户信息管理模块以管理员的身份,登陆到后台管理系统中,进入到学生用户管理页面,可以对已注册该系统的学生展开管理,具体内容包括:添加信息,修改信息,删除信息。其中增加学生信息的功能如图5.6所示:图5.6增加学生信息界面增加成功,学生界面新增学生信息,操作成功界面如图5.7所示:图5.7增加学生信息成功界面当系统提示框显示“用户已存在”,意味重复添加同样的学生信息,因此无法继续添加。界面如图5.8所示:图5.8重复增加学生信息界面实现该功能的关键代码如下:@RequestMapping("/save")publicRsave(@RequestBodyXueshengEntityxuesheng,HttpServletRequestrequest){ xuesheng.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue()); //ValidatorUtils.validateEntity(xuesheng);XueshengEntityu=xueshengService.selectOne(newEntityWrapper<XueshengEntity>().eq("xuehao",xuesheng.getXuehao())); if(u!=null){ returnR.error("用户已存在"); }5.4疫情公告管理模块疫情公告模块包括公告咨询与疫情小知识,不同的发布界面发布不同类型的信息。5.4.1学生查找公告咨询以学生用户身份登录到系统中,点击进入公告咨询界面,如图5.9所示:图5.9公告资讯界面同学们可以在这个界面上管理员发布的公告消息等内容进行查找。如图5.10所示:图5.10查找公告咨询界面实现该功能的关键代码如下:@RequestMapping("/lists")publicRlist(NewsEntitynews){EntityWrapper<NewsEntity>ew=newEntityWrapper<NewsEntity>();ew.allEq(MPUtil.allEQMapPre(news,"news"));returnR.ok().put("data",newsService.selectListView(ew));}*查询@RequestMapping("/query")publicRquery(NewsEntitynews){EntityWrapper<NewsEntity>ew=newEntityWrapper<NewsEntity>();ew.allEq(MPUtil.allEQMapPre(news,"news"));NewsViewnewsView=newsService.selectView(ew);returnR.ok("查询公告资讯成功").put("data",newsView);}5.4.2管理员管理疫情公告信息管理员可以发布相关新闻及疫情期间的相关知识等方面的内容,让学生对疫情状况及疫情期间自我保护方面有所认识。其中疫情小知识管理界面如图5.11所示:图5.11疫情小知识管理界面对图5.11中编号为“8888888888”的疫情小知识公告的内容进行修改,界面如图5.12所示:图5.12疫情小知识修改界面对编号为“8888888888”疫情小知识修改后结果界面如图5.13所示:图5.13修改疫情小知识界面实现该功能的关键代码如下:修改@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyYiqingxiaozhishiEntityyiqingxiaozhishi,HttpServletRequestrequest){//ValidatorUtils.validateEntity(yiqingxiaozhishi);yiqingxiaozhishiService.updateById(yiqingxiaozhishi);//全部更新returnR.ok();}5.5学生请假管理模块以学生身份登录到系统中,点击进入请假管理界面,如图5.14所示:图5.14请假信息界面点击“新增”按钮,就会出现请假页面,学生可以在上面输入所需的个人资料,然后根据说明,提交的请假请求。如图5.15所示:图5.15请假申请界面管理员在请假申请界面进行审核,可以进行信息查询,如图5.16所示:图5.16请假申请查询界面实现该功能的关键代码如下:@RequestMapping("/query")publicRquery(QingjiaxinxiEntityqingjiaxinxi){EntityWrapper<QingjiaxinxiEntity>ew=newEntityWrapper<QingjiaxinxiEntity>();ew.allEq(MPUtil.allEQMapPre(qingjiaxinxi,"qingjiaxinxi"));QingjiaxinxiViewqingjiaxinxiView=qingjiaxinxiService.selectView(ew);returnR.ok("查询请假信息成功").put("data",qingjiaxinxiView);}管理员接受到信息后,对申请进行审核,如图5.17所示:图5.17管理员审核界面实现该功能的关键代码如下:@RequestMapping("/save")publicRsave(@RequestBodyQingjiaxinxiEntityqingjiaxinxi,HttpServletRequestrequest){ qingjiaxinxi.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue()); //ValidatorUtils.validateEntity(qingjiaxinxi);qingjiaxinxiService.insert(qingjiaxinxi);returnR.ok();}@RequestMapping("/add")publicRadd(@RequestBodyQingjiaxinxiEntityqingjiaxinxi,HttpServletRequestrequest){qingjiaxinxi.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue()); //ValidatorUtils.validateEntity(qingjiaxinxi);qingjiaxinxiService.insert(qingjiaxinxi);returnR.ok();}5.6核酸预约管理模块5.6.1管理员提供核酸站点管理员进入核酸检测界面在系统中添加合适的核酸站点,并及时剔除不合适的站点信息,其核酸检测界面如图5.18所示:图5.18核酸检测界面增加检测站点界面如图5.19所示:图5.19新增检测站点界面实现该功能的关键代码如下:@RequestMapping("/save")publicRsave(@RequestBodyHesuanjianceEntityhesuanjiance,HttpServletRequestrequest){hesuanjiance.setId(newDate().getTime()+newDouble(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(hesuanjiance);hesuanjianceService.insert(hesuanjiance);returnR.ok();}5.6.2学生进行核酸检测预约以学生身份登录到系统中,点击进入核酸检测界面,可以在此界面查看站点封面信息,如图5.20所示:图5.20核酸站点信息界面当学生想进行核酸检测的预约,点击进入站点页面如图5.21所示:图5.21核酸预约界面学生提交预约申请后,管理员会实时在系统核酸预约管理界面进行查询审核。如图5.22所示:图5.22管理员核酸预约管理界面实现该功能的关键代码如下:@RequestMapping("/query")publicRquery(HesuanyuyueEntityhesuanyuyue){EntityWrapper<HesuanyuyueEntity>ew=newEntityWrapper<HesuanyuyueEntity>(); ew.allEq(MPUtil.allEQMapPre(hesuanyuyue,"hesuanyuyue")); HesuanyuyueViewhesuanyuyueView=hesuanyuyueService.selectView(ew); returnR.ok("查询核酸预约成功").put("data",hesuanyuyueView);}5.7健康上报管理模块5.7.1学生健康上报以学生身份登录到健康上报系统中,可在此界面进行信息修改,如图5.23所示:

图5.23健康上报界面学生修改编号以205为结尾的健康上报信息,进入健康上报修改界面界面,如图5.24所示:图5.24修改上报信息界面学生对时间、体温、健康状态、核酸状态、地址等方面进行修改,修改后其健康上报信息界面图如图5.25所示:图5.25修改后健康上报界面图实现该功能的关键代码如下:修改@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyJiankangshangbaoEntityjiankangshangbao,HttpServletRequestrequest){//ValidatorUtils.validateEntity(jiankangshangbao);jiankangshangbaoService.updateById(jiankangshangbao);//全部更新returnR.ok();}删除@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){jiankangshangbaoService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}5.7.2自动定位数据以学生身份登录到系统中,进入健康上报界面,添加健康信息,点击地址栏,弹出地图,可以在此上报当前所在位置,如图5.26所示:图5.26地图定位界面图提交后返回健康上报界面,会看到所选定的地址定位如图5.27所示:图5.27提交信息后定位地址界面实现该功能的关键代码如下:vargeocoder=newAMap.Geocoder();geocoder.getAddress([event.lnglat.lng,event.lnglat.lat],function(status,result){if(status==='complete'&&result.regeocode){varformattedAddress=result.regeocode.formattedAddress;varaddressInput=document.getElementById('address-input');if(addressInput){addressInput.value=formattedAddress;functionclearMarker(){if(marker){marker.setMap(null);marker=null;5.7.3管理员管理健康上报信息管理员登录进入后台系统后,点击健康上报界面,可以在此界面对所上报的信息进行查询,审核。如图5.28所示:图5.28健康上报信息管理界面管理员可以对所需要查看的信息进行查询,如图5.29所示:图5.29查询结果界面实现该功能的关键代码如下:查询@RequestMapping("/query")publicRquery(JiankangshangbaoEntityjiankangshangbao){EntityWrapper<JiankangshangbaoEntity>ew=newEntityWrapper<JiankangshangbaoEntity>(); ew.allEq(MPUtil.allEQMapPre(jiankangshangbao,"jiankangshangbao")); JiankangshangbaoViewjiankangshangbaoView=jiankangshangbaoService.selectView(ew); returnR.ok("查询健康上报成功").put("data",jiankangshangbaoView);}5.8交流论坛管理模块5.8.1学生发帖交流以学生身份登录到系统中,在交流论坛界面进行查询与发帖子功能,如图5.30所示:图5.30交流论坛界面图学生可以发帖子进行讨论,其发帖界面如图5.31所示:图5.31发帖界面学生也可以对发布的帖子进行留言如图5.32所示:图5.32留言界面实现该功能的关键代码如下: @IgnoreAuth@RequestMapping("/list/{id}")publicRlist(@PathVariable("id")Stringid){ForumEntityforum=forumService.selectById(id);getChilds(forum);returnR.ok().put("data",forum);} privateForumEntitygetChilds(ForumEntityforum){List<ForumEntity>childs=newArrayList<ForumEntity>(); childs=forumService.selectList(newEntityWrapper<ForumEntity>().eq("parentid",forum.getId())); if(childs==null||childs.size()==0){ returnnull; }5.8.2管理员管理交流论坛以管理员身份登录到后台系统中,其交流论坛的管理界面如图5.33所示:图5.33管理员管理论坛界面图管理员可以对“疫情提示1”进行查找、删除、修改等操作,修改帖子状态如图5.34所示:图5.34修改帖子状态界面当管理员对帖子状态关闭后,学生系统上的帖子状态如图5.35所示:图5.35帖子状态关闭界面实现该功能的关键代码如下:修改@RequestMapping("/update")@TransactionalpublicRupdate(@RequestBodyForumEntityforum,HttpServletRequestrequest){//ValidatorUtils.validateEntity(forum);forumService.updateById(forum);//全部更新returnR.ok();}删除@RequestMapping("/delete")publicRdelete(@RequestBodyLong[]ids){forumService.deleteBatchIds(Arrays.asList(ids));returnR.ok();}

第6章系统测试设计好了每一个功能模块和前端运行界面之后,在系统正式使用之前,都需要一系列的功能、性能测试,以确保系统在正式使用之前,能够正常运行、稳定可靠。而系统在正式使用之前,可以通过校正、改进来提高系统的可靠性和稳定性。黑盒测试是测试系统整体功能的一种手段,该法常阈值分析。所谓阈值分析是在系统的输入和输出范围确定以后,从几种可能的操作中选择一个来进行测试,并根据该操作在系统中的影响程度来选择操作系统的阈值。系统错误经常发生在输入和输出值边界上,因此阈值分析进一步确定了系统的稳定性和可靠性,在确定输入和输出范围后选择操作系统阈值来测试系统REF_Ref2148\r[14]。6.1测试步骤与开发过程一样,测试期也必须分阶段实施,开始操作后的每一步都是前一步的延展。大程序通常由多个子程序组成,每个子程序由多个模块组成。因此,软件测试主要包括以下步骤:1.需求分析阶段:对系统的功能进行黑盒测试,以确定系统的功能是否与用户的要求相符合,以及系统的性能是否得到了充分的体现。2.设计测试阶段:对设计进行验证,包括验证设计的正确性和需求的满足程度。3.单元测试阶段:通过黑盒测试检验特定单元的输入和输出合规与否,以检查其完整性。4.集成测试阶段:通过对各模块和整体系统的相互关系进行检测;通过对各模块间接口的正确性等方面的测试,实现了黑盒的集成测试。5.系统测试阶段:黑盒测试用来测试系统是否符合需求,包括系统性能、安全性、易用性等方面。6.验收测试阶段:黑盒测试用来测试系统是否符合最终用户的需求。6.2测试用例6.2.1登录测试用例学生端的测试用例是按照学生用户的需求来设计的,它采用了黑盒测试的方法,因为篇幅的关系,这里选择了具有代表性的部分测试用例,如表6.1所示。

表6.1登录测试用例表测试编号测试目的操作步骤预期结果实际结果001登录测试输入正确的用户名和密码登录成功登录成功002登录测试输入错误的用户名登录失败登录失败003登录测试输入错误的的密码登录失败登录失败6.2.2核酸预约管理测试用例管理端在运行时要满足浏览器的运行需求,例如添加核酸预约信息测试、修改核酸预约测试、删除核酸预约测试等。本节根据管理端的各类模块进行测试,因考虑到本文篇幅有限,这里选择了具有代表性的部分测试用例,如表6.2所示。表6.2核酸预约管理测试用例表测试编号测试目的操作步骤预期结果实际结果001添加核酸预约人员信息测试在添加页面输入核酸预约信息,点击确认按钮添加成功添加成功002修改核酸预约人员信息测试在修改页面修改核酸预约信息,点击确认按钮修改成功修改成功003删除核酸预约人员信息测试在管理核酸预约信息页面,点击某一用户的删除按钮删除成功删除成功004查询核酸预约人员信息测试在管理核酸预约信息页面查询输入框输入要查询的用户名字,点击查询按钮查询成功查询成功6.2.3健康上报管理测试用例学生端提交健康上报信息表,管理员对提交的信息进行管理。这里选择了具有代表性的部分测试用例,如表6.3所示。表6.3健康数据上报管理测试用例表测试编号测试目的操作步骤预期结果实际结果001查询健康上报信息测试在健康上报界面查询输入框输入要查询的用户信息,点击查询按钮查询成功查询成功002删除健康上报信息测试在健康上报界面,点击某一用户的删除按钮删除成功删除成功003查看健康上报信息测试在健康上报界面,点击某一用户的详情按钮,查看详情查看成功查看成功004审核健康上报信息测试在审核状态栏选择“通过”提交成功提交成功6.3测试结论为使系统可以成功做出相关功能,故而进行了一系列测试。其结果表明,该系统无论是从功能上、使用上,抑或是其他方面,都能很好的把正确数据呈现给用户,基本上能得到预先设计的结果。

结论本篇论文先对疫情期间管理方式做了调查分析研究,包括且不限于各个行业所采取的管理方式、国内外研究发展、相关管理制度优缺点等,提出了基于Java的校园疫情防控管理系统。工作总结如下:(1)通过研究大量有关校园疫情防控管理系统的文献,深入了解国内外采取的有效措施,从而为校园疫情防控系统的设计提供有力的支持。(2)完整的评价与分析所用的技术在该系统的发展。在该系统中,应用MVC的设计模式,按照结构化编程的思路,对系统的各个阶段进行了具体的规划。同时,经过对系统问题的定义、可行性分析研究、需求分析评估、概要设计、详细设计和测试,对整个开发过程进行了全面而深入的描述。(3)通过对系统的功能进行详细的分析,可以清楚地看到它的优势:它不仅可以满足用户的信息管理、疫情公告发布、学生请假处理、核酸检测预约、健康报告上传、自动定位、交流论坛等多种需求,而且还拥有友好的界面、完善的功能,使得校园疫情管理变得更加有序、高效。(4)本系统尚有不足之处,包括未和医院核酸检测站点进行信息连接,故缺乏对核酸结果信息进行发布;缺乏对健康上报的信息自动的汇总整理等。因此在后续工作中,将逐步完善。

参考文献王凌燕,曹山峰,刘爱民.学校疫情防控管理系统的设计与实现[J].现代信息科技,2021,5(10):80-83.杨众.校园新冠肺炎防疫程序的设计与实现[J].计算机与网络.2020

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论