APP下载

基于J2EE的药品集中采购系统的设计与实现

2019-09-10任焕海曹金静

现代信息科技 2019年4期

任焕海 曹金静

摘 要:为了规范药品的购销行为,推行医疗体制的改革,本文利用先进的计算机技术设计实现了药品集中采购系统。通过对目前药品集中采购的需求分析,系统采用J2EE和Oracle数据库进行开发,实现了药品的集中采购管理、供货管理、监督管理、系统管理等主要功能。本文详细介绍了系统的架构设计、各个模块的功能,并对关键技术的应用进行了阐述。本系统的实现规范了药品集中采购过程,提高了采购效率,并强化了政府相关部门的监管。

关键词:药品集中采购系统;J2EE;Oracle;工程聚合

中图分类号:TP311.52 文献标识码:A 文章编号:2096-4706(2019)04-0081-03

Design and Implementation of Pharmaceuticals Centralized Purchasing System

Based on J2EE

REN Huanhai,CAO Jinjing

(College of Electronic Information Engineering,Shandong Huayu University of Technology,Dezhou 253034,China)

Abstract:In order to standardize the purchase and Sale of drugs,the reform of the medical system was implemented,and the centralized procurement system for drugs was realized by using advanced computer technology design. Through the analysis of the current demand for centralized drug procurement,the system uses J2EE and Oracle database for development,and realizes the main functions of centralized procurement management,supply management,supervision and management and system management. This paper describes the system architecture design,the function of each module,and application of key technologies to elaborate. The implementation of this system regulates the centralized procurement process of drugs,improves efficiency,and strengthens the supervision of relevant government departments.

Keywords:centralized purchasing system for pharmaceuticals;J2EE;Oracle;engineering polymerization

0 引 言

藥品采购机制不够完善,也没有很好的药品采购监管手段和技术,往往导致某些药品在市场中供销不平衡,出现了药品价格不稳定、天价药或者脱销的现象,使得病人买药难、买药贵的现象愈演愈烈[1]。

针对上述问题,建立药品集中采购平台,可以使得药品企业根据平台的统计数据,分析药品市场需求,及时调整药品产量和投放量,做到药品生产和投放精准化;对医疗单位进行药品采购,可以使得药品价格透明化,生产厂家可以对药品进行追溯,药品采购的过程更加方便快捷;通过药品集中采购平台,政府监管部门可以大大简化对药品交易的监管,使得工作效率大幅提高[2]。

药品集中采购平台是利用先进计算机Web开发技术设计的一个在线药品销售、采购、监管系统,可以让医疗机构、药品生产企业和政府监管部门对药品的交易更加容易、透明、可控。

1 系统架构

药品集中采购管理系统采用B/S(浏览器/服务器)系统架构[3],根据对用户的需求分析,本系统的整体架构分为三大模块,其中包括业务功能模块(Business)、业务基础模块(Base)以及工具模块(Util);本系统采用的技术架构是Spring+MyBatis[4]。系统整体架构图如图1所示。

业务基础模块(Base),主要涉及到系统的基础业务的处理和管理,包括系统的各级用户信息管理、系统各部分参数设置等,这些基础业务功能的实现,可以为后面开发系统的业务功能模块奠定基础。

业务功能模块(Business),以系统的业务基础模块为基础,主要有药品的目录、采购单信息、退货单信息、查询统计以及系统管理等主要模块构成。

工具模块(Util),这是系统的一个公共模块,里面存放了本系统使用的工具类,其他功能相近项目也可以使用,提高了代码的重用。

1.1 业务基础模块(Base)

业务基础模块作为系统设计的基础,其内容如图2所示。

下面详细介绍Base模块主要部分的具体内容。

Filter,是一种过滤器,比如用于系统登录权限以及系统操作权限的过滤。

Action,是一种控制器,主要有转换器(Converter)、控制器(Controller)和基础服务门面(BaseServiceFacade)组成,作用是表单提交、数据列表查询、异常结果处理。

Service,主要封装了系统各模块的服务接口,由区域管理服务接口(AreaManagerService)、系统配置服务接口(SystemConfigService)、用户管理服务接口(User-ManagerService)三部分组成。

Dao,是面向对象的数据库接口,整体可以分为自定义和自动生成两部分四个方面,有mapper接口和mapper.xml。

Process,是系统的处理结构,主要处理系统的异常信息、提交结果及查询列表结果等信息。

1.2 业务功能模块(Business)

业务功能模块(Business),是在业务基础模块之上,处理系统的主要功能,主要包括:药品的目录管理、采购单的管理、交易监管管理、退货单的管理、结算单的管理、交易信息的统计分析等内容,如图3所示。

2 系统功能模块

药品集中采购系统[5]由:药品目录、采购单管理、退货单管理、结算单管理等模块组成。

