基于JSP的儿童免疫规划监测预警及疫苗追溯服务平台设计与实现①
2015-10-09唐雅娜
唐雅娜
摘 要:基于软件工程的系统实施方法,采取模块化、螺旋式开发模式,综合应用软件技术、数据库技术、WebService、XML 数据交换、数据流、业务流、安全追溯等信息技术的理论与方法,设计实现了基于JSP的儿童免疫规划监测预警及疫苗追溯服务平台,该平台基于B/S 架构,采用MVC 模式,在MyEclipse 、SQL Server 2008等开发工具中设计实现。
关键词:追溯 免疫规划 监测预警 JSP
中图分类号:R126 文献标识码:A 文章编号:1672-3791(2015)06(b)-0050-03
根据《疫苗储存和运输管理规范》第十条:疾病预防控制机构、接种单位应定期对储存的疫苗进行检查并记录,发现质量异常的疫苗,应当立即停止供应、分发和接种,并及时向所在地的县级卫生行政部门和食品药品监督管理部门报告,不得自行处理[1]。因此,设计与实现具有“多地区异常反应监测预警”和“疫苗安全追溯”功能的儿童免疫规划监测预警及疫苗追溯服务平台,一旦发现质量异常的疫苗时,各级卫生行政管理部门和食品药品监督管理部门将能快速获取同批次的已接种疫苗的接种儿童信息,以及同批次疫苗再各级接种点的库存信息,对提高政府对免疫规划的科学决策和应急指挥能力具有重要的现实意义。
1 功能需求
平台功能模块如图1所示,平台包括六个子系统:出入库子系统、财务子系统、接种子系统、疫苗流通全程追溯子系统、疫苗流通监控预警子系统、疫苗流通监管子系统。详细的功能需求及分析请参阅作者的另一篇论文《儿童免疫规划监测预警及疫苗追溯服务平台研究》,此处不再赘述。
2 系统设计
分析问题领域的过程也就是RUP六个核心过程工作流中商业建模工作流、需求工作流的完成过程,它在整个软件开发的过程中不是一蹴而就的,而是在每一次迭代中以不同的重点和强度重复,不断的完善。分析问题领域的目的就是要将需要解决的问题系统化、规范化,在开发者和用户之间达成一种共识,建立所要开发系统的用例模型[2]。
因篇幅关系,疫苗信息管理用例图、儿童信息管理用例图、部门信息管理用例图、用户管理用例图、疫苗厂商管理用例图、权限管理用例图、审批管理用例图、接种管理用例图、追溯查询用例图、投诉处理用例图、财务管理用例图、管理员用例图、接种用例图、追溯查询用例图此处不再赘述,只给出较复杂的入库计划管理用例图、出库计划管理用例图。
2.1 入库计划管理
如图2所示,入库计划管理包括入库计划的新增、查询、制定入库计划名、下级入库计划管理,入库计划的状态有“待填报”、“本级-提交/上级-待审批”、“上级驳回”、“上级提交”。
入库计划是涉及多层级部门的活动,需要顶级部门首先制定统一的入库计划名及下级的填报时间范围,制定好入库计划名后,下级部门能在指定的时间范围内通过下拉框进行选择填报,属于顶级部门的功能。制定入库计划名包括查询和新增,对查询出的入库计划名且没有填报记录的可以进行修改和删除。
入库计划新增时会进行新增时间范围的校验,只有在允许的时间范围内且有入库计划名时才能新增。新增时可以读取下级部门已经确认提交的入库计划并进行汇总;新增信息确认后可以提交至上级进行审批,提交审批时入库计划由待填报状态更改为“本级提交”,上级部门查看时的状态为“待审批”。
可以对入库计划的查询结果进行打印、导出、修改和删除。在修改和删除时会进行状态校验,只有“待填报”状态才能进行删除,“待填报”状态和“上级驳回”状态可以进行入库计划的修改。
下级入库计划管理包括入库计划填报时间范围的设定、下级入库计划查询、审核。对下级入库计划的查询结果可以进行导出、打印、修订,但只能修订“待审批”状态的下级入库计划。对填报信息审核通过的可以进行审核确认,状态更改为“本级提交”,下级部门查看的状态显示为“上级提交”。对下级提交的入库计划不符的可以进行审核取消,审核取消后状态修改为“待审批”,下级查看的状态为“待审批”,此状态下可以进行对下级入库计划的修订。也可对下级提交的入库计划不符要求的进行驳回申请,状态修改为“驳回”,下级部门查看的状态为“上级驳回”。只有状态为“待审核”的下级计划才能进行驳回申请和审核取消。
入库计划的审批、提交、状态查看不能越级进行,只能提交到自己的直接上级,也只能驳回自己的直接下级。同一入库计划,在两级部门用户显示的状态文字不同,如上级显示“驳回”,下级显示“上级驳回”;下级显示“本级提交”,上级显示“待审批”。
2.2 出库计划管理
如图3所示,出库计划管理包括出库计划和调剂计划的管理,是把库存产品对下级的出库(往往依据下级申请的入库计划)和对同级的调剂,但对下级的出库计划的名目和数量同最初的入库计划不一定完全相同,可能出现实际出库计划的名目、数量少于入库计划的情况。一份出库计划的状态包括“待确认”、“出库确认”、“入库确认”。
出库计划管理包括查询、新增、出库计划的确认、入库确认。可以对查询出的出库计划进行打印、导出、修改、删除,只能修改或删除状态是“待确认”的出库计划。出库计划新增时会进行库存校验和上级实际核准入库数量的校验(应小于等于),新增的出库计划状态是“待确认”。“待确认”状态的出库计划在实际出库时,更改状态为“出库确认”。下级部门在出库计划的物品实际入库时,更改该出库计划状态为“入库确认”。
调剂计划管理包括查询、新增、调剂计划的出库确认、入库确认。可以对查询出的调剂计划进行打印、导出、修改、删除,只能修改或删除状态是“待确认”的调剂计划。调剂计划新增时会进行库存校验(应小于等于),新增的调剂计划状态是“待确认”。 “待确认”状态的调剂计划在实际出库时,更改状态为“出库确认”。同级部门在调剂计划的物品实际入库时,更改该调剂计划状态为“入库确认”。
3 系统类图设计
设计类图说明了软件类的规格说明和应用程序接口,设计类图所能表达的典型
信息包括:类、关联和属性、接口及其操作和常量、方法、属性类型信息、导航、类等元素之间的依赖关系[3]。因篇幅关系,只给出出入库子系统模块类图,如图4、图5所示。
4 实现技术
4.1 JSP
JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准[4]。JSP网页提供了一个接口,来让整个服务器端的Java库单元为HTTP 应用程序服务[5]。
4.2 MyEclipse
MyEclipse Enterprise Workbench(MyEclipse企业级工作平台),简称MyEclipse,是对EclipseIDE的扩展。MyEclipse是一个Eclipse支持下的J2EE开发插件,功能十分强大,具备完美的编码、调试、测试和发布功能并完整支持Structs、Spring和Hibernate等框架技术。MyEclipse插件基本上涵盖了众多Eclipse插件的功能,能满足我们的各种应用需求,基本上是安装了它就无须其它插件。甚至可以这样理解,MyEclipse就是一个比较完备的、功能十分强大的开发环境[6]。
4.3 SQL Server 2008
SQL Server 2008是美国微软公司在数据管理系统上最流行的关系型数据库,在数据处理方面具有良好的性能,成为世界上三大数据库管理系统之一。SQL Server 2008作为最新的SQL Server版本,是至今为止的最强大和最全面的SQL Serve版本。SQL Server 2008新增和更改内容包括DATE和TIME数据类型、hierarchyID数据类型、MERGE命令和多行插入以及递归查询等[7]。
5 系统实现
主界面采用传统的页面布局,如图6所示,为左右两个子部分,左子部分是菜单栏,包含系统设置,基本信息,疫苗采购,疫苗下拨,库存管理,疫苗接种,疫苗追溯七大模块的导航链接;右子部分是显示的主体信息,默认是待办事务,包含该用户待处理的事务快照。
6 项目的特色和创新之处
6.1 疫苗链路双向追溯及对比分析
(1)儿童个案免疫疫苗到疫苗生产企业的追溯。能做到在查询儿童免疫个案时,可以对其使用的免疫疫苗进行反向追溯,追溯信息包括该疫苗从生产企业到最终实施接种之间的所有出库、运输、仓储、保管的相关责任人、日期、时间等数据。通过该功能,当疫苗免疫出现异常反应,尤其是当发生群体性异常反应时,可以方便快捷的发现问题,找到原因,进行从疫苗出厂到最终使用过程中的所有环节的跟踪和排查,利于领导进行决策和分析。
(2)疫苗到儿童免疫个案的追溯。给出某疫苗批号,能追溯给出该批次疫苗的所有出库、运输、入库、仓储、保管、注射免疫、免疫儿童的信息及日期时间等数据。如某一批次的疫苗发生问题,可以通过系统立刻查询出该批次疫苗已经分散运输到哪些接种单位,有哪些儿童,在什么时间进行了该批次疫苗的接种,便于立刻进行补救和领导决策。
(3)可以进行疫苗流通链路的对比分析功能。如D1接种点发生群体接种问题,通过系统可以查询出该批次疫苗的运输线路为A->B1-C1->D1,而同批次疫苗在D2处的接种没有发生问题,该批次疫苗的运输线路为A->B1-C2->D2。由此可以初步判断疫苗极有可能在C1或D1环节发生了问题。可以利于快速进行反应和找到问题原因的和所在。如果确认是C1环节的问题,系统还可以查询出在C1处同该批次疫苗一起运输存储的其它疫苗,并可以列出这些疫苗现在已经流通到哪里,有哪些已经使用,便于及时进行追回和处理。
6.2 智能分析与预警
系统能预先设置异常反应、库存、有效期预警的阈值,当达到阈值时,可以通过网络、短信等方式通知相关负责人,便于管理部门快速作出反应和决策。
6.3 二类疫苗统一规划、分配、管理和监督
系统对二类疫苗设置为由省市县一级的管理部门进行统一规划、分配和管理,包括面向社会的免疫价格。接种单位没有疫苗的入库权限,而只有使用权限。同时儿童家长可以通过系统查询出儿童所接种的疫苗名称、企业、批号和价格,如果发现和实际接种不符,可以通过系统进行投诉和监督。系统通过统一的二类疫苗入库系统、库存系统、儿童家长监督投诉系统来避免和杜绝个别接种单位私自进苗的现象,保证了接种疫苗的统一规划和选择,确保接种疫苗的质量和安全。同时也减少了个别接种单位因利益驱使而损害免疫接种系统整体社会形象和地位的情况。
7 结语
充分应用现有信息技术,是提高科学管理水平、卫生服务质量和效率的有力手段,是免疫规划工作发展的必然要求。通过建立儿童免疫规划监测预警及疫苗追溯服务平台,可以为新生儿童建立预防接种个案信息,动态收集免疫预防机构和人员基本信息、计划免疫设备和疫苗信息资料,以个案方式实施计划免疫疾病监测等,为政府、卫生行政部门等决策部门制定免疫规划政策、规划、财政投入、设备更新等提供依据;促使接种率和接种质量不断提高,促进计划免疫资料的规范化管理,提高了建卡、建证率,降低发病率;接种服务单位能更准确获得疫苗管理、疾病监测、接种实施、服务对象的基本情况等具体信息,指导预防接种工作的实施,提高预防接种服务工作的质量;社会(被服务对象)能够得到儿童接种完成情况,了解预防接种服务的内容,享有联网异地接种,多种方式查询/咨询服务,从而更好地保障儿童身体健康。
参考文献
[1] 卫疾控发.疫苗储存和运输管理规范[DB/OL].http://www.jincao.com/fa/10/law10.137.htm.2006,3.
[2] 徐术平.基于UML建模的生产过程信息可追溯系统的分析与设计[D].重庆:重庆大学,2009.
[3] 程惠勤.基于UML的学生选课系统的分析与设计[J].福建电脑,2014(2):108-110,153.
[4] JSP.百度百科[DB/OL].http://baike.baidu.com/link?url=GLlJT_UP5r02Oxr8WZTefGWtWjBoCkNSJkfC0g68m5_9fB6UlADm-H4kPNth8q73A61TcZHVkBs2EV7bHB0luno-aMNHthKfXGZUQOmgoLW,2015,3.
[5] 闻永萍.基于JSP的电子商务网站开发[J].信息安全与技术,2011(11):92-94,103.
[6] 曹大有.基于MyEclipse的Hibernate持久层框架的开发过程[J].计算机系统应用,2007(12):101-104
[7] 苗凤华.SQLServer2008数据管理系统的优势研究[J].长春师范大学学报,2014(6):76-77,81.