• 周五. 10月 7th, 2022

5G编程聚合网

5G时代下一个聚合的编程学习网

热门标签

智慧园林绿化养护管理信息平台结合GIS技术的研发

admin

11月 28, 2021

       近几年来,随着经济不断的发展,城市面积不断的扩大,城市管理中的园林绿化工作也在这种趋势下不断的发生着深刻改变。管养企业是否按制定的管养计划严格执行?绿化事件整改是否及时到位?绿地面积是否在稳步增长?管养的效果如何?如何客观评价管养企业的管养工作?这些都是我们各级管理者需要面对的问题。

  智慧园林绿化养护管理信息平台的开发思路以“考核”为核心,整个信息平台体现出“新、快、高、全、享”五个特点。

  智慧园林绿化养护管理信息平台的整个开发理念为:依托五大技术手段(全球卫星定位系统技术、地理信息系统技术、互联网、数据库技术、物联网技术),打造一个“智能化、可视化、流程化”的智慧园林绿化养护管理信息平台。本平台基于超图SuperMap GIS 9D平台开发而成。

  智慧园林绿化养护管理信息平台是集硬件、网络、通信、物联网、互联网、GPS、GIS、大数据、云计算等多种信息技术应用为一体的综合性信息平台。

  平台功能包括:

  一、 绿地信息系统

  采用无人机测绘,获得了绿地高清二维影像;采用倾斜摄影技术,快速生成三维模型,获得高清三维影像;将绿地网格的信息标注到高清二维影像中,所有绿地信息直观展现在平台中,实现了绿色资产可视化。

  

  二、 巡查事件管理系统

  开发了手机APP,在手机上完成日常监督管理工作,提供养护事件上报、处理、审核全流程可视,处理时限可控,通过文字与图片的结合,形成一个完整的管理闭环。  

  三、 考评考核系统

  按照“双随机”的考核要求,系统提供考核地点和考核专家在平台中可随机抽取;提供周检查信息表,月度考核信息表、季度考评信息表和历次考核信息统计;按照考评考核的权重,直接在系统中生成养护公司的打分结果,以此作为对各养护公司管养能力客观评价的重要依据,杜绝了人为因素的干扰。

  四、 物联网系统

  在绿化带中部署温湿度传感器、电导率、土壤盐度传感器,平台可实时显示土壤的温湿度以及肥力等信息;预先设置好上下限阈值,当传感器数值低于或高于设定的阈值时,平台自动发出告警信息,提示相关人员及时进行处理;平台还提供了联结视频监控探头的接口,提供绿化设施和绿地情况的实时监控图像,丰富了平台的监管内容。

  未来扩展应用还可远程控制喷灌系统开闭、病虫害监控等。

  五、绿色图章系统

  平台提供绿色图章申请资料上传,绿色图章审批,绿色图章验收,移植树木审批,绿地占用审批,树木修剪、砍伐审批等业务流程,彻底改变了以往人工报送的低效率工作方式,真正体现了让数据多跑路,让群众少跑腿的服务理念。

  六、其他扩展功能

  作为智慧园林绿化养护管理信息平台的有益补充,还开发了微信公众号用于发布园林绿化工作动态、普及园林知识、收集公众反馈意见和建议,与市民形成良性互动、共建共管机制。

  由于本平台目前在国内城管领域处于行业领先水平,当地政府主流媒体均作了报道。


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title data-i18n="resources.text_overlayAnalyst"></title>
<style>
        .control {
            position: absolute;
            top: 50px;
            right: 10px;
        }

        #map {
            position: absolute;
        }
    </style>
