77范文网 - 专业文章范例文档资料分享平台

基于5G网络和wifi的移动医疗物联网系统设计与测试(8)

来源:网络收集 时间:2019-03-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

Qq一八三二五九零八二七

图2.18 病人客户端数据请求流程

3.3.5 医生客户端的实现

从医生端功能模块分析中得出,医生端由平台登录模块、病人信息管理模块组成。

(1)医生端平台登录模块的实现

医生端平台登录模块由LoginController类来实现,它的主要功能是实现登录模块界面的UI布局和控件的触发相应操作。为了提供更好的用户体验效果,在设置好登录背景图片后,进行添加标题背景图片时,动画的展示方式是自下至上,然后以标题背景为设定,将之设置为动画效果;同时为视图设置委托,设定其重复次数。视图委托判断动画是否停止,如果停止则执行类成员函数:imgViewAnimationStop。[50]在自动登录和记住密码两个选项,由于iOS自带的控件中没有像windows中checkbox那样的控件,而自带的开关控件又感觉不理想,所以将是否登录和是否记住密码这两个设置成在不同的控制状态下显示不同的图片。

iOS系统上所提供的数据请求方式,分别为同步请求、异步请求、GET请求和POST请求。在本文的设计中,如果用户的系统登录没有成功,则系统与用户之间就不会产生交互动作;因此,本文在这里所采用的方式为将同步请求和POST请求进行结合。

由于登录界面的数据、用户名、密码等之类的数据比较简单,所以选择用ios中的轻量级本地数据存储方式存储是否登录和是否记住密码。如果用户选中自动

31

Qq一八三二五九零八二七 登录按钮,则用NSUserDefaults将自动登录和记住密码都设置成YES,反之则将自动登录按钮设置为NO。同样,是否记住密码也是采用这样的方式。

为了保证系统的安全性,在后台管理系统中,由系统管理员录入所有设备的UDID号。用户必须在连通内网,并且用户名、密码、UDID号同时匹配成功的前提下,用户才能登录成功。如图2.19所示。

图2.19 医生登录模块

(2)医生端功能模块的实现

在移动端,信息的获取,是通过调用服务器端接口来实现的。定义宏URL作为客户端访问服务器端的接口总地址。在以下的各个模块中,在总地址的基础上,加入相应的地址,来获取对应的信息。

当前比较流行的几种数据交换格式有XML、YAML、JSON。JSON作为一种轻量级的数据交换格式易于人阅读和编写,同时也易于机器解析和生成,相对XML和YAML具有更好的简单性和灵活性。在苹果iOSS及以上的操作系统版本中,系统自带了NSJSONSerialization类用来解析JSON数据,使得JSON解析成为大多数开发者的首选。在病人信息模块,用字典类型变量infoDic来保存解析后的数据。通过接口BaseUrl/GetDepartments_ List来获取所有科室信息,然后遍历每一个科室名称,如果该登录医生的科室名称在科室名称表中存在,那么就将该科室索引保存起来。通过医生用户名、科室编码、得到该医生所有病人信息。

[51]

将该科室该医生下所有病人的信息在UIConllectionView中显示,每条信息包

括姓名、性别、年龄、ID、费别。在类AppDelegate中,用全局变量patientID、patientNO、ksID、patientName分别来表示病人住院号、病人床位号、科室ID和

32

Qq一八三二五九零八二七 病人姓名。通过关键字,将每个索引下的对应值分别赋值给全局变量病人住院号、病人床位号、科室ID和病人姓名,以便得到每个病人的住院号、科室编码和姓名。

1、病人信息模块

病人信息模块中的数据是从服务器获取得到的。从服务器获取请求的方式有GET和POST两种方式。由于GET请求是将参数直接写在访问路径上,操作简单,很容易被外界获取,安全性不高,并且地址也最多只能有255字节;而post请求,将参数和地址分离开来,使参数写在body里面,这样不容易被外界捕获,安全性更高。所以,在获取病人信息模块的接口中采用POST请求。由于住院号是病人信息的主键,所以本文将住院号作为接口的参数,在调用接口时,通过传递住院号来获取该病人信息。[52]NSJSONSerialization是TOSS之后苹果提供的API,它是目前非常优秀的JS ON编码/解码框架,本文通过这个框架对JSON格式进行解码,得到字典类型数据_infoDic。如果infoDic不为空,通过遍历字典下的所有关键字,可以看到关键字如ZYH,NAME,SEX,AGE等,将这些关键字用NSARRAY类型的数组封装起来,通过关键字查找得到相应的字段信息。用UITableView控件来存放这些信息,并实现调用UITableView的reloadData来实现UITableView的数据源和委托方法。如果infoDic为空,则表明服务器或网络繁忙,读取数据失败。效果如图2.20所示。

图2.20 病人信息模块

33

Qq一八三二五九零八二七 2、信息诊断模块

与病人信息模块一样,诊断信息模块也是采用POST请求从服务器端获取数

据。

在病人诊断信息模块中,由于住院号是病人唯一的ID,所以,在获取病人诊断信息模块的接口中,本文将参数设为住院号。在调用接口时,通过传递住院号来获取该病人信息。对得到的数据,本文通过JSON解析,得到字典类型数据_infoDic。从解析后的字典数据中,可以看到关键字如MZZD、RYZD、ZYZD等,将这些关键字用NSARRAY类型的数组封装起来,通过关键字查找得到相

[53]应的字段信息。用UITableView控件来存放这些信息,并实现调用UITableView

的reloadData来实现UITableView的数据源和委托方法。如果infoDic为空,则表明服务器或网络繁忙,读取数据失败。

由于病人在住院之前,己经经过门诊诊断和入院诊断,而住院诊断、住院副诊断、出院诊断和医保诊断则是发生在住院期间或以后。基于这种情况,在诊断信息模块,将门诊诊断和入院诊断这两项设为只读;将住院诊断、住院副诊断、出院诊断、医保诊断设为可以修改的。单机这四项中的任一项所在行,就会弹出一个框,用来输入修改后的信息,并点击提交按钮,可以更新相应数据信息。效果图分别如图2.21和图2.22所示。

图2.21 诊断信息查询

34

Qq一八三二五九零八二七

图2.22 诊断信息修改

3、医嘱信息模块

医嘱是医生根据病人的病情和需要,对病人在饮食、生活、用药等方面所作出的指示。医嘱根据时效性来分,可以分为长期医嘱和临时医嘱。考虑到部分病人的医嘱信息量比较大,主治医生可能只需要查看病人的某种医嘱。为了更好的方便主治医生,本系统在医嘱信息模块,提供三个UIPickerView来供医生选择。将第一个拾取器的内容设置为当前和全部;将第二个拾取器的内容设置为全部、长期、临时;将第二个拾取器的内容设置为全部、药品、诊疗。当选择不同的拾取器时,表格视图中加载不同的内容。医嘱信息模块按照排列组合思想,一共可以查询十八种不同状态下的医嘱信息,这里可以选择全部医嘱信息、当前医嘱信息、当前全部用药、当前全部诊疗截图,其中全部医嘱信息和当前医嘱信息分别如图2.23和图2.24所示。

35

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于5G网络和wifi的移动医疗物联网系统设计与测试(8)在线全文阅读。

基于5G网络和wifi的移动医疗物联网系统设计与测试(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/542228.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: