APP下载

基于二维码技术的健康证管理信息系统设计与实现

2015-03-13

医学信息学杂志 2015年8期
关键词:子系统客户端二维码

赵 一 李 凤

(西安市疾病预防控制中心 西安 710054)



•医学信息技术•

基于二维码技术的健康证管理信息系统设计与实现

赵 一 李 凤

(西安市疾病预防控制中心 西安 710054)

在分析西安市服务行业从业人员健康证发放管理工作存在问题的基础上,指出引入信息化手段辅助管理健康证数据的必要性,提出采用二维码技术的管理系统对健康证信息进行管理的方案,就该系统设计与实现进行详细描述。

二维码;健康证;管理信息系统

1 引言

随着现代科学技术的不断发展,人类社会逐渐迈入信息化时代,信息技术的各类应用也逐步成熟起来。一个符合自身特点的管理信息系统能以更高的效率把管理内容有机地组织起来,完成数据处理、统计预测、计划控制、辅助决策等工作内容[1]。安全、适用、先进的健康管理信息系统是实现现代化从业人员健康数据管理和信息服务的必要基础和前提条件。目前,西安市从业人员健康证管理体系还是以手工化为主,已经无法满足当前工作中要求的机构检验数据共享、健康证在线真伪查询、区域数据统计分析等要求[2],存在诸多弊端。如健康证采用普通纸质介质,制造的技术和成本不高,导致假证泛滥,监管部门不得不花费大量人力物力用于健康证的防伪、查伪[3];由于各个管理部门之间没有把从业人员的健康信息数据共享,从业人员更换就业区域或者健康证遗失、损坏,就不得不在有效期内重复办理,付出高额的时间和金钱成本。因此迫切需要通过信息化的手段来进行辅助管理[4]。

二维码技术作为一种新型的信息存取技术,可以在一个有限的区域内容纳大量的信息,且可以和现有移动互联及物联网等新兴技术紧密结合,在一些大型管理信息系统中已经崭露头角。本文开发一个基于二维码技术的健康证管理信息系统,利用二维码技术,配合相应的信息管理平台,通过安卓手机完成健康证的查验,解决西安市健康证管理中存在的诸多问题,降低整个健康证管理过程的人力、财力、时间成本[5]。

2 系统设计

2.1 框架设计

基于二维码技术的健康证管理信息系统由3个子系统构成: (1)健康证查验子系统,为监督执法用户提供便捷的健康证查验功能。(2)健康数据管理子系统,用于体检发证用户及卫生行政部门对健康体检数据进行管理。(3)Web服务子系统,用于持证用户查询打印纸质健康证明及体检预约。其中健康数据管理子系统与Web服务子系统采用B/S架构,服务端使用Jave Web(JSP、Servlet、Struts、AJAX)技术进行开发,数据库采用Oracle11g;健康证查验子系统采用C/S架构,客户端运行在Android 4.1操作系统中,服务端采用Web Service提供网络数据服务。体检发证机构通过浏览器访问健康数据管理子系统,进行健康体检数据的录入以及健康证的生成与管理;监督执法用户通过安卓手机客户端扫描二维码查验健康证;持证从业人员通过浏览器访问查询服务器,打印含有二维码的纸质健康证;主服务器定时向查询服务器推送数据[6-8]。系统业务框架[9],见图1。

2.2 功能模块

2.2.1 健康数据管理子系统 整个系统的核心部分,所有从业人员的个人信息与健康证明发放信息都要通过该子系统录入到数据库中;同时,所有系统用户的管理也都通过该子系统完成。该子系统的用户群体为体检发证机构、卫生行政管理部门以及系统管理人员,这些用户的办公地点相对固定,因此该子系统采用B/S架构进行设计,用户使用个人计算机通过网页浏览器即可访问系统。健康数据管理子系统由用户登录模块、用户管理模块、体检数据录入模块、健康证明管理模块、日志管理模块、统计分析模块、数据交换模块共7个模块构成[10-11]。

图1 系统业务框架

2.2.2 健康证查验子系统 为监督执法机构提供快捷的健康证查验功能而设计。该子系统采用C/S架构,客户端的主要功能包括:接收用户登录验证信息,二维码扫码查验,手动录入查验,查验记录管理;服务端的主要功能包括:对客户端传来的用户验证信息进行验证并返回验证结果,连接健康数据管理数据库处理客户端传来的查询请求并返回查询结果,对客户端的查询动作进行记录。

2.2.3 Web服务子系统 主要功能是为服务行业从业人员(以下简称从业人员)提供纸质健康证明的网上查询、打印功能;同时,为了方便从业人员安排时间,合理分流体检机构的体检人群,在Web服务子系统中还提供健康体检的预约功能。系统整体功能模块设计,见图2。

图2 系统功能模块

2.3 系统数据库设计

2.3.1 实体属性分析[12](1)体检机构{机构编号、机构名称、地址、联系电话、负责人}。(2)体检数据录入人员{用户ID、用户姓名、用户角色、所属机构、联系方式}。(3)监督执法机构用户{用户ID、用户姓名、用户单位、用户手机ID、联系方式}。(4)持证从业人员{姓名、身份证号}。(5)健康体检数据{体检人员姓名、性别、年龄、工作岗位、体检结果(合格/不合格)、身份证号、体检机构、体检时间}。(6)数字健康证{证件编号、持证人姓名、性别、年龄、工种、发证日期、体检单位、二维码}。(7)预约体检信息{预约编号、体检人员姓名、性别、年龄、工作岗位、身份证号、照片、预约时间}。

2.3.2 部分实体之间的关系 (1)一个体检机构内有多个体检数据录入人员,一个体检录入人员只能属于一家体检机构。(2)一个体检录入人员可输入且仅能输入所属体检机构的多条体检数据。(3)一条体检数据对应一个数字健康证。(4)一个从业人员在一个证件有效期内只有一条有效体检数据。(5)监督执法机构用户可查询所有的数字健康证信息。通过分析实体间的关系,绘制系统E-R图[13],见图3。

图3 系统E-R图

3 系统实现

3.1 健康数据管理子系统的实现(图4)

图4 健康数据管理子系统工作流程

3.1.1 健康数据录入模块的实现 用于体检发证机构将用户所在机构完成的从业人员健康体检信息录入本系统中。该模块包含数据录入与数据审核两个工作步骤。其中,数据录入部分包括:(1)用户基本信息的录入及照片上传功能。(2)验证录入信息合法性及完整性。(3)按照当前日期及录入顺序生成健康证编号,编号格式实例(XAHC-201406020148,表示2014年6月2日录入的第148个用户信息)。(4)根据用户身份证号码,判断用户年龄及性别。(5)Excel表格批量导入用户基本信息。数据审核部分包括:(1)显示录入的用户信息。(2)回退需要修改的用户信息编号。系统中的流程控制通过在数据表中设立流程位(dateflow)字段来实现,从数据录入到健康证的打印/归档共需5个流程,分别用1-5来表示。dateflow的值是多少,那么该用户编号中的数据只能在该值所代表的流程中进行显示,如编号为XAHC-201411210013的用户数据行中的dateflow字段的值为2,则该用户数据只能显示在数据审核流程中。本系统所有的流程控制都通过修改dateflow来实现。本系统的用户界面具有较强的一致性[14]:左侧为功能选择树,右侧为操作区。各个功能模块的操作区基本相同,主要由3部分组成:功能按钮区、数据选择区和数据编辑/显示区。

3.1.2 健康证明管理模块的实现 用来实现电子健康证的生成及管理,其主要功能包括:(1)即时生成二维码,二维码中包含健康证明的唯一性编号、持证者体检日期、发证日期、发证机构。本系统中涉及二维码的部分分别采用了两种不同技术的JAR包来完成:PC平台上的二维码生成模块采用日本Denso公司的QRCode.jar包来开发,Android平台上的二维码读取模块采用Google公司的ZXing.jar包来开发。系统生成的二维码图像为139×139像素,容错率为15%。(2)电子健康证明的管理及打印,电子健康证明文件中含有用户姓名、性别、年龄、照片信息、体检日期、发证日期、有效日期、发证机构及发证机构的电子签章、二维码等信息。由于西安市从业人口数量多,健康证有效期短,若生成的健康证采用静态HTML网页格式存储必然会产生海量数据;同时,在查询过程中由于数据传输量较大,当网络条件不好时,会导致查询缓慢,影响用户体验。因此本系统将从业人员的照片文件保存在文件服务器上,照片文件的储存路径及其他健康证相关数据保存在数据表中,当用户触发查询请求时,使用CSS+HTML+JS弹窗与二维码生成模块动态生成电子健康证明,这种方式节省大量存储空间,同时可以精确、快速地显示格式化的电子健康证明,而不受用户浏览器限制。(3)健康证明的有效期管理。健康证明的有效期为1年,系统对发证日期超过1年的记录自动归档,归档后的记录只能以数据表形式查看信息内容,不能再生成健康证样式的HTML文件。

3.2 健康证查验子系统的实现

3.2.1 结构及工作流程 采用C/S架构,其客户端通过Eclipse开发,部署在基于Android 4.1的操作系统智能手机上;服务端部署在Tomcat服务器上,手机和服务器端之间通过 Http完成JSON格式的数据交换。手机端与服务端的结构,见图5。

图5 健康证查验子系统的架构

安卓客户端的工作流程为:用户登录——检查更新——扫描二维码/录入查询信息——获取查询结果——管理查询结果,其中的每一个流程都由相应的功能模块完成。服务端被动响应客户端的请求,将查询结果返回客户端。

3.2.2 用户验证模块 安卓客户端的用户验证页面包含3个文本输入框,用于接收用户输入的用户名、密码、验证码信息,当用户输入完成并点击登录按钮后,会激发登录处理依次处理以下步骤:对用户输入内容的格式及合法性进行校验并使用android.provider.*包获取Android_ID及DEVICE_ID;通过工具类将用户名和密码及获取的设备识别码向服务端URL发送请求;通过Json解析程序获取服务器响应,进行解析和判断,如果用户输入的用户名、密码错误,系统调用错误显示类来显示对话框,提示登录失败;如果登录成功,系统启动主界面,用户通过主界面提供功能列表使用各个功能。

3.2.3 二维码扫码查询模块 主要由两个用于与用户交互的Activity和若干工具类构成。两个Activity为PScanActivity和PViewActivity,其中PScanActivity用于调用手机摄像头进行扫码,PViewActivity用于显示服务端返回的电子健康证信息。PScanActivity由下列功能部件构成:(1)通过com.Zxing.*包中提供的函数进行扫码、解码。(2)用1个TextView存放并显示解码获得的信息。(3)用1个ImageView存放和显示扫码成功后截取到的图像。(4)用3个按钮分别实现查询结果、继续扫码和返回主界面。

3.2.4 查验记录管理 手机客户端的所有查询记录都存储在SQLite数据库中。SQLite是一个部署在本地的轻量级数据库,在安卓系统中为某个应用程序创建的数据库,只有它可以访问,其他应用程序是不能访问的,数据库位于安卓设备/data/databases文件夹中。本文创建一个辅助类DBAdapter,在DBAdapter中定义SQLite数据库的创建、打开、关闭和使用方法,封装所有对数据库的复杂访问。查验记录管理模块通过对DBAdapter进行实例化来实现对SQLite数据库中数据的查询。

3.3 Web服务子系统的实现

