| 
					
				 | 
			
			
				@@ -1,28 +1,14 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    class="sm-panel sm-function-module-query" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    v-show="PoinyQueryShow && vectorShow" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    v-drag 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  <div class="sm-panel sm-function-module-query" v-show="PoinyQueryShow && vectorShow" v-drag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <div class="sm-panel-header"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <span>{{ Resource.PoinyQuery }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <span class="closeBtn" @click="toggleVisibility">×</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <!-- <div class="sm-function-module-content-btn"> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <div class="btnList"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <span 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        v-for="(item, index) in actionOptions" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        class="icon-span" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        :title="item.lable" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        :class="item.isSelect ? 'selected-icon' : ''" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        @click="changleQueryItem(item)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <i 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          class="iconfont iconSize" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          :class="item.iconName" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          style="margin-top: 0px" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        ></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <span v-for="(item, index) in actionOptions" :key="index" class="icon-span" :title="item.lable" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        :class="item.isSelect ? 'selected-icon' : ''" @click="changleQueryItem(item)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <i class="iconfont iconSize" :class="item.iconName" style="margin-top: 0px"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <!-- <el-button type="primary" size="small" @click.stop="mapLayerQuery" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         >点击</el-button 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -33,51 +19,28 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <div class="sm-function-module-content-tabs"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <el-tabs @tab-click="handleTabClick" v-model="activeLayerId"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <el-tab-pane 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          :label="item.label" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          :name="item.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          v-for="(item, index) in layerList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        ></el-tab-pane> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-tab-pane :label="item.label" :name="item.id" v-for="(item, index) in layerList" :key="index"></el-tab-pane> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </el-tabs> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <div class="sm-function-module-content-table"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <el-collapse 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        :value="activeNames" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        @change="handleCollapseChange" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        v-if=" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          activeLayerId && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          queryResults[activeLayerId] && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          queryResults[activeLayerId].length > 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <el-collapse-item 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          :title="'查询结果' + (index + 1)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          :name="'查询结果' + (index + 1)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          v-for="(item, index) in queryResults[activeLayerId]" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-collapse :value="activeNames" @change="handleCollapseChange" v-if=" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        activeLayerId && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        queryResults[activeLayerId] && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        queryResults[activeLayerId].length > 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      "> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-collapse-item :title="'查询结果' + (index + 1)" :name="'查询结果' + (index + 1)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-for="(item, index) in queryResults[activeLayerId]" :key="index"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <template slot="title"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             查询结果{{ index + 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }}<i 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              title="定位" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              class="header-icon el-icon-s-promotion flyBtn2" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              @click.stop="flyTo(index)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            ></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }}<i title="定位" class="header-icon el-icon-s-promotion flyBtn2" @click.stop="flyTo(index)"></i> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <el-table 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :data="item" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :show-header="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            border 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            style="width: 100%" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :header-cell-style="{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              background: 'rgba(10, 25, 38, 0.6)', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              color: '#66b1ff', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              fontSize: '14px', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              fontFamily: 'Microsoft YaHei', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              fontWeight: '400', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-table :data="item" :show-header="false" border style="width: 100%" :header-cell-style="{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            background: 'rgba(10, 25, 38, 0.6)', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            color: '#66b1ff', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            fontSize: '14px', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            fontFamily: 'Microsoft YaHei', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            fontWeight: '400', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <el-table-column prop="name" label="字段" width="100"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <el-table-column prop="value" label="值" width="208"> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -106,7 +69,7 @@ import * as turf from "@turf/turf"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let gwtype; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let query_click = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let manager_layer_png = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let dataSourceLayer =null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+let dataSourceLayer = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   name: "clickQuery", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   components: { CockpitVector, MultiLevelQuery }, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -182,7 +145,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         : true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  created() {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  created() { }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   watch: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     activeLayerId(val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (val && val != "0") { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -238,7 +201,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     toggleVisibility() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       this.removeMapLayerQuery(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      this.remove_query_click() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.remove_query_click(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       store.setToolBarAction(9); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       tdsy.remove(false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       store.state.vectorData = []; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -378,43 +341,65 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           eneityName.indexOf("雨水") > -1 || 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           eneityName.indexOf("管线") > -1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          let buildingLayer = scene.layers.find(eneityName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          if (buildingLayer.getSelection().length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            const selectedId = Number(buildingLayer.getSelection()[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            buildingLayer.getAttributesById([selectedId]).then(function (atts) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              if (atts) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                Pid = atts["管线段"] || atts["物探点"]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                var length = Object.keys(atts).length; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                var des; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                for (var i = 0; i < length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  var key = Object.keys(atts)[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  var value = atts[key]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  // console.log(key); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  // console.log(value); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  if ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    key.toLowerCase().indexOf("shape") < 0 && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    key.toLowerCase().indexOf("sm") && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    value != "" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    tempArr.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      name: key, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      value: value, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          for (let i = 0; i < store.state.vectorlayerlist.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let obj = store.state.vectorlayerlist[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log(obj.url); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let str1 = eneityName.match(/@(\S*)#/)[1]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let str2 = eneityName.match(/(\S*)@/)[1]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let str3 = str1 + ":" + str2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let url1 = obj.url.replace("3D-", "data-"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let url2 = url1.replace( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              "realspace", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              "data/featureResults.rjson?returnContent=true" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let queryByIDParameters = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              getFeatureMode: "ID", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              datasetNames: [str3], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              ids: [pickedFeature.id], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let e = await this.mapQuery(url2, queryByIDParameters); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (e && e.totalCount > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              that.layerList.push(store.state.vectorlayerlist[i]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              for (let u = 0; u < e.features.length; u++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let cur = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                var linSAr = JSON.parse(JSON.stringify(e.features[u])); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (e.features[u].fieldNames) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  linSAr.fieldNames.forEach((fieldName, i) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    let v = linSAr.fieldValues[i]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (v != "" && !isNaN(parseFloat(v))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      v = Math.round(parseFloat(v) * 100) / 100; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    // cur.push({ name: fieldName, value: v }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      fieldName.toLowerCase().indexOf("shape") < 0 && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      fieldName.toLowerCase().indexOf("sm") && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      v != "" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      cur.push({ name: fieldName, value: v }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  //获取图层id的参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  let substring = pickedFeature.primitive._baseUri.query; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  for (let p = 0; p < store.state.vectorlayerlist.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (store.state.vectorlayerlist[p].id == substring) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      that.layerList.push(store.state.vectorlayerlist[p]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  that.queryResults[substring] = [cur]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  that.queryResultsGeom[substring] = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  that.activeLayerId = substring; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  that.$message({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    message: "查询结果为空!", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    type: "warning", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    customClass: "messageIndex", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				               } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              //获取图层id的参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              let substring = pickedFeature.primitive._baseUri.query; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              for (let p = 0; p < store.state.vectorlayerlist.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (store.state.vectorlayerlist[p].id == substring) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  that.layerList.push(store.state.vectorlayerlist[p]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                  break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              that.queryResults[substring] = [tempArr]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              that.queryResultsGeom[substring] = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              that.activeLayerId = substring; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |