一.前言
随着全球老龄化趋势越来越明显,老年人的住行安全越来越受到人们关注,但传统的老年健康管理方式已经不能满足现代老年人的护理要求。那么充分融合信息技术的新型老人健康预警服务系统的解决方案被提出,在本老人健康预警微信小程序管理方面的可以有许多改进,如用户信息、老人管理、健康数据管理、定期反馈管理、用药备份管理、系统等的管理。实际上如今信息化成为一个未来的趋势或者可以说在当前信息化养老典范中,开发一个 老人健康预警微信小程序一方面的可能会更合乎时宜,另一方面来说也可以提高老人健康预警微信小程序管理的效率,给相关的工作人员的工作带来一定的便利。
💗博主介绍:✌全网粉丝10W+,CSDN全栈领域优质创作者,博客之星、掘金/华为云/阿里云等平台优质作者。
👇🏻 精彩专栏 推荐订阅👇🏻
计算机毕业设计精品项目案例-200套
🌟文末获取源码+数据库+文档🌟
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以和学长沟通,希望帮助更多的人
二.技术环境
jdk版本:1.8 及以上
ide工具:Eclipse或者 IDEA,微信小程序开发工具
数据库: mysql5.7 (必须5.7)
编程语言: Java
java框架:SpringBoot
maven: 3.6.1
详细技术:HTML+CSS+JAVA+SpringBoot+MYSQL+VUE+MAVEN+微信开发工具
三.功能设计
考虑到实际生活中在老人健康预警微信小程序管理方面的需要以及对该系统认真的分析,将系统权限分为管理员、老人用户、家人用户以及家庭医生四类,下面将主要说明管理员和老人用户所具备的功能模块。
(a) 管理员;管理员使用本系统涉到的功能主要有:个人中心、老人管理、健康数据管理、用药备份管理、定期反馈管理、系统管理等功能。管理员用例图如图3-1所示。
(b)用户进入系统前台可以实现首页、我的、健康数据、用药备份呢、健康报告、等功能。用户用例图如图3-2所示。
系统总体功能结构图如下所示:
四.数据设计
开发一个系统也需要提前设计数据库。这里的数据库是相关数据的集合,存储在一起的这些数据也是按照一定的组织方式进行的。目前,数据库能够服务于多种应用程序,则是源于它存储方式最佳,具备数据冗余率低的优势。虽然数据库为程序提供信息存储服务,但它与程序之间也可以保持较高的独立性。总而言之,数据库经历了很长一段时间的发展,从最初的不为人知,到现在的人尽皆知,其相关技术也越发成熟,同时也拥有着坚实的理论基础。本系统主要实体属性图如下所示:
五.部分效果展示
5.1小程序端实现效果
用户登录,用户进入小程序,输入自己的账号和密码,并选择对应的角色进行系统登录操作,如图5-1所示。
用户登陆系统后,可以对首页、家庭医生、我的等内容进行详细操作,如图5-2所示。
老人用户进入我的页面可以对家庭医生、我的等功能进行相应操作,如图5-3所示。
家人用户进入我的页面多了个家人咨询功能操作,如下图所示。
5.2后台管理端实现效果
5.2.1 定期反馈管理
管理员登录系统之后,查看后端管理界面,可以选择定期反馈管理信息,点击之后,网站会获取数据库查询的所有的定期反馈的信息,选择某个定期反馈信息并将此的信息返回给详情界面的微信小程序,展示和渲染出来。然后对定期反馈的信息进行增删改查等操作。实现效果如下图所示。
5.2.2 绑定医生管理
家庭医生以及管理员都能够查询老人绑定的医生相关信息,包括了老人住址、老人姓名、手机号码、绑定时间、医生姓名等信息,实现效果如下图所示:
5.2.3 就医备份管理
5.2.4 健康数据管理
5.2.5 老人咨询管理
六.论文截图
七.部分功能代码
/**
* 登录
*/
@IgnoreAuth
@PostMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
UsersEntity user = userService.selectOne(new EntityWrapper<UsersEntity>().eq("username", username));
if(user==null || !user.getPassword().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
return R.ok().put("token", token);
}
/**
* 下载文件
*/
@IgnoreAuth
@RequestMapping("/download")
public ResponseEntity<byte[]> download(@RequestParam String fileName) {
try {
File path = new File(ResourceUtils.getURL("classpath:static").getPath());
if(!path.exists()) {
path = new File("");
}
File upload = new File(path.getAbsolutePath(),"/upload/");
if(!upload.exists()) {
upload.mkdirs();
}
File file = new File(upload.getAbsolutePath()+"/"+fileName);
if(file.exists()){
/*if(!fileService.canRead(file, SessionManager.getSessionUser())){
getResponse().sendError(403);
}*/
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
headers.setContentDispositionFormData("attachment", fileName);
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers, HttpStatus.CREATED);
}
} catch (IOException e) {
e.printStackTrace();
}
return new ResponseEntity<byte[]>(HttpStatus.INTERNAL_SERVER_ERROR);
}