소스 검색

geoserver框选

maxiaoxiao 6 달 전
부모
커밋
17739d54f0
1개의 변경된 파일14개의 추가작업 그리고 14개의 파일을 삭제
  1. 14 14
      src/components/Query/clickQuery/clickQuery.vue

+ 14 - 14
src/components/Query/clickQuery/clickQuery.vue

@@ -665,14 +665,13 @@ export default {
           ? obj.url.indexOf("geoserver")
           : obj.url.indexOf("siweiserver");
       let url = obj.url.substring(0, ind + 9) + "/ows";
-      let point =
-        "109.63004004171668,18.23499241311749 109.63028021461876,18.23213821035424 109.63097884008462,18.234344782708543 109.63004004171668,18.23499241311749";
+
       let pointml = `<gml:Point srsName='EPSG:4326'><gml:coordinates>
           ${xy.lng},${xy.lat}</gml:coordinates></gml:Point>`;
       let polygonml = `<gml:Polygon srsName="EPSG:4326">
           <gml:outerBoundaryIs>
             <gml:LinearRing>
-              <gml:coordinates> ${point} </gml:coordinates>
+              <gml:coordinates> ${xy.points} </gml:coordinates>
             </gml:LinearRing>
           </gml:outerBoundaryIs>
         </gml:Polygon>`;
@@ -683,7 +682,9 @@ export default {
         typeName: `${obj.fwgzkj}:${obj.fwmc}`,
         outputFormat: "application/json",
         srsName: "EPSG:4326",
-        filter: `<Filter xmlns='http://www.opengis.net/ogc' xmlns:gml='http://www.opengis.net/gml'><Intersects><PropertyName>geom</PropertyName> ${polygonml}</Intersects></Filter>`,
+        filter: `<Filter xmlns='http://www.opengis.net/ogc' xmlns:gml='http://www.opengis.net/gml'><Intersects><PropertyName>geom</PropertyName> ${
+          xy.lng ? pointml : polygonml
+        }</Intersects></Filter>`,
       };
       console.log("----", params);
       let res = await axios.get(url, { params });
@@ -907,7 +908,7 @@ export default {
           this.mapQuerys("mapLayerQuery"); //图层点击事件
           this.remove_query_click();
           viewer.entities.removeAll();
-          common.clearHandlerDrawing("Polygon");
+          // common.clearHandlerDrawing("Polygon");
           break;
         }
         case 2: {
@@ -952,17 +953,16 @@ export default {
       }
       common.handlerDrawing("Polygon").then(
         (res) => {
-          // console.log(res.positions, "------");
-          //过滤掉高度
-          const filteredArr = res.positions.filter((item, index) => {
-            if ((index + 1) % 3 !== 0) return item;
-          });
-          filteredArr.push(res.positions[0]);
-          filteredArr.push(res.positions[1]);
-          console.log(filteredArr, "max-----");
           store.state.vectorlayerlist.forEach((obj) => {
             if (obj.serverType == "geoserver") {
-              // this.getGeoserver(xy, obj);
+              let points = "";
+              res.positions.forEach((item, index) => {
+                if ((index + 1) % 3 == 1) points += item + ",";
+                if ((index + 1) % 3 == 2) points += item + " ";
+              });
+              points += res.positions[0] + ",";
+              points += res.positions[1] + " ";
+              this.getGeoserver({ points }, obj);
             } else {
               //     if (!obj.fwgzkj && !obj.fwmc) {
               //   continue;