|
@@ -1115,23 +1115,32 @@ export default {
|
|
|
async locationFeatureWhere(layerId, where, setting) {
|
|
|
this.spinShow = true;
|
|
|
const layerById = this.$refs.configLayer.getLayerConfigById(layerId);
|
|
|
- await arcgisQuery(
|
|
|
- `${layerById.url}/${this.layerIndex}/query`,
|
|
|
- {
|
|
|
- outSR: getSrid(this.map),
|
|
|
- where,
|
|
|
- ...setting,
|
|
|
- },
|
|
|
- true
|
|
|
- ).then(({ features }) => {
|
|
|
- let feature = features[0];
|
|
|
- const geometry = feature.getGeometry();
|
|
|
- const wkt = WkxGeometry.parseGeoJSON(
|
|
|
- new GeoJSON().writeGeometryObject(geometry)
|
|
|
- ).toWkt();
|
|
|
- feature.set("wkt", wkt);
|
|
|
- this.feature = feature;
|
|
|
- });
|
|
|
+ if (layerById.serverType === 'wms') {
|
|
|
+ await GeoServerQuery(`${layerById.queryUrl}`, {
|
|
|
+ typeName: layerById.params.layers,
|
|
|
+ cql_filter: where
|
|
|
+ }, true).then(({ features }) => {
|
|
|
+ this.feature = features[0]
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ await arcgisQuery(
|
|
|
+ `${layerById.url}/${this.layerIndex}/query`,
|
|
|
+ {
|
|
|
+ outSR: getSrid(this.map),
|
|
|
+ where,
|
|
|
+ ...setting,
|
|
|
+ },
|
|
|
+ true
|
|
|
+ ).then(({ features }) => {
|
|
|
+ let feature = features[0];
|
|
|
+ const geometry = feature.getGeometry();
|
|
|
+ const wkt = WkxGeometry.parseGeoJSON(
|
|
|
+ new GeoJSON().writeGeometryObject(geometry)
|
|
|
+ ).toWkt();
|
|
|
+ feature.set("wkt", wkt);
|
|
|
+ this.feature = feature;
|
|
|
+ });
|
|
|
+ }
|
|
|
this.spinShow = false;
|
|
|
},
|
|
|
async locationMaskFeatureHttp(
|