Web服务子系统的功能比较简单,单次查询的数据量少,但该子系统需要直接为服务业从业人员提供服务,查询并发数大。为了保证系统的可靠性,该子系统采用标准的MVC设计模式进行开发。在该子系统中需要实现的功能由健康证查询和健康体检预约两部分组成,其中健康证查询功能相对简单,通过调用健康数据管理子系统中相应的数据查询模块就可以完成。体检预约功能的实现过程略复杂,其工作流程及需要实现的功能组件间的关系,见图6。

图6 体检预约功能工作流程及组件关系

4 结语

本文按照软件开发流程,详细阐述了基于二维码技术的健康证明管理信息系统的设计、开发过程。本系统将目前非常流行的二维码技术引入到健康证明管理工作中,利用信息化手段解决当前从业人员健康证明管理工作中存在的一些问题。系统具有实用性强、实时性好、工作效率高等特点。本系统的实施,能够提高监督执法人员的工作效率,减轻体检发证部门的工作压力,方便从业人员办理健康证明,具有良好的社会效益。Web服务子系统还可以进一步扩展,除了为用户提供健康证打印及体检预约功能外,在条件允许的情况下还可以增加网上缴费、体检结果查询等服务功能。

1 魏智灵.基于二维码技术的中小型图书管理系统的设计与实现[D].成都:电子科技大学,2014.

2 丁静. 疾控中心健康体检管理系统及其数据分析[D].石家庄:河北科技大学,2012.

3 崔艳艳,黄志坚. 对食品从业人员健康证的监管中存在的问题原因及对策分析[J]. 中国卫生监督杂志,2009,16(2):197-199.

4 南俊华.美国餐饮业食品安全管理考察报告[J].中国卫生监督杂志,2005,12(1):10-15.

5 薛玉红. 包头市餐饮美容娱乐行业从业人员健康证管理的现状与思考[J]. 包头医学院学报,2012,28(1):39-40.

6 王超斌.基于Android的移动点菜系统的研究与实现[D].昆明:昆明理工大学,2013.

7 陈霄,杨志敏. 健康管理的研究进展与展望[J]. 医学信息学杂志,2010,31(4):1-5.

8 朱红章.旅团级部队日常兵员管理系统的设计与实现[D].西安:西北大学,2012.

9 张士靖,周志超,杜建,等. 国内外健康管理研究热点对比分析[J]. 医学信息学杂志,2010,31(4):6-10.

10 牟金进.基于手机平台的二维码物品信息管理系统的设计与实现[D].北京:北京交通大学,2012.

11 季英凯.省级疾控机构实验室信息系统的设计与实现[D].南京:南京理工大学,2012.

12 顾晓晖. 社区居民电子健康档案系统的设计与实现[J]. 医学信息学杂志,2010,31(10):8-12.

13 倪建新.全国计算机等级考试准考证网上打印系统的设计与实现[J].电脑编程技巧与维护,2009,(16):21-23.

14 郑月,李小溪,方洁旋,等. 智慧健康管理系统开发与应用前景[J]. 医学信息学杂志,2014,35(1):12-16.

Design and Realization of the Health Certificate Management Information System Based on Two-dimensional Code Technology

ZHAOYi,LIFeng,Xi′an

CenterforDiseaseControlandPrevention,Xi′an710054,China

The paper analyzes problems existed in health certificate issuing management among employees in the service industries in Xi'an and points out the necessity of using informatization means to assist health certificate data management. It proposes the scheme of using the management system based on two-dimensional code technology to manage health certificate information and makes detailed description of design and realization of the system.

QR code;Health certificate;Management information system

2015-03-26

赵一,工程师,发表论文4篇。

R-058

A 〔DOI〕10.3969/j.issn.1673-6036.2015.08.004

猜你喜欢

子系统客户端二维码
不对中转子系统耦合动力学特性研究
二维码
小康二维码
GSM-R基站子系统同步方案研究
如何看待传统媒体新闻客户端的“断舍离”?
驼峰测长设备在线监测子系统的设计与应用
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
二维码让政务公开更直接