私信或留言即免费送开题报告和任务书(可指定任意题目)
目录
一、摘要
在如今社会上,关于信息上面的处理,没有任何一个企业或者个人会忽视,如何让信息急速传递,并且归档储存查询,采用之前的纸张记录模式已经不符合当前使用要求了。所以,对疾病防控信息管理的提升,也为了对疾病防控信息进行更好的维护,疾病防控综合系统的出现就变得水到渠成不可缺少。通过对疾病防控综合系统的开发,不仅仅可以学以致用,让学到的知识变成成果出现,也强化了知识记忆,扩大了知识储备,是提升自我的一种很好的方法。通过具体的开发,对整个软件开发的过程熟练掌握,不论是前期的设计,还是后续的编码测试,都有了很深刻的认知。
疾病防控综合系统通过MySQL数据库与Spring Boot框架进行开发,疾病防控综合系统能够实现出入记录管理,打卡管理,接种记录管理,核酸检测管理,社区疫情管理,物资申请管理,物资管理等功能。
通过疾病防控综合系统对相关信息的处理,让信息处理变的更加的系统,更加的规范,这是一个必然的结果。已经处理好的信息,不管是用来查找,还是分析,在效率上都会成倍的提高,让计算机变得更加符合生产需要,变成人们不可缺少的一种信息处理工具,实现了绿色办公,节省社会资源,为环境保护也做了力所能及的贡献。
关键字:疾病防控综合系统,接种记录,核酸检测,物资申请
二、相关技术
java、tomcat、mysql、spring、springBoot、mybatis、query、vue
三、系统设计
3.1 整体功能设计图
本系统主要是基于数据的增加,修改,删除等操作,使用者能够通过提前设定的登录功能进入指定的操作区,这里对使用者设计的功能进行结构展示。
管理员功能结构图的绘制结果见图4-1。管理员登录进入本系统操作的功能包括管理打卡信息,管理核酸检测,管理接种记录,管理物资,审核物资申请,管理出入记录,管理社区疫情等。
用户功能结构图的绘制结果见图4-2。用户登录进入本系统操作的功能包括查看出入记录,核酸检测,接种记录,管理打卡,申请物资等。
3.2 功能具体细节设计
1、管理员功能实现
核酸检测管理
管理员进入如图5-1所示的核酸检测管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成核酸检测信息的修改,删除等操作,管理员也能在当前界面查询核酸检测信息,添加核酸检测信息等。
接种记录管理
管理员进入如图5-2所示的接种记录管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成接种记录信息的修改,删除等操作,管理员在当前界面也能添加接种记录,查询接种记录。
物资管理
管理员进入如图5-3所示的物资管理界面之后,管理员点击信息显示栏中最右侧的修改,删除,增加库存,减少库存按钮可依次完成物资信息的修改,删除,增加库存,减少库存等操作。
物资申请管理
管理员进入如图5-4所示的物资申请管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成物资申请信息的修改,删除操作,管理员在本界面也能审核用户提交的物资申请信息。
出入记录管理
管理员进入如图5-5所示的出入记录管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成用户出入记录信息的修改,删除操作,管理员在本界面也能添加出入记录信息,查询出入记录信息等。
2、用户功能实现
打卡管理
用户进入如图5-6所示的打卡管理界面之后,用户点击信息显示栏右侧的删除按钮可以删除打卡信息,用户在本界面可以新增打卡信息,查询打卡信息等。
接种记录查看
用户进入如图5-7所示的接种记录查看界面之后,用户可以查看接种记录信息,可以查询接种记录信息等。
公告信息查看
用户进入如图5-8所示的公告信息查看界面之后,用户可以查询公告,鼠标点击公告标题可以查看公告的具体内容。
社区疫情情况
用户进入如图5-9所示的社区疫情情况界面之后,用户可以查询社区疫情情况信息,可以点击社区疫情情况的标题查看社区疫情情况的具体内容。
四、数据库设计
(1)使用Visio这样的常用的实体属性图绘制工具来绘制打卡实体属性图,绘制结果见图4-3。
(2)使用Visio这样的常用的实体属性图绘制工具来绘制接种记录实体属性图,绘制结果见图4-4。
(3)使用Visio这样的常用的实体属性图绘制工具来绘制物资实体属性图,绘制结果见图4-5。
(4)使用Visio这样的常用的实体属性图绘制工具来绘制用户实体属性图,绘制结果见图4-6。
五、核心代码
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id, HttpServletRequest request){
logger.debug("info方法:,,Controller:{},,id:{}",this.getClass().getName(),id);
ShigudengjiEntity shigudengji = shigudengjiService.selectById(id);
if(shigudengji !=null){
//entity转view
ShigudengjiView view = new ShigudengjiView();
BeanUtils.copyProperties( shigudengji , view );//把实体数据重构到view中
//级联表
YonghuEntity yonghu = yonghuService.selectById(shigudengji.getYonghuId());
if(yonghu != null){
BeanUtils.copyProperties( yonghu , view ,new String[]{ "id", "createTime", "insertTime", "updateTime"});//把级联的数据添加到view中,并排除id和创建时间字段
view.setYonghuId(yonghu.getId());
}
//级联表
YuangongEntity yuangong = yuangongService.selectById(shigudengji.getYuangongId());
if(yuangong != null){
BeanUtils.copyProperties( yuangong , view ,new String[]{ "id", "createTime", "insertTime", "updateTime"});//把级联的数据添加到view中,并排除id和创建时间字段
view.setYuangongId(yuangong.getId());
}
//修改对应字典表字段
dictionaryService.dictionaryConvert(view, request);
return R.ok().put("data", view);
}else {
return R.error(511,"查不到数据");
}
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody ShigudengjiEntity shigudengji, HttpServletRequest request){
logger.debug("save方法:,,Controller:{},,shigudengji:{}",this.getClass().getName(),shigudengji.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
if(StringUtil.isEmpty(role))
return R.error(511,"权限为空");
else if("员工".equals(role))
shigudengji.setYuangongId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
Wrapper<ShigudengjiEntity> queryWrapper = new EntityWrapper<ShigudengjiEntity>()
.eq("yonghu_id", shigudengji.getYonghuId())
.eq("yuangong_id", shigudengji.getYuangongId())
.eq("shigudengji_uuid_number", shigudengji.getShigudengjiUuidNumber())
.eq("shigudengji_name", shigudengji.getShigudengjiName())
.eq("shigudengji_types", shigudengji.getShigudengjiTypes())
.eq("zeren_types", shigudengji.getZerenTypes())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
ShigudengjiEntity shigudengjiEntity = shigudengjiService.selectOne(queryWrapper);
if(shigudengjiEntity==null){
shigudengji.setInsertTime(new Date());
shigudengji.setCreateTime(new Date());
shigudengjiService.insert(shigudengji);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
六、论文参考
七、源码获取
点赞、收藏、关注、评论啦。
联系即送开题报告和任务书,欢迎咨询
👇🏻获取联系方式在文章末尾👇🏻