受限场景下医疗物资管理系统的设计与实现
2024-05-13袁志成梁振周保琢
袁志成,梁振,周保琢
1. 安徽医科大学 生物医学工程学院,安徽 合肥 230000;2. 安徽省观智网芯电子科技有限公司,安徽 合肥 230000
引言
随着科技的进步、信息技术的迅猛发展,无论是企业还是医院都对物资的高效管理有着极其迫切的需求,虽然都通过引入物资管理系统开展信息化管理,但传统的医疗物资管理系统却无法满足受限场景下的医疗物资管理,不能直接在受限场景下进行使用。受限的、复杂的工作环境,例如“深海一号”石油工作站[1]、地底矿井[2-3]、远洋运输船、海底潜艇等,由于活动空间狭小、医疗物资难以及时得到补充、医疗物资存储和取用管理不便、医疗物资清点困难、工作保密性限制、弱网环境[4]限制、信息传输限制等导致受限环境下的医疗物资管理效率十分低下。
在受限环境下,对于医疗物资、医疗设备的管理极其不规范,导致医疗物资出现使用不充分、浪费的情况;同时,在急需使用某医疗物资时,无法第一时间获得该物资,浪费大量时间在寻找医疗物资上面,也会影响伤员的救治黄金时间。另外,由于工作环境限制,各相关部门无法及时了解工作环境中的医疗物资情况,无法及时采购补充所需医疗物资。为解决受限场景下医疗物资管理的难点,本研究拟设计一套受限场景下的医疗物资管理系统,以有效提高医疗物资的管理效率、提高医疗物资的快速响应能力,并实现受限场景下医疗物资全生命周期的数字化、规范化管理,消除医疗物资管理的信息孤岛问题。
1 系统设计
1.1 系统的需求分析和设计目标
目前,无论是地底矿井、深海石油工作站,还是海底潜艇、远洋运输船等受限工作环境,对于其内部医疗物资的管理手段都是相对落后的,管理模式信息化程度较低,缺少自动化的清点监控手段。针对受限场景下的医疗物资管理困难这一现状,本研究拟实现以下两个方面的建设目标:① 给受限工作环境下的工作人员提供快速、有效的医疗物资查询平台,帮助其以最短时间获取急需的医疗物资;② 给中央工作人员提供远程监控、远程辅助等功能,协助受限场景下医疗物资的管理,及时提供所需医疗补给。
系统的总体设计思路:基于物资管理系统、医疗物联网应用[5]、云边端技术和物联网技术[6],为受限场景下的医疗物资提供包括医疗物资采集、可视化展示、信息告警、远程管理、快速出入库等业务模块的一体化医疗物资智能管理系统。
受限场景下的医疗物资管理系统由两个系统模块组成:Web 端医疗物资管理系统和移动终端医疗物资管理系统。Web 端医疗物资管理系统采用B/S 架构,该系统主要给为受限场景提供后勤保障服务的人员使用,实时监控医疗物资的状态并根据监控信息为受限场景下的工作人员提供更加准确全面的便捷服务;移动终端医疗物资管理系统安装在手机、平板电脑等移动终端,采用C/S架构,该系统主要供受限场景下的工作人员使用,用来查询、取用、存储、清点、转移受限工作环境内的医疗物资。移动终端通过扫码的形式,识别医疗物资专属的二维码,从而对医疗物资进行业务操作。
1.2 系统开发工具与技术
受限场景下的医疗物资管理系统由于其工作场景和工作方式的特殊性,两个子系统采用不同的架构进行开发。
(1)Web 端医疗物资管理系统选择基于Windows操作系统和JAVA 平台进行开发,采用B/S 架构[7],使用前后端分离的方式,选用JavaEE 平台构建,基于Springboot+Vue 编程语言技术进行开发。
(2)移动终端医疗物资管理系统需要适配平板电脑、手机、手持个人数字助手(Personal Digital Assistant,PDA)等多类型、多种操作系统的移动终端,经研究分析,最终选择Flutter 技术进行开发。Flutter 是一种跨平台移动UI 框架,是主打跨平台、高性能、高保真等优势的物联网操作系统[8]。Flutter 可以帮助开发者通过一套代码库构建适用于移动、Web、桌面和嵌入式平台的精美应用。
1.3 系统架构
受限场景下医疗物资管理系统的系统架构图如图1所示,主要包括数据采集、基础设施层、数据层、通信层、系统组成和应用层。
图1 系统架构图注:UDP:用户数据报协议;PDA:个人数字助手。
1.3.1 数据采集
受限场景下的工作人员使用安装了移动终端医疗物资管理系统软件的手机、平板电脑、手持PDA 等设备,扫描医疗物资专属二维码,获取医疗物资的名称、分类、编号、所在位置、使用说明、入库时间、有效期等信息,并对物资进行业务操作,同时将相关信息保存至数据库。
1.3.2 基础设施层
系统主要包含负载均衡策略、断点续传、任务调度、操作系统、网络、信息安全、权限管理、日志等基础设施层保护机制,确保系统的稳定性。
1.3.3 数据层
针对网络无法保持实时畅通的弱网环境,为了确保数据的准确存储与传输,受限场景下医疗物资管理系统采用多数据库、多服务协同工作的方式,采用点对点通信模式、同步发送模式、异步发送模式、断点续传模式等多模式数据传输服务。Web 端医疗物资管理系统采用MySQL 数据库管理医疗物资数据,移动终端医疗物资管理系统采用MongoDB 数据库。为使两个系统数据库之间的数据稳定传输,采用MongoDB 数据库作为中间同步数据库,实时传输同步Web 端和移动终端数据库的数据。同步数据主要包括医疗物资数据、物资使用记录、储位信息数据、操作日志、受限环境内工作人员反馈信息等。
数据同步逻辑如图2 所示,移动终端医疗物资管理系统的同步通信模块读取MongoDB 数据库中相关需要同步数据对象表中待同步状态(sync_state=1)的数据记录,通过数据流化和用户数据报协议(User Datagram Protocol,UDP)通信发送到Web 端医疗物资管理系统的同步通信模块,Web 端将其结构化后,存储在MongoDB 同步数据库的syncAdmin 库中;对于由移动终端产生的数据对象,通过sync_from=ydzd 状态确认,Web 端医疗物资管理系统的同步通信模块读取MongoDB 同步数据库中需要同步数据对象表中待同步状态(sync_state=1)并且来源为移动终端(sync_from=ydzd)的数据记录,并将其发送到Web 端MySQL数据库中,然后更新同步数据库相关记录为同步完成状态(sync_state=3)。另外,所有需要同步的记录在数据库中通过全局唯一标识符确认其唯一性。Web 端向移动终端同步数据时,数据同步逻辑相同,仅在数据来源处有所差异,即sync_from=web。
图2 数据同步逻辑时序图
1.3.4 通信层
Web 端医疗物资管理系统支持采用WLAN 或Wi-Fi的通信方式直接在浏览器中访问服务器,进行数据访问以及业务数据的传输[9]。移动终端医疗物资管理系统支持采用无线或者有线局域网的通信方式,进行工作环境内的局域网组网,用于采集信息数据的传输,以及各移动终端间的数据同步。
Web 端医疗物资管理系统和移动终端医疗物资管理系统之间的通信方式为无线局域网下的UDP 通信。传输控制协议(Transmission Control Protocol,TCP)虽然是一种更安全、可靠的通信方式,但是在弱网环境下,TCP 的“三次握手”机制无法得到保障,因此选择无连接、操作简单的UDP 协议[10]。弱网环境下使用UDP 的无须响应即发送的机制,在两个子系统的数据同步通信模块增加持续多次发送功能,接收方只要有1 次接收到信息即可完成命令收取;同时在程序中增加处理逻辑,从而保证数据的完整性和安全性[11]。
1.3.5 系统组成
受限场景下的医疗物资管理系统由Web 端医疗物资管理系统和移动终端医疗物资管理系统两个子系统组成,在网络中断期间,两个子系统独立工作,互相不受影响。
两个子系统均设有数据同步通信模块,在独立运行期间以定时任务的形式工作,间隔固定时间自动启动,向对方发送连接请求。当网络环境允许时,两个子系统互相应答完成连接,从而完成两个子系统之间数据信息的通信。
1.3.6 应用层
Web 端医疗物资管理系统应用于Web 客户端,主要通过浏览器为用户提供医疗物资信息统计大屏、对医疗物资进行实时监控和管理,展示医疗物资的库存情况和变动情况;移动终端医疗物资管理系统用于移动客户端,主要通过移动设备安装的移动终端医疗物资管理系统为工作人员提供医疗物资查询、取用、转移、清点等业务功能。
2 系统功能设计与实现
受限场景下的医疗物资管理系统分为两个子系统实现物资管理功能,系统功能架构图如图3 所示。
图3 系统功能架构图
2.1 Web端医疗物资管理系统
Web 端医疗物资管理系统主要包括物资管理、基础信息管理、物资统计、系统管理等功能模块。
2.1.1 物资管理
物资管理模块负责医疗物资信息生命周期全流程的管理,包括医疗物资采集、入库、出库、查询、信息维护等功能。物资管理模块根据医疗物资(包括医疗药品、设备等)需求清单进行采购,并将医疗物资以新增的方式或者一键导入的方式存储在数据库中,完成物资入库,同时数据库记录物资入库时间、入库位置、物资状态等信息[12];将物资运输至受限工作环境时,在系统中查询并选择需要出库的医疗物资,进行出库操作,同时改变选择物资在数据库中的状态及位置信息,完成医疗物资出库;物资到达受限工作环境后,通过物资转移功能将医疗物资存放至指定位置。在医疗物资的整个生命周期过程中,支持通过物资名称、代号、类别、状态等信息查询医疗物资信息。物资管理模块中的物资管理功能界面如图4 所示,支持对医疗物资的查询、新增、编辑、导入导出以及超期警示功能。
布莱希特:在苏维埃曳引机的旁边,古代诗人的声音依旧动人。把不同的酒掺杂在一起,也许是错误;但是新旧的智慧,却能融会得很好。
图4 物资管理功能界面展示图
2.1.2 基础信息管理
基础信息管理模块负责对医疗物资支撑基础属性信息的管理,包括物资类别管理、储位信息管理、物资扩展信息、反馈信息管理等功能。基础信息管理模块需要实现对物资类别、储位信息、物资扩展信息进行新增、编辑、删除等功能,以辅助物资管理操作,为受限场景下的工作人员提供便捷,辅助其对医疗物资进行管理。
2.1.3 物资统计
物资统计模块主要是对医疗物资信息的实时统计以及可视化展示,包括医疗物资库存统计、物资超期统计与告警、物资消耗统计、存储区域物资统计等功能。物资统计模块从多维度统计医疗物资的实时情况,并以图表、统计图等形式展示。医疗物资库存统计以条形图的方式展示每个医疗物资的未使用、已使用、近期使用数量,并依次给出预计可使用天数,见图5。根据物资超期告警需求,物资超期统计与告警功能支持以表格和条形图的形式展示每个医疗物资的未使用、超期数量,并给出橙色告警提示功能,见图6。物资消耗统计以折线图的形式展示指定时间段内的各类物资消耗趋势及数量。存储区域物资统计支持展示各存储区域内的物资实况,方便对物资进行清点。
图5 物资库存统计-单个物资统计界面展示图
图6 物资超期统计与告警界面展示图
2.1.4 系统管理
系统管理模块负责对该系统的用户等系统信息的管理,包括用户管理、用户系统权限管理[13]、日志管理、定时任务管理、系统参数管理等功能。
2.2 移动终端医疗物资管理系统
移动终端医疗物资管理系统主要包括医疗物资查询、取用、转移、清点等功能模块。
2.2.1 物资查询
物资查询模块负责通过检索的方式快速获取物资的位置信息。物资查询方式包括按照物资分类查询、按照位置筛选查询、按关键词模糊/精准查询、语音查询等。
2.2.2 物资取用
物资取用模块实现医疗物资的快速取用以及医疗物资信息的实时更新。物资取用方式包括查询取用、扫码取用和批量取用,查询取用即查询到物资之后一键取用,扫码取用即扫描医疗物资专属二维码并一键取用。
2.2.3 物资转移
物资转移模块实现受限场景下医疗物资的位置转移以及信息实时更新。物资转移方式包括查询转移、扫码转移、批量转移。
2.2.4 物资清点
物资清点模块实现受限场景下医疗物资实况的清点与确认。物资清点方式包括按物资分类清点和按区域清点。
3 系统测试
为了验证系统的可行性、准确性等性能,模拟弱网环境,对Web 端医疗物资管理系统和移动终端医疗物资管理系统进行测试,主要是测试其相应功能在实际运行过程中是否具备较高的可靠性和稳定性、对于用户操作过程中能否根据要求正确完成响应的操作[14]。主要测试内容包括:① 通过系统单元测试、部件测试、配置项测试和压力测试,验证系统的可靠性、稳定性以及响应内容的准确性;② 在两个子系统中分别多次进行医疗物资管理操作,进行多次断网、联网重复性测试,经数据同步后验证数据传输的准确性;③ 模拟受限场景下医疗物资的取用流程,测试医疗物资在系统辅助下的快速响应情况。
3.1 测试环境
在第1 台计算机上安装Web 端医疗物资管理系统模拟中央环境,辅助受限场景下的医疗物资管理,并在该计算机上安装MySQL 数据库作为本地数据库、安装MongoDB 数据库作为同步数据库;在受限场景下的计算机上安装移动终端医疗物资管理系统和MongoDB 数据库,作为受限环境下的服务器,供移动设备连接通信,以及数据同步和存储的载体;在手机和平板电脑上安装移动终端医疗物资管理系统,进行受限场景下医疗物资的管理活动。
3.2 测试结果
3.2.1 系统稳定性、可靠性
使用有效类、无效类、功能划分、边界值等对该系统进行测试,针对涉及容错性设计的测试用例(如操作输入提醒、输入值正则检查、异常消息提示等)开展容错性测试;同时对系统的功能、性能、接口、人机交互、系统安装、安全性可靠性等进行测试,具体测试结果如表1 所示。经过单元测试、部件测试、配置项测试以及问题修复之后的回归测试,同时经过Web 端和移动端数据库间的数据传输压力测试(成功率均大于99%),综合表明,受限场景下的医疗物资管理系统的稳定性、可靠性及响应的内容已符合设计目标。
表1 系统稳定性、可靠性测试结果(个)
3.2.2 数据传输准确性
编写数据传输准确性测试的单元测试代码,在数据传输过程中,经多次断网、联网重复性测试,验证测试数据在两个子系统之间传输的准确性,最终得出两个子系统之间数据传输准确性为95%,基本符合设计需求。
3.2.3 医疗物资快速响应能力
模拟受限场景下医疗物资的取用测试,先后共进行20 次随机指定医疗物资取用任务,实验组为移动终端医疗物资管理系统使用者,对照组未使用移动终端物资管理系统。实验组均次取用医疗物资时间为(40.85±14.04)s,而对照组均次取用医疗物资时间为(115.00±35.70)s,且差异有统计学意义(t=8.61,P<0.001)。结合受限的工作环境,其取用医疗物资的时间会更长。
经过反复测试表明,两个子系统之间数据传输准确率和系统稳定性、移动终端医疗物资管理系统功能和快速响应能力均符合设计需求,受限场景下的医疗物资管理系统的功能符合设计目标。
4 讨论与总结
受限场景下的医疗物资管理系统基于物资管理系统和物联网移动终端数据处理技术设计实现,创新性地提出现代信息化技术手段与受限场景下医疗物资管理流程的有机结合。相较于现有医疗物资管理平台,如顾嘉等[15]的应急医疗物资信息化管理平台、黄伟航[16]的基于云计算的区域应急医疗物资保障信息管理平台,虽具有医疗物资快速响应能力,但无法适应弱网、空间狭小等受限环境;如钟杰[17]的矿山设备物资管理信息系统,在医疗物资快速响应能力方面略有不足。
受限场景下的医疗物资管理系统具备在弱网环境、复杂环境下对医疗物资进行高效、充分、精确化、可视化管理的能力。系统引入移动扫码技术,能够将物资生命周期中各个阶段的信息通过医疗物资专属识别码连接在一起,可以监测医疗物资使用全过程,摆脱了传统人工计数、清点等繁重工作[18],提高了物资快速响应能力,实现一键扫码快速出库。
受限场景下的医疗物资管理系统也存在不足之处,因Web 端医疗物资管理系统和移动终端医疗物资管理系统之间的数据传递是通过UDP 进行的,并不验证接收方是否接收到,所以在长距离传输或网络较差时很容易丢失数据包,尤其在传输大文件时[19]。另外,本系统的安全可控性还有待优化,希望将来本系统可以移植到信创系统中,进一步提高本软件系统的自主可控性。
受限场景下医疗物资管理系统的建设,旨在实现特殊、复杂环境下医疗物资在需求响应时具备快速的响应能力,物资管理现代化、信息化、数字化,对复杂工作环境下的整个医疗物资的综合管理发展有着积极的意义。