基于uni-app的康养之家App的设计与实现

2023-06-10 07:33杨栋栋高凯赵骏祺陈彦如王良郭晶婧
电脑知识与技术 2023年12期

杨栋栋 高凯 赵骏祺 陈彦如 王良 郭晶婧

关键词:康复医疗;uni-app;前后端分离技术

中图分类号:TP311 文献标识码:A

文章编号:1009-3044(2023)12-0048-03

2021年国卫医发〔2021〕19号《关于印发加快推进康复医疗工作发展意见的通知》,文中提到康复医疗工作是卫生健康事业的重要组成部分。如何创新康复医疗模式,文中指出要积极推进社区、居家康复医疗。鼓励符合条件的康复医疗机构,把机构中心的康复医疗服务向社区、居家延伸。不断创新康复医疗服务方式,对急需康复医疗服务的重点群体开展居家康复医疗及康复指导等服务[1]。

为了积极响应国家对于康复人群线上康复、居家康复的鼓励政策,本项目设计开发了一款针对康复医疗人群专属的一个康养医疗App,“康养之家”App涵盖实时反馈、线上康复、问题咨询、专属医生线上指导、个性化康复训练计划、居家康复等多方面的服务,能够将医疗康复计划和视频等医疗康养资源很好地整合到一起,做到有效的管理,以及通过合理的算法将资源分配给合适的用户。

1 关键技术介绍

本项目采用前后端分离式设计开发与实现。前端部分的开发环境是HBuilder,采用了基于vue.js框架的uni-app框架,基础语言为html、css、JavaScript,开发过程中使用了vant-app 和uni-app 组件。采用Axios框架向后端发送异步交互请求,并利用vue.js对交互数据进行动态渲染。

后端部分开发环境是IDEA,采用基于SpringBoot的SSM三级架构模式。数据持久采用MyBatisX持久层框架,搭配MySQL模式,并在此基础上加入Redis非关系型数据库对部分数据在内存中进行临时缓存,用以减少IO次数,降低数据库压力。其中前后端交互采用Axios 框架进行异步交互,除此之外,后端Spring?Boot框架中还集成了Maven-editor、Pagehelper、Fileup?load、Jwt等组件,以提高后端的开发效率并实现功能的完整性。

2 项目需求分析

2.1 康复训练者需求

1) 用户可以通过“互联网+”、家庭病床、上门巡诊等方式实现居家康复训练。

2) 用户可以清晰地浏览专属于个人的康复训练计划,以便自己进行每天的康复训练。

3) 机构中心可以为用户配备专属的私人医生,持续跟进用户的康复训练成果及康复训练所处状态。

4) 当用户具有线下康复的条件时,用户可以就近方便地找到对自己最适合、最实用的康复医疗机构。

5) 用户能收藏自己喜欢的文章、视频,以便自己可以回看自己的浏览记录。

6) 当用户遇到康复训练方面的问题时,能够及时地询问医生,与医生沟通交流,及时解决存在的问题。

7) 用户可以和其他用户沟通交流,发布自己每天的康复训练成果,和他人讨论如何更加高效地进行康复训练。

2.2 医生需求

1) 医生能够实时了解到用户的康复训练进度,更了解用户目前所处于的康复状态。

2) 医生可以为用户制定属于用户个人的康复计划,达到康复计划能因人而异,满足每位用户最切实的需求。

3) 医生方便管理自己的用户,可以查看用户往期的就诊记录,以便于实时了解用户所处的康复状态。

3 系统功能模块设计与实现

“康养之家”App客户端可以在安卓、IOS等多终端适配。其中的信息是由后台管理系统负责,采用MySQL数据库。“康养之家”App操作主界面由“首页、线下康复、线上康复、我的”四大模块组成,具体情况如图1所示。

3.1 登录和首页

登录功能可以分别选择QQ、微信、微博三种登录方式。用户可以根据自己的需求选择适合自己的登录方式。

首页是用户进入软件的第一呈现的界面,通常具有“第一印象”效应[2]。该App的首页有八大功能点:

定位功能:页面的左上角会显示目前用户所在的城市名称。

搜索功能:在页面顶部的搜索栏中,用户可以结合自己的需求,进行关键字搜索,更快查询到自己需要的信息。

推荐功能:“康养之家”App后台系统会根据用户在App上所填写的资料和康复情况为用户推荐适合的康复视频和方法。

关注功能:用户可以对自己喜欢的医生进行关注,医生被关注之后,就可以在关注这一栏看到该医生,点击该医生即可更快地了解相关的动态信息。

社区功能:该模块提供讨论功能,康复朋友们可以在社区里面畅所欲言,发表自己在康复训练过程中遇到了哪些问题,自己如何去解决这些问题。用户之间的互相交流经验可以达到更快、更有效的康复训练效果。

商城功能:该模块里面有康复训练所使用的相关仪器和一些设备,所有商家和设备均需要通过国家标准质量审核才能上架该平台,旨在为用户提供便宜、安全的交易平台。

康复计划功能:系统后台管理者会在该模块上传一些特定的康复训练、康复指导等模板计划。

康復饮食功能:后台会根据用户目前所处的状态,实时更新,匹配推荐用户此时所需要的营养食物,用户可以浏览该界面,查看此时身体还需要补充哪些营养,以达到更有针对性、更有效的康复训练[3]。

3.2 线下康复

该模块会先对用户自身所在的位置进行定位功能,然后根据用户的地理位置信息,自动匹配出距离用户最近的所有正规康复医疗机构。页面展示了康复机构中心的简介,用户可以在手机上点击该医疗机构,获取该康复机构的地理位置、联系方式、预约咨询、营业时间、机构宗旨等详细资料,用户根据系统推荐选择适合的康复医疗机构进行康复训练指导。

