国土空间规划实施移动巡查系统研究

时间:2022-09-07 10:39:33

国土空间规划实施移动巡查系统研究

摘要:近年来,随着城镇化和工业化水平不断提高,我国经济发展进入新阶段。为了提升国土空间规划的约束力和执行力,严打严控违法建设现象,以信息化促进监管智能化,进一步提升和完善我国国土空间治理能力、协调经济高质量发展与绿色发展关系,本文结合移动互联技术,提出基于Android的移动端平台,以网络电子地图技术为核心,以监管业务需求为导向,实现空间地理信息与专项业务有机结合的技术路线,并依托信息综合管理平台扩展开发政务外网智能移动终端巡查软件,提供规划信息服务和移动调查、采集工具,服务于国土空间规划巡查工作。

关键词:国土空间规划;Android移动端;信息管理

近年来,随着城镇化和工业化水平的不断提高,我国经济已由高速增长阶段转向高质量发展阶段。新的阶段对规划的约束力和执行力提出了新的要求,面对用地供需矛盾突出、违法建设形势严峻以及生态保护等问题,国土空间规划是优化生态环境保护、促进国土资源集约利用的国家意志导向,是推进生态文明建设的关键举措[1],是我国政府国土资源监管与治理能力的重要体现[2]。因此,加强国土空间规划实施监管,促进国土空间规划科学实施对完善我国空间治理体系、协调经济高质量发展与绿色发展关系具有重要意义[3]。为了落实有关决策部署,结合当前生态环境整治计划和空间规划管控、监测督察需要,依托当前信息综合管理平台,扩展开发了基于政务网的智能移动终端软件(手机APP),建立起省、市县、乡镇、村(网格员)四级的空间规划管控、监测督察管理模式,让规划监管更加迅速、便捷。规划实施移动巡查系统依托于移动终端,采用移动采集技术,以电子地图为核心,结合专项工作的需求,增强专项业务与电子地图的交互,形成一系列的通用地图工具和定制化专项模块。电子地图与专项业务的有机结合,借助空间维度的可视化、分析、存储等技术,作为提升专项工作效率、可靠性的辅助手段。

1总体架构设计

规划实施移动巡查系统的应用架构包含基础设施层、数据层、业务层、展示层和用户层。基础设施层是整个项目的基础支撑,为系统部署、运行及管理维护提供所需的软硬件设施和环境等。基础设施层依托政务云计算中心,实现计算、存储、网络、安全等各类资源的池化,对外提供统一资源调度接口,统筹电子政务外网、互联网等多种数据资源特征。包括支持关系型数据库、非关系型数据库、文件数据库的混合存储框架和支持高性能计算、并行计算和分布式计算混合计算框架,为上层分布式应用提供基础支撑。数据层包含支撑规划实施移动巡查系统运行的外部信息数据、APP采集及业务数据。其中外部信息数据主要包括:来自天地图·海南的地图瓦片数据、影像数据等;APP采集及业务数据主要是指在巡查过程中采集的多媒体数据、上报的图形数据、录入的巡查属性数据以及相关日志、签到、工作流流转等数据。业务层是数据加工者,主要就是从数据层获取数据,然后经过业务逻辑处理后转化成展示层需要的数据。规划实施移动巡查系统以各类数据服务以及APP采集及业务数据为基础,实现了个人工作台、GIS地图、综合查询、任务管理、系统管理等业务应用。展示层定义了使用规划实施移动巡查系统的业务界面,系统根据实际操作习惯,以灵活性、易用性为根本设计,实现业务层各业务需求的UI设计。用户层定义了使用规划实施移动巡查系统的界面和接口调用的用户或系统,主要包括网格化巡查业务人员及规划监管工作人员。规划实施移动巡查系统以“天地图”地图瓦片数据、影像数据以及空间规划成果服务为基础,采用WebGIS技术架构,提供可视化、信息查询、空间分析等能力的电子地图;结合规划管控工作需求,接入遥感监测数据,定制化业务表单及对接外部系统接口,为外部系统提供移动工作终端。核查数据定期接入地图,体现业务和数据流的双导向性,构成了一个闭合完整的回路体系。系统应用架构如图1所示。

2关键技术

2.1原生与HTML5混合开发原生应用是移动平台