</head>
<body style=" margin: 0;overflow: hidden;background: #fff; 100%;height:100%;position: absolute;top: 0;">
<div id="map" style=" 100%;height:100%"></div>
<div id="control" class="control" style='350px'>
<div class="panel panel-default">
<div class='panel-heading'>
<h3 class='panel-title' data-i18n="resources.text_overlayAnalyst"></h3>
</div>
<div class='panel-body'>
<div class='input-group'>
<span class='input-group-addon'><span data-i18n="resources.text_sourceDataset"></span><span data-i18n="[title]resources.text_requiredField" style="color: red;"> * </span> </span>
<input id='datasetName' type='text' class='form-control' value='samples_processing_newyorkZone_R' /></div>
<p></p>
<div class='input-group'>
<span class='input-group-addon'><span data-i18n="resources.text_overlayDataset"></span>
<span data-i18n="[title]resources.text_requiredField" style="color: red;"> * </span></span>
<input id='datasetOverlay' type='text' class='form-control' value='samples_processing_newyorkResidential_R' />
</div>
<p></p>
<div class='input-group'>
<span class='input-group-addon'><span data-i18n="resources.text_analystMode"></span><span data-i18n="[title]resources.text_requiredField" style="color: red;"> * </span></span>
<select class='form-control' id='mode' name='mode'>
<option value='clip' selected data-i18n="resources.text_clip"></option>
<option value='intersect' data-i18n="resources.text_intersect"></option>
<option value='erase' data-i18n="resources.text_erase"></option>
<option value='union' data-i18n="resources.text_union"></option>
<option value='update' data-i18n="resources.text_update"></option>
<option value='identity' data-i18n="resources.text_identity"></option>
<option value='xor' data-i18n="resources.text_xor"></option>
</select>
</div>
<p></p>
<div class='input-group'>
<span class='input-group-addon' data-i18n="resources.text_retainedFieldSource"></span>
<input id='srcFields' type='text' class='form-control' value='LocationID' />
</div>
<p></p>
<div class='input-group' id='overlayField' style='display: none'>
<span class='input-group-addon' data-i18n="resources.text_retainedFieldOverlay"></span>
<input id='overlayFields' type='text' class='form-control' value='type' />
</div>
<p></p>
<div align='right'>
<input type='button' id='btn' class='btn btn-primary' data-i18n="[value]resources.text_analyst" />
</div>
</div>
</div>
</div>
<script type="text/javascript" src="../../dist/classic/include-classic.js"></script>
<script type="text/javascript" include="jquery,bootstrap,widgets" src="../js/include-web.js"></script>
<script type="text/javascript">
        var host = window.isLocal ? window.server : "https://iserver.supermap.io";
        var resultLayer,
            processingsUrl = host + "/iserver/services/distributedanalyst/rest/v1/jobs",
            mapURL = host + "/iserver/services/map-world/rest/maps/World",
            map = new SuperMap.Map("map", {
                controls: [
                    new SuperMap.Control.Navigation(),
                    new SuperMap.Control.Zoom(),
                    new SuperMap.Control.LayerSwitcher()

                ],
                allOverlays: true
            });
        var layer = new SuperMap.Layer.TiledDynamicRESTLayer("World", mapURL, null, {
            maxResolution: "auto"
        });
        layer.events.on({
            "layerInitialized": addLayer
        });

        function addLayer() {
            map.addLayers([layer]);
            map.setCenter(new SuperMap.LonLat(-73.95, 40.75), 12);
        }

        var processingService = new SuperMap.REST.ProcessingService(processingsUrl, {
            withCredentials: window.isLocal
        });
        SuperMap.SecurityManager.registerToken(processingsUrl, window.exampleToken);
        $("#mode").change(function () {
            var mode = $(this).val();
            if (mode == "update" || mode == "clip" || mode == "erase") {
                $("#overlayField").hide();
            } else {
                $("#overlayField").show();
            }
        });

        bindClick();

        function bindClick() {
            $('#btn').on('click', function () {
                if ($('#msg_container')[0]) {
                    $('#msg_container').remove();
                }
                widgets.loader.showLoader();
                if (map && resultLayer) {
                    map.removeLayer(resultLayer);
                }
                overlayGeoJobs();
            });
        }

        function overlayGeoJobs() {
            var overlayGeoJobParameter = new SuperMap.OverlayGeoJobParameter({
                datasetName: $('#datasetName').val(),
                datasetOverlay: $('#datasetOverlay').val(),
                mode: $('#mode option:selected').attr('value'),
                srcFields: $('#srcFields').val(),
                overlayFields: $('#overlayFields').val()
            });
            processingService.addOverlayGeoJob(overlayGeoJobParameter, function (serviceResult) {
                if (serviceResult.error) {
                    widgets.loader.removeLoader();
                    var errorMsg = serviceResult.error.errorMsg || "code: " + serviceResult.error.code;
                    widgets.alert.showAlert(resources.msg_createFailed + "<br>" + errorMsg, false);
                    return;
                }
                serviceResult.result.setting.serviceInfo.targetServiceInfos.map(function (info) {
                    if (info.serviceType === 'RESTMAP') {
                        SuperMap.FetchRequest.get(info.serviceAddress + '/maps').then(function (
                            response) {
                            return response.json();
                        }).then(function (result) {
                            var mapUrl = result[0].path;
                            resultLayer = new SuperMap.Layer.TiledDynamicRESTLayer(
                                "resultLayer", mapUrl, {
                                    transparent: true
                                });
                            resultLayer.events.on({
                                "layerInitialized": addLayer
                            });

                            function addLayer() {
                                map.addLayer(resultLayer);
                                widgets.loader.removeLoader();
                            }
                        });
                    }
                });
            });
        }
    </script>
</body>
</html>

发表回复

您的电子邮箱地址不会被公开。