searchBar Erweiterung für specialWFS: neuer Parameter für GFI Aufruf

Issue #1155 new
Carina Brühl created an issue

Beim Arbeiten an #1040 ist mir aufgefallen, dass der Dienst, der für die Suche von Bauplänen konfiguriert wurde, keiner der Bauplan Layer ist, der im Kartendienst als Layer eingebunden ist. Daher lässt sich das Ticket nicht ohne eine Erweiterung der Searchbar umsetzen. Die Idee wäre, dass es möglich ist, bei der Suche specialWFS einen WFS Layer, der nicht in der Karte vorhanden ist, einzubinden und diesen mit einem Layer, der für die Karte konfiguriert wurde, so zu verknüpfen, dass nach einer Suche und einem Klick auf das gehighlightete Suchergebnis ein GFI abgerufen werden kann, dass die Informationen eines anderen Layers enthält.

Beispiel: in specialWFS ist der Dienst BPläne eingebunden. Nach einer Suche wird ein Gebiet gehighlighted, ohne dass der Layer eingeblendet wird. Nach dem Klicken auf das gehighlightete Gebiet wird ein GFI des Layers Baupläne - Satzungsbeschluss angezeigt, der in der Karte eingebunden ist.

Beispielkonfiguration config.json:

        "searchBar": {
            "specialWFS": {
                "name": "translate#common:menu.tools.wfsSearch",
                "minChars": 1,
                "definitions": [
                    {
                        "url": "https://geoportal.regensburg.de/wfssearch?map=/data/ows/maps/bplan-wfs.map",
                        "name": "B-Plan (Position)",
                        "glyphicon": "glyphicon-th-large",
                        "typeName": "ms:bplan",
                        "propertyNames": [
                            "ms:NUMMER"
                        ],
                        "geometryName": "ms:msGeometry",
                        "icon": "hammer"
                    }
                ]
            },
            "startZoomLevel": 9,
            "recommendedListLength": 6,
            "tree": {
                "minChars": 1
            },
            "placeholder": "Suche nach: BPlan - Kartenebene",
            "geoLocateHit": true,
            "quickHelp": true
        },

Beispielkonfiguration services-internet.json:

    {
            "id": "Bebauungspläne_3",
            "name": "Satzungsbeschluss",
            "url": "https://mapservice.regensburg.de/cgi-bin/mapserv?map=/data/ows/maps/bebauungsplaene.map",
            "typ": "WMS",
            "layers": "bebauungsplan_satzungsbeschluss",
            "format": "image/png",
            "version": "1.3.0",
            "singleTile": false,
            "transparent": true,
            "transparency": 0,
            "urlIsVisible": true,
            "tilesize": 512,
            "gutter": 0,
            "minScale": "0",
            "maxScale": "100000",
            "gfiAttributes": "showAll",
            "gfiTheme": "default",
            "legend": "https://mapservice.regensburg.de/cgi-bin/mapserv?map=/data/ows/maps/bebauungsplaene.map&version=1.3.0&service=WMS&request=GetLegendGraphic&sld_version=1.1.0&layer=bebauungsplan_satzungsbeschluss&format=image/png&STYLE=default",
            "datasets": [
                  {
                        "customMetadata": true,
                        "csw_url": "https://mapservice.regensburg.de/cgi-bin/mapserv?map=/data/ows/maps/bebauungsplaene.map&request=GetMetadata&layer=bebauungsplan_satzungsbeschluss",
                        "attributes": {
                              "Person": "MD_Metadata.contact.CI_ResponsibleParty.individualName.CharacterString",
                              "Organisation": "MD_Metadata.contact.CI_ResponsibleParty.organisationName.CharacterString",
                              "Telefon": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.phone.CI_Telephone.voice.CharacterString",
                              "Fax": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.phone.CI_Telephone.facsimile.CharacterString",
                              "Email": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.address.CI_Address.electronicMailAddress.CharacterString",
                              "Adresse": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.address.CI_Address.deliveryPoint.CharacterString",
                              "Stadt": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.address.CI_Address.city.CharacterString",
                              "Bundesland": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.address.CI_Address.administrativeArea.CharacterString",
                              "Postleitzahl": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.address.CI_Address.postalCode.CharacterString",
                              "Staat": "MD_Metadata.contact.CI_ResponsibleParty.contactInfo.CI_Contact.address.CI_Address.country.CharacterString"
                        }
                  }
            ],
            "infoFormat": "text/html"
      },

Ich kann mir hier auch use cases vorstellen, bei denen die Layer unterschiedlicher sind, zum Beispiel wenn für ein Suchgebiet über GFI der Stadtbezirk angezeigt werden soll, in dem es sich befindet.

Comments (4)

  1. Log in to comment