(比如iOS或安卓)所特有的,使用相应平台支持的开发工具和语言。原生应用的运行速度快、性能高,满足良好的用户体验;可调用设备硬件功能如摄像头、GPS、传感器等硬件,以满足更高的功能要求;应用资源已安装到设备本地,在无网或弱网的场景下体验好,离线功能基本也使用原生开发。HTML5应用开发是利用Web技术进行的App开发,支持设备范围广,可以跨平台,编写的代码可以同时在Android、IOS、Windows上运行;开发成本低、周期短、成果体量小,便于移植复用;但需要设备提供浏览器支持才能展示和交互。本系统APP采用Android原生与HTML5混合开发方式,通过JSBridge通信技术实现交互[4-5]。基础功能和专项业务使用原生开发,提升软件性能和用户体验。电子地图使用HTML5技术开发,WEB端和移动端可使用同一地图模块。

2.2基于SpringBoot框架服务端应用

系统采用SpringBoot框架构建服务端应用。SpringBoot使用“习惯优于配置”的设计理念,避免烦琐笨重的配置工作、低下的开发效率、复杂的部署流程以及第三方技术集成难度大等问题,让更专注于业务逻辑而非环境配置。应用集成SpringDataJPA做为持久层,SpringData简化了基于Spring框架应用的数据库访问,提供统一的Repository接口实现CRUD、分页、排序等相关操作,也提供了统一的模板类;遵循JPA规范,简化了现有持久化的开发,使用注解即可满足大多数据库操作,同时支持原生SQL实现复杂的逻辑操作。采用基于Spring框架的WEB应用安全性解决方案SpringSecurity实现用户认证和方法级授权功能。形成前后端分离的应用模式,使开发和部署更加高效、更加灵活。

2.3SpringSecurity与JWT身份认证

JsonWebToken(JWT),是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。JWT由头部(header)、载荷(payload)和签证(signature)组成,头部声明类型和加密算法;载荷存放有效信息,一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息;签证存放JWT的签发和认证信息。利用SpringSecurity的Filter特性自定义一个请求拦截器,在Securit配置安全请求外的请求都将先进入拦截器,可以验证JWT荷载的用户身份、登录时间等信息是否有效,继而判断是否继续执行。SpringSecurity和JWT身份认证避免服务端保留大量认证信息或会话信息,适合用于前后端分离、单线登录、分布式部署等场景。

2.4Oracle和Redis存储技术

系统采用Oracle和redis混合存储技术。Oracle是常有的关系型数据库,提供系统持久化底层支持,OracleSpatial插件提供了在Oracle数据库中快速有效地存储、访问和分析空间数据的能力。Redis是一种运行在内存中的key-value数据库,性能极高,能支持超过100K+每秒的读写频率;且数据类型丰富,支持二进制案例的Strings、Lists、Hashes、Sets及OrderedSets数据类型操作。基于两种数据库特性,Oracle数据库用于系统数据和业务数据的持久化,Redis数据库用于高频读取低频写入的数据,以提高数据访问效率。

3数据库设计

规划实施移动巡查系统的数据由运维数据、业务数据和空间数据三部分组成。运维数据指能支撑系统正常运行的最基本的数据集合,主要包括用户表、角色表、部门表、岗位表、日志表等。业务数据是用户使用系统产生的过程或成果数据,包括用户产生的地图查询数据、核查数据、巡查数据等等;空间数据主要是WMS和WMTS数据服务,包括天地图影像、矢量地图服务,国土空间规划成果地图服务以及遥感监测数据服务。系统关键数据表格见表1至表5。

4系统功能实现

规划实施移动巡查系统分为WEB端、移动端和服务端,采用前后端分离的应用模式。数据层面采用主流Oracle数据库,集成OracleSpatial插件管理和存储地理信息数据,使用Redis数据库作为缓存支持。WEB端使用Vue.js框架快速构建应用,基于axois实现数据交互,开发包括用户体系配置、资源配置、关联配置等运维系统主体功能。移动端基于Android平台开发,采用原生与H5的混合开发模式。原生开发搭建AndroidMVP架构,集成Okhttp3、Retrofit2、Rxjava2等技术,H5部分使用Openlayers构建电子地图,结合GPS定位、摄像头、方向传感器等硬件设备,实现GIS地图、个人工作台、综合查询等功能,而且定制了专项督查任务,为督查工作提供移动终端。服务端基于SpringBoot架构构建,集成了SpringDataJPA、SpringSecurity等技术,提供rest、restful风格的服务支撑。除了满足Web端和移动端提供数据接口,服务端还实现了外部系统用户体系同步、专项督查接口对接等功能。系统基于用户体系运行,根据不同角色权限分配相应资源,构建针对不同用户群体的移动端应用,实现个性化定制需求。本篇只介绍系统主要功能的实现。