3.3 线上康复

该模块会依据用户历史就诊记录、康复训练情况等信息,匹配展现出全国最优秀、用户好评最多、康复效果最好的线上康复机构课程。用户可以在该页面了解到线上康复机构的简介信息。用户可以点击进去获取线上康复机构的历史用户评价、课程简介、用户反馈评分等更详细的信息,以便于了解该线上康复课程是否满足自己的需求。当用户成功线上购买一个课程后。该课程就会出现在线上康复页面中的“我的”下面,下次想要进入自己购买的付费线上康复课程时,直接在该页面点击“我的”,付费课程就会直接展现出来。为用户提供一个更高效、更舒适、更方便的居家康复训练课程指导服务[4]。

3.4 我的用户中心

“我的用户中心”页面包括个人资料编辑、我的收藏、问题咨询、我的钱包、历史记录、康复计划、我的专属医生、客服与反馈和我的订单。“个人资料编辑”可以编辑自己的个人详细资料。在“我的收藏”中,用户可以查看到自己喜欢的康复医疗资源。用户也可以在问题咨询中寻找康复医生,咨询自身的康复训练情况。如果用户在线下康复医疗机构就诊过,那么该医院就会分配一个线下机构的医生作为该用户的专属居家康复医生,分配的康复医生会根据用户当前的康复情况为用户制定一系列针对性的康复计划,并最终在我的用户中心页面直观地呈现出来。用户也可以选择入驻我们平台的其他康复医生咨询。该页面也可以直接与自己的康复医生进行沟通交流,询问医生一些有关于康复训练的重要知识。如果用户对软件的使用方法、康复训练、如何进行线上线下康复等方面存有疑问,可以与“康养之家”的人工客服进行沟通交流反馈,帮助用户切实解决自身在现实生活中所遇到的问题[5]。

4 创新功能设计与实现

4.1 用户登录功能

用户登录模块是用户前台界面通过Axios框架发送异步请求至后端控制层中,该请求中携带的数据有账号和密码以及密钥。密钥主要依靠Token进行实现,验证Token时会经历以下步骤——通过接收来自前端请求中的账号和密码在后端加密并生成密钥,并将生成的Token返回至前端并进行存储。用户登录成功后便会携带后端唯一生成的密钥自由访问前端页面,如果该用户没有携带密钥或携带的密钥与后端生成的密钥不一致,即可说明该用户没有进行登录或该用户的登录状态异常,此时该用户没有权限访问某些页面并且该用户需要强制退回登录页面进行登录或注册。此方式旨在确保该用户在访问页面时处于登录状态并且确保请求的安全性和时效性。即如有第三方拦截请求并进行恶意修改后再提交,是无法通过验证的。除此之外还可以在后端设置Token的过期时间,这不仅确保了请求的安全性和时效性,也在一定程度上维护了用户的数据安全性和隐私性。其中后端采用HS256算法加密生成Token。

4.2 聊天、通话功能

用户和医生的手机分别是两个主机。通过Web?cam获取到攝像头拍摄的照片,由一个主机将图片发送到另一个主机,将图片合成为视频。其本质是从一个主机中录取图片,然后发送到另一个主机,然后另一个主机会将图片合成为视频,然后播放。语音通话使用jacob实现,从一个主机录取声音,通过网络传输到另一个主机,然后另一个主机播放录取的声音,在这个过程中由于发送文件的大小有限制,我们需要将大文件分切成多个小文件,编号之后发送,到了另一个主机之后再做顺序的拼接。

4.3 专属康复计划定制

专属康复计划的制定是由医生在后台管理系统中进行制定,并最终显示在用户的前端界面。需要说明的是:本软件分为用户移动端和医生使用的Web系统端。医生在Web后台系统端可以根据用户前端所提交的病情以及术后情况实时制定该用户专属的康复计划,该计划由医生手动输入以及制定,一经制定完成并发布后,该计划会发送并存储至与该医生相关联的用户端,用户后端会设置一个监听接口并在前端绑定监听事件,该康复计划制定完成后会向用户后端发送并存储,用户后端服务接收并存储后实时向前端接口发送,再由前端向后端发起查询,将查询结果渲染至用户界面的个人专属康复计划页面中。

4.4 医生推荐

该功能模块会根据用户的个人就诊资料、关键词等信息,通过模糊匹配和过滤算法推荐合适的医生,比如输入咳嗽关键词,就可以模糊定位治疗咳嗽的医生。还有通过哈希算法进行匹配,比如咳嗽、流鼻涕等都可以在常量的时间复杂度内定位到感冒。我们还设计了专门的过滤算法,比如关键词是新冠和流鼻涕,那么就不会优先定义到治疗感冒的医生,而是优先定义到治疗新冠的医生。

5 总结与展望

本项目所开发的“康养之家”App为了响应国家政策应运而生,紧跟国家政策的脚步,满足时代所需,切实解决了社会生活存在的现实问题。使用uniapp、idea、SpringBoot、SSM等主流框架开发工具,使其性能更加流畅、强大,且同时能够多平台兼顾使用。增强了软件的实用性及适用性。在国家政策大力支持的时代背景下,此App的实现具有必然性。

本软件现在仍处于开发阶段,后续还会不断地研发新的功能,进一步优化代码算法,让App在更多的医用场景中适用,使康复医疗用户和康复医疗机构达到互通互便。极大地满足了国卫医发文中提到的鼓励符合条件的康复医疗机构,通过“互联网+”,上门巡诊等方式,把康复医疗机构中心的康复医疗服务逐渐地向社区、居家延伸。

App开发成本低,简单快捷,且具有庞大的智能手机用户支持,设计开发成功后还可以一端多用,以达到软件的最大使用价值[6]。