作者:Dist 时间: 2020-10-16
普通 SOE 台账
**接口方式** | Http RESTFul WebService | ||
---|---|---|---|
**接口名称** | landCompositionStatistics | ||
**HTTP 提交******方式**** | GET、POST | ||
**接口描述** | 综合台账接口 | ||
**地址** | |||
**输入参数** | **参数名** | **类型** | **描述** |
layerName | string | 图层名(必选) | |
classifyField | string | 分类字段名(必选) | |
geometry | Json | 自定义查询范围图形(可选) | |
whereClause | string | 行政区查询条件(可选) | |
dicName | string | 分类字典文件名(可选) | |
**输入******参数****实例**** | GET:(1) 以行政区为单位进行缓存计算—无范围、无条件整体统计 layerName=总规规划用地 classifyField=YDDMdicName=城规用地分类用地平衡或 dicName=””其他参数为 null(2) 根据行政区获取数据—有属性条件自定义统计 layerName=总规规划用地 classifyField=YDDMdicName=城规用地分类用地平衡或 dicName=””whereClause= xzqLevel=0& xzqName=福州市其他参数为 null 说明:xzqLevel——0: 国,1: 省,2: 市,3: 区县,4: 乡镇,5: 村(3) 自定义范围计算—有范围条件自定义统计 layerName=总规规划用地 classifyField=YDDMdicName=城规用地分类用地平衡或 dicName=””其他参数为 nullgeometry= {"rings":[[[119.27877807617188,25.740250241229266],[119.27990618983969,25.740214788829014],[119.28102985135827,25.74010857154268],[119.28214462614889,25.739932008561382],[119.2832461147048,25.739685796698527],[119.28840490416329,25.737453389152623],[119.27764996250406,25.740214788829014],[119.27877807617188,25.740250241229266]]]} | ||
**调用******成功**** | 状态 | 业务码 | 说明 |
success | 1000 | 成功获取数据 | |
**调用******成功输出实例**** | 正确结果示例 | 参考附件 | |
错误结果示例 | |||
异常结果示例 | |||
**调用失败** | 状态 | 业务码 | 说明 |
fail | 2000 | 程序错误 | |
error | 2010 | 传参错误 | |
error | 2020 | 配置错误 |
附件:
开发说明:
配置文件位置设置:
字典表配置:配置文件节点:DicFilePath
结果文件位置:配置文件节点:ResultPath
无范围无条件整体统计:
1)通过配置的行政区划级别和服务图层 URL 获得地图服务中的行政区划的 Geometry
2)判断是否采用字典统计,如果是,解析获得用地字典表的结构
3)利用空间要素图层和行政区范围作 esriSpatialRelIntersects(空间相交)分析计算不同等级的行政区用地;如果配置有用地字典表,则通过字典统计;反之,则通过行政区统计;
4)将统计结果保存为 json 文件
另外有一个问题,目前版本代码好像只能通过用地分类字典统计,如下图:
有范围条件自定义统计—即 geometry 参数不为空,指定空间范围统计
步骤与整体统计差不多,只是不用通过地图服务获取 Geometry 了,而是直接解析 geometry 参数获得空间范围,然后利用空间要素图层和空间范围作 esriSpatialRelIntersects(空间相交)分析计算得到统计结果,返回的结果中包含统计结果,不生成 json 文件
有属性条件自定义统计—即 whereClause 参数不为空,指定行政区划统计
有属性条件自定义统计是直接从整体统计结果中查询获取到具体的行政区划统计结果,返回的结果中包含统计结果,不生成 json 文件
是一个控制台程序,可以用于统计多个图层的用地情况,但是看代码只能进行无条件无范围的整体统计
配置文件位置:..\bin\Conf\configInfo.properties
WorkDbConnStr:空间库直连,获得统计图层
ConfigPath:普通 SOE 台账的配置文件路径
LayerNames:用于获取空间库图层,可以配置多个图层名
高级统计台账只是在普通台账的基础上套了一个循环,可以统计多个图层,另外因为不是以 SOE 服务的形式,所以不会因为请求时间过长而导致无法进行统计。