4.1数据库建库

系统数据主要来源于用户请求、数据采集、运维管理和外部数据同步。用户请求主要是用户对电子地图使用标绘、属性查询、综合查询等常规地图操作所产生的用户数据;数据采集是用户执行巡查任务或专项督查核查任务时,在现场采集的空间目标数据;运维管理是系统管理员通过后台为系统注册相关资源包括地图服务、专线模块等,并维护用户与资源的关联,针对不同群体定制移动应用;外部数据同步是接入外部业务时需要兼容以保障业务正常运行的基础数据,主要是外部业务的用户体系数据,如图2所示。

4.2电子地图模块

电子地图是移动端的核心模块,地图加载是电子地图显示的核心功能。电子地图引用了Openlayers开源JS库,加载WMS、WMTS、IME等格式的地图服务。地图提供浏览、定位、量测、标绘、图层开关等工具,实现了空间对象信息展示和空间数据导入导出等功能,并且封装部分功能接口供模块间使用。用户登录后获取该用户角色可读取的地图服务清单并逐个载入,完成电子地图构建,可浏览单个服务或多服务叠加展示,可加载多期历年影像对比展示。通过选取空间图形对象并发送请求,调取WMS服务空间查询接口查得结果,根据服务配置封装属性信息和空间位置并返回移动端,然后用图形高亮和信息板的方式同步展示。

4.3数据导入导出

系统提供空间数据导入导出功能。数据导入支持SHAPE、DWG、KML、TXT、CSV等格式文件,坐标系支持海南海口平面坐标系、海南琼中平面坐标系、海南三亚平面坐标系和海南昌江平面坐标系四大坐标系。文件经过服务端转换后返回WKT字符串并存储在移动端本地SQLite数据库,支持对导入数据的定位、查询和删除。数据导出支持SHAPE、KML、CSV格式文件,选取本地数据列表中的若干条空间数据,指定存储位置和文件格式即可导出空间数据。

4.4综合查询

综合查询的原理是将一个面状图形与目标服务进行空间比对并计算其空间关系。综合查询提供了站点查询和范围查询两种方式,站点查询是以用户选取的空间位置为中心,向外缓冲一定距离构成查询对象;范围查询是以用户在地图上自行任意绘制一个多边形为查询对象。利用ArcGISrestfulapi的空间分析能力,计算用户查询对象与总体规划数据、历年地表覆盖数据、历年土地利用现状数据、历年影像数据的空间关系,统筹各类相交区域的类型和面积,最终形成一张图表结合的分析报告,且可生成综合查询报告书。查询记录与用户关联,支持用户对查询结果列表管理,支持对查询结果的查看详情、删除和下载。4.5数据采集任务管理除了支持本地业务,还开通了对外部系统的业务对接。专项督查模块是参考外部WEB端系统,结合实际的业务需求,开发定制化表单及流程。专项模块与电子地图交互实现图斑定位、属性查询等功能,充分发挥空间优势。定制化表单不仅提供基础属性采集,还借助GPS、摄像头、方向传感器、存储等硬件设备,采集带方位角的照片、视频等多媒体资料。服务端集成外部系统提供的接口,实现专项数据条件查询、详情查询、数据保存,为专项督查提供移动端工作平台。

5结束语

规划实施移动巡查系统经过持续拓展和优化已达到稳定状态,并且已投入实际使用阶段。系统面向不同用户群体提供定制化功能模块组合,不仅满足用户对空间信息的基本需求,还结合专项督查模块充分发挥电子地图的优势,为专项督查工作提供有效的支撑和辅助作用。为保证系统保持耐久、鲜活的生命力,未来将继续优化服务效率,强化兼容性、扩展性,提升用户体验,在保障系统稳定前提下,提供更多样化的功能工具,持续开放外部业务对接入口,为用户提供更优质的交互体验和更可靠的辅助支持。

作者:陈德胜 张苗 黄伟招 谭武 王春晓 单位:自然资源部海南基础地理信息中心