系统的功能能够使得药品的需求信息和供应信息非常直观的显示在药品集中采购平台上,将医院、药品生产企业和政府监管单位所需的药品相关信息传递到指定端口,不仅方便医院了解药品的价格流通行情,也对药品生产企业按需生产提供了数据支持,还可以使得政府监管部门对药品交易的各方进行监督,同时对药品的供需关系进行宏观调控。

下面介绍每个功能模块的具体功能:

药品目录模块,其主要功能是药品目录维护,药品目录查询,采购目录维护,供货目录维护,供货目录控制。

采购单管理模块,其主要功能有创建采购单,采购单维护,采购单提交,采购单审核,发货和入库。

结算单管理模块,主要功能有创建结算单,结算单维护,结算单提交和结算单确认。

退货单管理模块,主要有创建退货单,退货单维护,退货单提交和退货单确认。

查询统计模块,主要功能有按药品统计交易情况查询,按医院统计交易情况查询,按供货商统计交易情况查询和交易明细查询。

系统管理模块,主要功能有医院管理,供货商管理,监督单位管理,用户管理,系统参数配置,数据字典和区域管理。

3 关键技术

3.1 工程聚合

如果没有聚合工程,工程师需要人为判断工程之间的依赖关系,按照依赖关系进行单个工程编译、发布。所以,本系统使用Maven[6]进行工程聚合,这样就方便有效的将横向和纵向拆分的项目进行整合。

父工程的pom.xml配置:

<!--设定子模块的目录,目录要有pom.xml,使用相对路径-->

子工程的pom.xml配置:

<!--父模块的相对路径,父模块目录要有pom.xml-->

3.2 用户身份校验

用户的身份校验,系统使用过滤器Filter,并采用Spring MVC作为拦截器进行实现。Spring MVC拦截器是基于处理器映射器HandlerMapping进行拦截。可以采用一种方法定义一处拦截器,自动在每个HandlerMapping中进行注册,其配置如下。

<!--拦截器-->

<!--多个拦截器,顺序执行-->

<!--用户身份校验的拦截器-->

3.3 分表存储

从药品交易的记录数量来考虑系统数据存储问题,由于每个城市,即使是中小城市也有数量巨大的医疗机构,每年因药品采购交易产生的记录多达上千万条,随着城市化进程的进一步加大,交易记录会随着时间越来越多,只对数据库进行优化(建立索引、游标等)不能完全解决平台操作效率的问题,在本系统提出可以按照规则对数据表进行分割存储,从而从根本上解决大数据量访问效率低的问题。

下面从分割表的规则,表的命名规则以及创建表的方法三个方面进行阐述。

(1)分割表的规则。用户按照年份进行采购信息统计、查询,本系统定为按年来创建采购单信息表。平台用户对药品交易信息进行查询、统计分析可以按照年这个关键字,采购单信息表就是按年来创建的。

(2)表的命名规则。采购单信息表采用动态方式创建,其表名的命名规则是:ypcgd+年份(4位),以及采购单明细表的命名规则是:ypcgdmxb+年份(4位)。

(3)创建表的方法。利用存储过程的安全性、可重复性等优点,写好存储过程,自动创建表以及表的索引、触发器、外键等对象,存储过程可以由操作性的定时任务来调用。

4 结 论

本文根据药品集中采购管理工作的目标,充分从医院、药品企业和政府相关部门进行需求分析,采用软件工程的思想,利用先进的开发技术进行了系统设计,主要利用建模工具对系统进行设计,以Eclipse为平台,采用Spring+MyBatis的技术架构,利用Maven进行工程聚合,使用分表存储方案解决了数据量大、业务复杂度高等问题。

平台建立后,可以使得药品在一个价格透明、交易便利、可管可控的环境下完成采购和销售,减轻老百姓的看病负担;药品的集中采购实现了网络电子交易,使得药品企业交易成本降低;政府监管部门也可以足不出户进行药品交易各方的监督管理,药品可以溯源,减少假药流入市场。

參考文献:

[1] 刘毅.新医改背景下我国药品供应链定价策略研究 [D].北京:北京交通大学,2018.

[2] 李琛,刘艺敏,王文杰,等.我国药品集中采购工作回顾与展望 [J].中国医院管理,2018,38(9):17-19+23.

[3] 苗立江,窦世峰.基于B/S模式领导干部民主测评系统的设计与实现 [J].伊犁师范学院学报(自然科学版),2018,12(3):69-74.

[4] 李岩.基于SpringMVC框架的订阅式服务计费管理系统的设计与实现 [D].北京:北京交通大学,2018.

[5] 王剑.打造全流程电子招标平台促进药品招标高效发展 [J].中国招标,2017(43):26-27.

[6] 傅晓巍.基于Java编译器的Maven混淆插件的设计与实现 [J].电脑知识与技术,2018,14(10):65-67+70.

作者简介:任焕海(1985-),男,汉族,山东德州人,讲师,硕士,主要研究方向:智能系统设计、图形图像处理;曹金静(1983-),女,汉族,山东德州人,教师,讲师,硕士,研究方向:电子信息、软件开发。