本发明涉及数据入库,具体地,涉及一种基于webgis的排水管线数据入库方法和系统。
背景技术:
1、一般的数据入库系统采用桌面端软件,需要部署到多台客户端,软件升级时需要为这些客户端安装补丁,而且桌面端入库软件大多需要依赖gis平台或sdk,这些依赖库体积庞大,安装或卸载都较繁琐;另外,桌面端入库时,界面会处于假死状态,即使有进度条,用户依然要等待入库完成才能操作。
2、一般的数据入库系统只有正式库,或只有正式库和历史库,数据会直接进入正式库,如发现错误,再进行撤销操作,缺少了数据审核流程,无法保证数据的隔离性、安全性。
3、专利文献cn201410157888.x公开了一种基于arcgis的城市管线更新入库的方法及系统,获取源数据库数据的空间范围;从目标数据库中,删除与所获取的空间范围所对应的数据;建立属性导入配置,根据属性导入配置,将源数据库中的数据导入到目标数据库中,并将不符合目标数据库中的数据库约束的属性数据进行清洗和过滤;接边:手动校正和调整冲突范围内的城市管线数据和管点数据;根据几何网络接口,建立城市管线和管点的属性关联关系:利用几何网络开发接口,为城市管线空间数据库中的管线和管点关联属性赋值,建立城市管线和管点的属性关联关系;完成数据更新入库。然而该专利无法完全解决上述技术问题。
技术实现思路
1、针对现有技术中的缺陷,本发明的目的是提供一种基于webgis的排水管线数据入库方法和系统。
2、根据本发明提供的基于webgis的排水管线数据入库方法,包括:
3、步骤1:将外部管线文件上传服务器,生成关联的业务编码;
4、步骤2:将外部管线文件数据结构转换为数据库管线表结构;
5、步骤3:将外部管线文件数据记录插入到临时库管线表;
6、步骤4:对临时库新增管线数据执行数据检查;
7、步骤5:在数据检查通过后提交审核;
8、步骤6:在审核通过后执行入库操作;
9、步骤7:在入库完成后删除临时库新增管线数据。
10、优选的,所述步骤1包括:
11、步骤1.1:web页面提供文件上传入口,上传客户端管线数据文件到服务器指定文件目录,所述管线数据包括管点和管线,支持的数据格式包括shapefile、gdb、mdb的zip格式压缩格式;
12、步骤1.2:生成入库业务编码,并与文件路径关联;
13、所述步骤2包括:
14、步骤2.1:后台服务解压zip文件,调用gdal接口解析文件数据结构;
15、步骤2.2:查询数据库中管点表和管线表结构,与文件数据结构对比,将文件数据结构转换成数据库中管线表结构,即字段对应;
16、步骤2.3:web页面显示匹配后的外部文件与数据库表,由用户确认关联内外部表。
17、优选的,所述步骤3包括:
18、步骤3.1:后台服务调用gdal接口解析文件数据记录,包括属性值和几何图形,循环插入到临时库的管线表中,同时关联业务编码;
19、步骤3.2:生成插入记录日志,关联业务编码。
20、优选的,所述步骤4包括:
21、步骤4.1:属性检查,根据检查配置表中属性字段检查规则,对管线表数据进行属性字段值检查,包括编码字段的唯一值检查、非空字段检查和字段合法性检查;
22、步骤4.2:拓扑检查,属性检查通过后对几何图形进行检查,包括坐标系检查、管线自相交、重叠、交叉空间关系检查、和管点与管线之间的相交关系检查;
23、步骤4.3:检查完成后,生成数据检查日志,描述每一条记录的检查结果,是否通过,及不通过的原因;
24、步骤4.4:web页面显示检查结果和检查日志,由用户确认提交审核;
25、所述步骤5包括:上级用户审核数据,给出审核意见;若通过,则进行入库操作。
26、优选的,所述步骤6包括:
27、步骤6.1:查询正式库管线表中是否存在与临时库新增管线数据编码相等的记录,若存在,则将正式库管线表中相应记录插入到历史库中,同时关联业务编码;
28、步骤6.2:将临时库新增管线数据插入或更新到正式库。
29、根据本发明提供的基于webgis的排水管线数据入库系统,包括:
30、模块m1:将外部管线文件上传服务器,生成关联的业务编码;
31、模块m2:将外部管线文件数据结构转换为数据库管线表结构;
32、模块m3:将外部管线文件数据记录插入到临时库管线表;
33、模块m4:对临时库新增管线数据执行数据检查;
34、模块m5:在数据检查通过后提交审核;
35、模块m6:在审核通过后执行入库操作;
36、模块m7:在入库完成后删除临时库新增管线数据。
37、优选的,所述模块m1包括:
38、模块m1.1:web页面提供文件上传入口,上传客户端管线数据文件到服务器指定文件目录,所述管线数据包括管点和管线,支持的数据格式包括shapefile、gdb、mdb的zip格式压缩格式;
39、模块m1.2:生成入库业务编码,并与文件路径关联;
40、所述模块m2包括:
41、模块m2.1:后台服务解压zip文件,调用gdal接口解析文件数据结构;
42、模块m2.2:查询数据库中管点表和管线表结构,与文件数据结构对比,将文件数据结构转换成数据库中管线表结构,即字段对应;
43、模块m2.3:web页面显示匹配后的外部文件与数据库表,由用户确认关联内外部表。
44、优选的,所述模块m3包括:
45、模块m3.1:后台服务调用gdal接口解析文件数据记录,包括属性值和几何图形,循环插入到临时库的管线表中,同时关联业务编码;
46、模块m3.2:生成插入记录日志,关联业务编码。
47、优选的,所述模块m4包括:
48、模块m4.1:属性检查,根据检查配置表中属性字段检查规则,对管线表数据进行属性字段值检查,包括编码字段的唯一值检查、非空字段检查和字段合法性检查;
49、模块m4.2:拓扑检查,属性检查通过后对几何图形进行检查,包括坐标系检查、管线自相交、重叠、交叉空间关系检查、和管点与管线之间的相交关系检查;
50、模块m4.3:检查完成后,生成数据检查日志,描述每一条记录的检查结果,是否通过,及不通过的原因;
51、模块m4.4:web页面显示检查结果和检查日志,由用户确认提交审核;
52、所述模块m5包括:上级用户审核数据,给出审核意见;若通过,则进行入库操作。
53、优选的,所述模块m6包括:
54、模块m6.1:查询正式库管线表中是否存在与临时库新增管线数据编码相等的记录,若存在,则将正式库管线表中相应记录插入到历史库中,同时关联业务编码;
55、模块m6.2:将临时库新增管线数据插入或更新到正式库。
56、与现有技术相比,本发明具有如下的有益效果:
57、(1)通过采用web服务入库的方式,解决了桌面端入库软件需要部署所有客户端,且运维工作量大的问题,且web服务采用缓冲池队列实现异步入库,解决了桌面端入库时界面假死的问题,达到了提高了客户的工作效率,减小了运维成本的效果;
58、(2)通过采用临时库、正式库、历史库的数据结构,解决了未经审核的数据进入正式库和进入正式库的数据无法撤销的问题,使管线数据在不同的流程阶段隔离在不同的数据库里,数据的安全性得到了保障,达到了无权限的用户无法入库,错误的数据入库后可撤销的效果;
59、(3)通过采用属性检查、拓扑检查,并生成检查日志的方式,解决了出现导入数据重复,属性不全或错误、几何图形错误或空间关系错误的数据质量问题,使管线数据正确性得到了保障;
60、(4)通过采用以管线(点、线)为对象,进行唯一编码管理、多库对比更新方式,解决了以往数据更新需要全量更新,时效性差、并耗费资源的问题,使管线更新即时、高效。