本发明涉及互联网医疗信息技术领域,具体地指一种商业健康保险在线自动对账系统及方法。
背景技术:
商业健康保险是我国医疗保障体系的重要组成部分,加快商业健康保险的发展,有利于夯实多层次医疗保障体系,满足人民群众多样化的健康保障需求。现阶段,商业健康保险的赔付主要是通过线下人工来完成的,对于患者和保险机构来说费时费力,患者和商业保险公司都需要耗费更大的代价才能完成整个赔付流程,这样既不利于患者及时获得商业健康保险的赔付,也不利于商保公司系统降低商业健康保险的管理和赔付成本。目前,由于商保在线理赔交易平台涉及多家医院和多家商保,实际结算数据中存在数据量很大,对账效率不高的问题。采用传统关系数据库实现对账系统,将数据按照关系表的方式存储在硬盘上,对账时将数据调入内存,效率较为低下,且占用大量资源。
技术实现要素:
针对以上所述背景,本发明提供了一种商业健康保险在线自动对账系统及方法,重点解决商保在线理赔交易平台与多家医院、多家商保公司系统之间对账的问题。
为实现上述目的,本发明所设计的商业健康保险在线自动对账系统,其特殊之处在于,包括数据采集层、数据缓存层和对账结果层;
所述数据采集层:用于分别与医院信息系统、商保公司系统对接,采集医院对账数据、商保公司对账数据以及平台对账数据;
所述数据缓存层:基于Redis数据库实现,用于进行平台与医院对账、平台和商保公司对账、三方对账;
所述对账结果层:用于将所述数据缓存层生成的对账结果存储至平台数据库,并将对账结果发送至相关方。
进一步地,所述数据采集层包括:
获取医院对账数据模块:用于与医院信息系统对接,采集医院对账数据;
获取商保对账数据模块:用于与商保公司系统对接,采集商保公司对账数据;
获取平台对账数据模块:用于与平台数据库对接,采集平台对账数据。
更进一步地,所述数据缓存层包括:
平台和医院对账模块:用于将平台对账数据和医院对账数据放入Redis中,获取两组对账数据的交集和差集,得出平台和医院对账结果:医院有平台无、医院无平台有、医院有平台有三类数据集合;
平台和商保对账模块:用于将平台对账数据和商保对账数据放入Redis中,获取两组对账数据的交集和差集,得出平台和商保对账结果:平台无商保有、平台有商保无、平台有商保有三类数据集合;
三方对账模块:用于从Redis中获取平台和医院对账结果、平台和商保对账结果以及平台对账数据进行三方对账,最终得出三方对账结果:医院有平台有商保有、医院有平台有商保无、医院有平台无商保无、医院无平台有商保有、医院无平台有商保无、医院无平台无商保有六类数据集合。
更进一步地,所述对账结果层包括:
统计对账结果模块:用于根据对账结果统计对账总金额、总笔数、成功笔数、成功总金额、失败笔数、失败总金额;
对账结果发送模块:用于以邮件或短信方式将统计后的对账结果发送至相关责任人。
一种根据上述商业健康保险在线自动对账系统的对账方法,其特殊之处在于,包括如下步骤:
1)所述数据采集层分别与医院信息系统、商保公司系统对接,采集医院对账数据、商保公司对账数据以及平台对账数据;
2)所述数据缓存层进行平台与医院对账、平台和商保公司对账、三方对账;
3)所述对账结果层将所述数据缓存层生成的对账结果存储至平台数据库,并将对账结果发送至相关方。
优选地,所述步骤2)的具体步骤包括:
21)平台与医院对账:使用Redis数据库的pipeline方法将医院对账数据和平台对账数据放入Redis数据库中,使用Redis数据库内置的SINTER方法获取两组对账数据的交集,使用SDIFF方法获取两组对账数据的差集,得出平台和医院对账结果:医院有平台无、医院无平台有、医院有平台有三类数据集合;
22)平台和商保对账:使用Redis数据库的pipeline方法将商保公司对账数据和平台对账数据放入Redis数据库中,使用Redis数据库内置的SINTER方法获取两组对账数据的交集,使用SDIFF方法获取两组对账数据的差集,得出平台和商保对账结果平台无商保有、平台有商保无、平台有商保有三类数据集合;
23)三方对账:通过预设的属性标签,从Redis数据库中获取平台和医院对账结果、平台和商保对账结果以及平台对账数据进行三方对账,最终得出三方对账结果:医院有平台有商保有、医院有平台有商保无、医院有平台无商保无、医院无平台有商保有、医院无平台有商保无、医院无平台无商保有六类数据集合。
本发明的优点包括:
1)本发明采用一个高性能的key-value存储系统Redis缓存技术,将数据放在Redis数据库缓存中,利用频繁的读写,Redis数据常驻内存,运行效率极高。
2)本发明解决了不同商业平台系统间数据对比不便的问题,利用Redis内置取交集并集和差集的操作,大大简化处理逻辑。
3)本发明支持多种数据类型,具丰富的特性,支持多个数据库类型,能和Mysql、Oracle、SqlServer等主流数据库完美对接;
4)本发明实现不同医疗机构与不同商业保险公司之间的商业健康保险在线对账,大幅提升了对账效率,优化了商业健康保险在线自动赔付的流程。
附图说明
图1为本发明商业健康保险在线自动对账系统的结构框图。
图2为本发明商业健康保险在线自动对账方法的数据流程图。
其中:数据采集层1,获取医院对账数据模块11,获取商保对账数据模块12,获取平台对账数据模块13,数据缓存层2,平台和医院对账模块21,平台和商保对账模块22,三方对账模块23,对账结果层3,统计对账结果模块31,对账结果发送模块32,平台数据库4,医院信息系统5,医院数据库51,商保公司系统6,商保公司数据库52。
具体实施方式
以下结合附图和具体实施例对本发明作进一步的详细描述。
如图1所示,本发明一种商业健康保险在线自动对账系统,包括数据采集层1、数据缓存层2和对账结果层3。
数据采集层1用于分别与医院信息系统5、商保公司系统6对接,采集医院对账数据、商保公司对账数据以及平台对账数据。数据采集层1包括获取医院对账数据模块11、获取商保对账数据模块12和获取平台对账数据模块13,其中:获取医院对账数据模块11用于与医院信息系统5对接,并通过医院信息系统5调用医院数据库41采集医院对账数据;获取商保对账数据模块12用于与商保公司系统6对接,通过商保公司系统6调用商保公司数据库61采集商保公司对账数据;获取平台对账数据模块13用于与平台数据库4对接,采集平台对账数据。
数据缓存层2基于Redis数据库实现,用于进行平台与医院对账、平台和商保公司对账、三方对账。数据缓存层2包括平台和医院对账模块21、平台和商保对账模块22和三方对账模块23,其中:平台和医院对账模块21用于将平台对账数据和医院对账数据放入Redis中,获取两组对账数据的交集和差集,得出平台和医院对账结果:医院有平台无、医院无平台有、医院有平台有三类数据集合;平台和商保对账模块22用于将平台对账数据和商保对账数据放入Redis中,获取两组对账数据的交集和差集,得出平台和商保对账结果:平台无商保有、平台有商保无、平台有商保有三类数据集合;三方对账模块23用于从Redis中获取平台和医院对账结果、平台和商保对账结果以及平台对账数据进行三方对账,最终得出三方对账结果:医院有平台有商保有、医院有平台有商保无、医院有平台无商保无、医院无平台有商保有、医院无平台有商保无、医院无平台无商保有六类数据集合。
对账结果层3用于将数据缓存层2生成的对账结果存储至平台数据库4,并将对账结果发送至相关方。对账结果层3包括统计对账结果模块31和对账结果发送模块32,其中:统计对账结果模块31用于根据对账结果统计对账总金额、总笔数、成功笔数、成功总金额、失败笔数、失败总金额;对账结果发送模块32用于以邮件或短信方式将统计后的对账结果发送至相关责任人。
一种用于上述商业健康保险在线自动对账系统的对账方法,包括如下步骤:
1)数据采集层1分别与医院信息系统5、商保公司系统6对接,获取医院对账数据模块11与医院信息系统5对接,通过医院信息系统5调用医院数据库51采集医院对账数据;获取商保对账数据模块12与商保公司系统6对接,通过商保公司系统6调用商保公司数据库61采集商保公司对账数据;获取平台对账数据模块13与平台数据库4对接,采集平台对账数据。
2)数据缓存层2进行平台与医院对账、平台和商保公司对账、三方对账。
21)平台与医院对账:平台和医院对账模块21使用Redis数据库的pipeline方法将医院对账数据和平台对账数据放入Redis数据库中,使用Redis数据库内置的SINTER方法获取两组对账数据的交集,使用SDIFF方法获取两组对账数据的差集,得出平台和医院对账结果:医院有平台无、医院无平台有、医院有平台有三类数据集合;
22)平台和商保对账:平台和商保对账模块22使用Redis数据库的pipeline方法将商保公司对账数据和平台对账数据放入Redis数据库中,使用Redis数据库内置的SINTER方法获取两组对账数据的交集,使用SDIFF方法获取两组对账数据的差集,得出平台和商保对账结果平台无商保有、平台有商保无、平台有商保有三类数据集合;
23)三方对账:三方对账模块23通过预设的属性标签,从Redis数据库中获取平台和医院对账结果、平台和商保对账结果以及平台对账数据进行三方对账,最终得出三方对账结果:医院有平台有商保有、医院有平台有商保无、医院有平台无商保无、医院无平台有商保有、医院无平台有商保无、医院无平台无商保有六类数据集合。
3)对账结果层3将数据缓存层2生成的对账结果存储至平台数据库4,并将对账结果发送至相关方。首先,统计对账结果模块31根据对账结果统计对账总金额、总笔数、成功笔数、成功总金额、失败笔数、失败总金额;然后,对账结果发送模块32以邮件或短信方式将统计后的对账结果发送至相关责任人。
在一具体实施方式中,实施例包括如下步骤:
1)数据采集层1中获取医院对账数据模块11采集医院对账数据如下:
2)获取商保对账数据模块12采集商保公司系统对账数据如下:
16120810200361400001|16120810194502000001|1|4|160|0029497|||||2016/12/8
10:20:17|20160711000000||||||16120810201702100001|40000000000022|000072|33|20160711000000009962|10086|2|1|0||1
16120910253731200001|16120910253676700001|1|4|0|0029497|||||2016/12/9
10:25:37|20160711121212||||||16120910253773700001|20161107600899999999999999999999999999999999999999|000122|001|001|MyInvoiceNo201611220005|2|1|0||1
16120911312540100001|16120911312438300001|1|4|159926|0029497|||version:1.0.0||2016/12/9 11:31:49|20161209113126|002000|张三||||16120911314921300001|16120911272477600001|000122|16120911312681200001|16120911312681200001|0029497-16120911315535700001|2|1|0||1
3)获取平台对账数据模块13采集平台对账数据如下:
4)数据缓存层2中平台和医院对账模块21输出对账成功记录如下:
40000000000022,33,0029497,20160711,160
20161107600899999999999999999999999999999999999999,001,0029497,20160711,2
16120911272477600001,16120911312681200001,0029497,20160711,159
5)平台和商保对账模块22输出对账成功记录如下:
40000000000022,33,0029497,20160711,160
20161107600899999999999999999999999999999999999999,001,0029497,20160711,0
6)三方对账模块23输出对账成功记录如下:
40000000000022,33,0029497,20160711,160
20161107600899999999999999999999999999999999999999,001,0029497,20160711,0
7)对账结果层3中统计对账结果模块31输出:
账总金额:319,总笔数:2,成功笔数:2,成功金额:160,失败笔数:1,失败金额:159
8)对账结果发送模块32将统计结果以邮件方式发送到指定位置。
以上结合最佳实施例对本发明进行了描述,但本发明并不局限于以上揭示的实施例,而应当涵盖各种根据本发明的本质进行的修改、等效组合。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。