gis.script.gisLayerinfo={}; gis.script.gisidTo={}; gis.script.featuresBySQLServiceprocessAsync=true; gis.script.locationLayerRunRemoveAllFeatures=true; gis.script.gis_gk_key="GK_BASIC_JSJY_GK_GK"; gis.script.popSize={GK_BASIC_JSJY_GK_GK:{width:320,height:320}};//gh:12874 /* * 用于树节点定位,根据配置信息读取空间数据信息, */ gis.script.loadgisService = function(treeNode,objdata){ //alert(treeNode.treeNodeType+"--"+objdata.id); var dataServices=gisConfigBean.dataconfig; if(dataServices){ gis.script.consolelog('dataServices',dataServices); for(var n in dataServices){ var data=gisConfigBean.dataconfig[n]; if(data.gisLayerinfoKey&&treeNode.treeNodeType&&treeNode.treeNodeType==data.gisLayerinfoKey){ //alert(treeNode.treeNodeType+"--"+objdata.id); var originaldata = gisConfigBean.dataconfig[n]; var data=jQuery.extend(true, {}, originaldata); if(data.Model&&data.Model[gis.script.modelid]){ var model=data.Model[gis.script.modelid]; data.datasetNames=data.datasetNames.split(","); data.fields=data.fields.split(","); data.cachedata=model.cachedata||data.cachedata; data.zoom=model.zoom||data.zoom; data.attributeFilter=data.gisLayerinfoAttrKey+"="+objdata.id; data.treelocationHighlight=model.treelocationHighlight||"false"; data.selectOpenPopfun=model.onSelectOpenPopkey; data.url=data.url||defdataUrl; //alert(data.attributeFilter); //console.log("data",data); gis.script.loadServicetreelocation(data,objdata); } break; } /* if(data.Model&&data.Model[gis.script.modelid]){ var model=data.Model[gis.script.modelid]; data.datasetNames=data.datasetNames.split(","); data.fields=data.fields.split(","); data.cachedata=model.cachedata||data.cachedata; data.zoom=model.zoom||data.zoom; gis.script.loadLayerFeaturesBySqls(data); } */ } } } /* * 根据空间数据信息定位 */ gis.script.loadServicetreelocation = function(o,objdata){ var featureParam = new SuperMap.REST.FilterParameter({ //name: o.name, fields:o.fields, attributeFilter:o.attributeFilter }); var featuresBySQLParams=new SuperMap.REST.GetFeaturesBySQLParameters({ //toIndex:65536, toIndex:-1, queryParameter:featureParam, datasetNames:o.datasetNames }); var featuresBySQLService = new SuperMap.REST.GetFeaturesBySQLService(o.url, { eventListeners: { "processCompleted":function(e){ var result=e.result; //console.log('result>>',result); var features=result.features; if(features&&features.length){ //alert(features.length); var feature = features[0]; var centerLonLat = feature.geometry.getBounds().getCenterLonLat(); if(modifyvectorLayer){ try{ gis.script.clearAllDeactivate(); nowModifyFeature=feature.clone(); nowModifyFeature.attributes=nowModifyFeature.attributes||{} nowModifyFeature.attributes.gisEditLayerinfoKey=o.gisLayerinfoKey; nowModifyFeature.attributes.featureidval=feature.fid; nowModifyFeature.attributes.editinfoobj={lon:centerLonLat.lon,lat:centerLonLat.lat,zoom:o.zoom||6}; //console.log("1.nowModifyFeature.attributes.editinfoobj",nowModifyFeature.attributes.editinfoobj); modifyvectorLayer.removeAllFeatures(); modifyvectorLayer.addFeatures(nowModifyFeature); //console.log('o>>',o); }catch(e){ } } if(locationLayer){ locationLayer.removeAllFeatures(); if(o.treelocationHighlight&&o.treelocationHighlight=="true"){ var fillColor="#a4a5a7";//"#ffff00" var fillOpacity=0.5; /* if(o.gisLayerinfoKey&&(o.gisLayerinfoKey=="GK_BASIC_JSJY_JYR_MT"||o.gisLayerinfoKey=="GK_BASIC_JSJY_JYR_BW")){ fillColor="#000000"; fillOpacity=0.8; //alert(fillOpacity); } */ feature.style = { fill:true, stroke:true, strokeColor: "#ffff00", strokeWidth: 3, //pointerEvents: "visiblePainted", //fillColor: "#a4a5a7", strokeDashstyle:"solid", fillColor: fillColor, fillOpacity: fillOpacity }; //bwvectorLayer.addFeatures(feature); locationLayer.addFeatures(feature); try{ labelLayer.removeAllFeatures(); if(!o.gisLayerinfoKey||o.gisLayerinfoKey!="GK_BASIC_JSJY_JYR"){ if(o.labelfield&&feature.attributes[o.labelfield]){ var geoText = new SuperMap.Geometry.GeoText(centerLonLat.lon, centerLonLat.lat,feature.attributes[o.labelfield]); var geotextFeature = new SuperMap.Feature.Vector(geoText); labelLayer.addFeatures([geotextFeature]); } } }catch(e){ } try{ if(objdata&&objdata.showPop&&objdata.showPop=='true'){ //console.log('o>>',o); if(o&&o.selectOpenPopfun&&gis.script[o.selectOpenPopfun]){ feature.attributes.onSelectOpenPopkey=o.onSelectOpenPopkey; feature.attributes.gisLayerinfoAttr=feature.attributes[o.gisLayerinfoAttrKey]; feature.attributes.infokey=o.gisLayerinfoKey+"_"+feature.attributes.gisLayerinfoAttr; gis.script[o.selectOpenPopfun](feature); } } }catch(e){ } } } //gis.script.locationLayerRunRemoveAllFeatures=false; map.setCenter(new SuperMap.LonLat(centerLonLat.lon, centerLonLat.lat),o.zoom||6); } }, "processFailed": gis.script.sqlProcessFailed } }); featuresBySQLService.processAsync(featuresBySQLParams); //featuresBySQLService.processAsync(featuresBySQLParams); } /* * 根据配置信息读取空间数据信息,在相关图层绘制相应图层信息,包括港口、港区、经营人、码头、泊位、船舶 */ gis.script.loadLayerdata = function() { /* gis.script.loadLayerSql({ attributeFilter:"smid>0", name:"港口@合并#3", fields:["smid","name","类别"], gisLayerinfoKey:gis.script.gis_gk_key },gis.script.gkonSelect); */ /* var fParamList=[{ attributeFilter:"smid>0 and name!=''", name:"港口@合并#3", fields:["smid","name","类别"], gisLayerinfoKey:gis.script.gis_gk_key, onSelectOpenPopkey:"openPop_GK" }]; gis.script.loadLayerQueryBySqls(fParamList); */ /* gis.script.loadLayerFeaturesBySqls({ url:gis.script.iserverUrl+"/data-gk/rest/data", name: "港口@合并", attributeFilter: "SMID>0 and name!=''", datasetNames:["合并:港口"], fields:["smid","name","类别",'港口代码'], gisLayerinfoKey:gis.script.gis_gk_key, gisLayerinfoAttrKey:'港口代码', processCompleted:gis.script.gkonSelect, onSelectOpenPopkey:"openPop_GK"}); */ /* gis.script.loadLayerFeaturesBySqls({ url:"http://192.168.39.120:8090/iserver/services/data-ST/rest/data", name: "L_GK_PT@gkzyYS", attributeFilter: "SMID>0", datasetNames:["gkzyYS:L_GK_PT"], fields:["smid","name","类别",'港口代码'], gisLayerinfoKey:gis.script.gis_gk_key, gisLayerinfoAttrKey:'港口代码', //processCompleted:gis.script.gkonSelect, onSelectOpenPopkey:"openPop_GK"}); */ //gis.script.loadzyqsjServices("zyqsjServices",{zyid:47}); //gis.script.loadgisService({treeNodeType:"GK_BASIC_JSJY_GK_ZYQ"},{id:47}) //gis.script.loadgisService({treeNodeType:"GK_BASIC_JSJY_GK_GQ"},{id:32100101,showPop:"true"}) var dataServices=gisConfigBean.dataconfig; if(dataServices){ gis.script.consolelog('dataServices',dataServices); for(var n in dataServices){ var originaldata = gisConfigBean.dataconfig[n]; var data=jQuery.extend(true, {}, originaldata); if(data.Model&&data.Model[gis.script.modelid]){ var model=data.Model[gis.script.modelid]; data.datasetNames=data.datasetNames.split(","); data.fields=data.fields.split(","); data.cachedata=model.cachedata||data.cachedata; data.zoom=model.zoom||data.zoom; data.processCompleted=model.processCompleted; data.onSelectOpenPopkey=model.onSelectOpenPopkey; //alert(data.processCompleted+"--"+data.onSelectOpenPopkey); data.modelObj=model; //defdataUrl data.url=data.url||defdataUrl; //alert(data.label+"---"+data.url); gis.script.loadLayerFeaturesBySqls(data); } } } } /* * 读取空间数据信息,在相关图层绘制相应图层信息 */ gis.script.loadLayerFeaturesBySqls = function(o){ var featureParam = new SuperMap.REST.FilterParameter({ //name: o.name, fields:o.fields, attributeFilter:o.attributeFilter }); var featuresBySQLParams=new SuperMap.REST.GetFeaturesBySQLParameters({ //toIndex:65536, toIndex:-1, queryParameter:featureParam, datasetNames:o.datasetNames }); var featuresBySQLService = new SuperMap.REST.GetFeaturesBySQLService(o.url, { eventListeners: { "processCompleted":function(data){ gis.script.sqlProcessCompleted(data,o); }, "processFailed": gis.script.sqlProcessFailed } }); featuresBySQLService.processAsync(featuresBySQLParams); } /* * processCompleted回调函数,读取空间数据信息,在相关图层绘制相应图层信息 */ gis.script.sqlProcessCompleted=function(e,o){ var result=e.result; gis.script.consolelog('result::',result); gis.script.consolelog('o::',o); var features=result.features; //console.log("features",features); if(features&&features.length){ gis.script.gisLayerinfo[o.gisLayerinfoKey]={}; for(var k=0;k>>",feature) zyqvectorLayer.addFeatures(feature); } /* * 锚地业区feature */ gis.script.mdonSelect=function(feature,o){ //console.log("2>>>",feature) mdvectorLayer.addFeatures(feature); } /* * 绘画经营人feature,并且添加经营人名称 */ gis.script.jyronSelect=function(feature,o){ /* var sid=feature.attributes.smid; if(sid==51){ // 浅层复制(只复制顶层的非 object 元素) //var newObject = jQuery.extend({}, oldObject); // 深层复制(一层一层往下复制直到最底层) //var featureDv = $.extend(true, {}, feature); var feature2=feature.clone() feature2.style = { strokeColor: "#304DBE", strokeWidth: 2, pointerEvents: "visiblePainted", fillColor: "#ff0000", fillOpacity: 0.5 }; locationLayer.addFeatures(feature); //alert(feature.style);alert(featureDv.style); } */ //gis.script.consolelog('pointFeature:',feature); //console.log('pointFeature:',feature); jyrvectorLayer.addFeatures(feature); try{ if(feature.attributes&&o.labelfield){ var centerLonLat = feature.geometry.getBounds().getCenterLonLat(); var geoText = new SuperMap.Geometry.GeoText(centerLonLat.lon, centerLonLat.lat,gis.script.labelfontformat(feature.attributes[o.labelfield],5)); var geotextFeature = new SuperMap.Feature.Vector(geoText); jyrlabelLayer.addFeatures([geotextFeature]); } }catch(e){ } } /* * 格式化绘制名称 */ gis.script.labelfontformat=function(textval,count){ if(gis.script.isNotBlank(textval)){ if(count&&gis.script.isNum(count)){ //console.log("textval",textval); var textarray=textval.split(""); var newtextarray=[]; if(textarray.length>count){ for(var i=0;i0&&result.recordsets.length==list.length){ for(var i=0;i0){ var recordset=result.recordsets[0]; gis.script.gisLayerinfo[o.gisLayerinfoKey]={}; for(var k=0;k>',feature); //alert(feature.attributes.gisLayerinfoAttr); if(feature.attributes&&feature.attributes.gisLayerinfoAttr){ gis.script.jsonAjax({url:contextPath+"/zygl/queryZYQbyZYID.html",async:true,data:{id:feature.attributes.gisLayerinfoAttr}}, function(data){ if(data&&data.success&&data.message){ var popup = gis.anchored.popupHtml(feature.geometry.getBounds().getCenterLonLat(),{width:460,height:210},data.message,e); gis.anchored.addPopup(map,popup,feature); } }); } } gis.script.openPop_MD=function(feature,e){ if(feature.attributes&&gis.script.isNotBlank(feature.attributes.gisLayerinfoAttr)){ gis.script.jsonAjax({url:contextPath+"/zygl/popupTableshow.html",async:true,data:{sqlid:"queryPopupMDById",id:feature.attributes.gisLayerinfoAttr,namespace:"2"}}, function(data){ //alert(JSON.stringify(data)); //console.log(1,data); if(data){ var dataext=jQuery.extend(true, {}, data); var popup = gis.anchored.popupHtml(feature.geometry.getBounds().getCenterLonLat(),{width:250,height:164,tconfig:"queryPopupMDById"},dataext,e); gis.anchored.addPopup(map,popup,feature); /* gis.script.jsonAjax({url:contextPath+"/zygl/popupTableshow.html",async:true,data:{sqlid:"queryPopupBWById",id:data.AQID||'-1',bwdm:data.BWDM||'-1',namespace:"3"}}, function(data2){ if(data2){ var dataext=jQuery.extend(true, data, data2); //console.log(3,dataext); dataext.GKSBSL=(dataext.GKSBSL1||0)+(dataext.GKSBSL2||0); var popup = gis.anchored.popupHtml(feature.geometry.getBounds().getCenterLonLat(),{width:500,height:256,tconfig:"queryPopupBWById"},dataext,e); gis.anchored.addPopup(map,popup,feature); } },function(jqXHR, textStatus, errorThrown){ //alert(jqXHR.responseText); }); */ } },function(jqXHR, textStatus, errorThrown){ //alert(jqXHR.responseText); }); } } gis.script.openPopNull=function(feature){ //var popup = gis.anchored.popup(feature.geometry.getBounds().getCenterLonLat(),{}); var popup = gis.anchored.popupHtml(feature.geometry.getBounds().getCenterLonLat(),{width:220,height:60},"
信息
无关联数据
"); gis.anchored.addPopup(map,popup); } gis.script.initLoadGisidTo = function(){ gis.script.jsonAjax({url:contextPath+"/zygl/gisidTo.html",contentType:'application/json;charset=utf-8',async:false,data:JSON.stringify({})}, function(data){ //alert(JSON.stringify(data)); gis.script.gisidTo=data; }); } /* * 封装的ajax调用 */ gis.script.jsonAjax= function(obj,successMethod,errorMethod){ var ajaxInfo={ type : 'post', dataType : 'json', //contentType : 'application/json;charset=utf-8', //timeout : 10000, //超时时间设置,单位毫秒 cache : false,// 不从缓存中去数据 async : true, //url : obj.url, //data : JSON.stringify(jsondate), //headers:headinfo, success : function(data) { if(successMethod){ successMethod(data); } }, error : function(jqXHR, textStatus, errorThrown) { //alert(jqXHR.responseText); if(errorMethod){ errorMethod(jqXHR, textStatus, errorThrown); } } }; ajaxInfo.url=obj.url; ajaxInfo.data=obj.data||{}; if(typeof(obj.async)!="undefined"){ ajaxInfo.async=obj.async } if(typeof(obj.contentType)!="undefined"){ //alert(obj.contentType); ajaxInfo.contentType=obj.contentType; } //alert(ajaxInfo); $.ajax(ajaxInfo); } gis.script.isNum=function(value){ if(typeof(value)!='undefined'){ var result = true; var pattern = /^\d*(\.\d*)?$/; if (!pattern.test(value)) result = false; var num = parseFloat(value); if (isNaN(num)) result = false; return result; } return false; } gis.script.isBlank=function(value){ if(value){ value=value+""; for(var i=0; i>',result); var features=result.features; if(features&&features.length){ } }, "processFailed": gis.script.sqlProcessFailed } }); featuresBySQLService.processAsync(featuresBySQLParams); } $(document).ready(function() { //预先加载 //gis.script.initLoadGisidTo(); //$.growlUI('提示', '删除成功!'); });