From 116098e104b3c9d9e13e39ca5397511d076dba6c Mon Sep 17 00:00:00 2001 From: FH Date: Sat, 30 Jul 2022 03:11:24 +0200 Subject: [PATCH] add entity name query --- FCS.Lib.Virk.csproj | 6 ++++++ VrQuery.cs | 1 + VrQueryMapper.cs | 26 ++++++++++++++++++++++++-- VrQueryValidator.cs | 4 ++-- 4 files changed, 33 insertions(+), 4 deletions(-) diff --git a/FCS.Lib.Virk.csproj b/FCS.Lib.Virk.csproj index 7439ed5..c322f0e 100644 --- a/FCS.Lib.Virk.csproj +++ b/FCS.Lib.Virk.csproj @@ -9,6 +9,8 @@ False 1.0 1.0.0.100 + False + AGPL-3.0-or-later @@ -21,4 +23,8 @@ + + + + diff --git a/VrQuery.cs b/VrQuery.cs index 043004e..82aceff 100644 --- a/VrQuery.cs +++ b/VrQuery.cs @@ -31,5 +31,6 @@ namespace FCS.Lib.Virk public string StreetName { get; set; } = ""; public string HouseNumber { get; set; } = ""; public string ZipCode { get; set; } = ""; + public string EntityName { get; set; } = ""; } } \ No newline at end of file diff --git a/VrQueryMapper.cs b/VrQueryMapper.cs index 35052a2..c0a582f 100644 --- a/VrQueryMapper.cs +++ b/VrQueryMapper.cs @@ -32,7 +32,7 @@ namespace FCS.Lib.Virk { public JObject VrMapQuery(VrQuery query) { - if (string.IsNullOrWhiteSpace(query.VatNumber)) + if (string.IsNullOrWhiteSpace(query.VatNumber) && string.IsNullOrWhiteSpace(query.EntityName)) { return new JObject( new JProperty("_source", @@ -71,6 +71,27 @@ namespace FCS.Lib.Virk new JProperty("size", 50)); } + if (string.IsNullOrWhiteSpace(query.EntityName)) + { + return new JObject( + new JProperty("_source", + new JArray( + "Vrvirksomhed.cvrNummer", + "Vrvirksomhed.virksomhedMetadata.nyesteNavn.navn", + "Vrvirksomhed.virksomhedMetadata.nyesteBeliggenhedsadresse.conavn", + "Vrvirksomhed.virksomhedMetadata.nyesteBeliggenhedsadresse.vejnavn", + "Vrvirksomhed.virksomhedMetadata.nyesteBeliggenhedsadresse.husnummerFra", + "Vrvirksomhed.virksomhedMetadata.nyesteBeliggenhedsadresse.husnummerTil", + "Vrvirksomhed.virksomhedMetadata.nyesteBeliggenhedsadresse.postnummer", + "Vrvirksomhed.virksomhedMetadata.nyesteBeliggenhedsadresse.postdistrikt", + "Vrvirksomhed.virksomhedsstatus", + "Vrvirksomhed.livsforloeb") + ), + new JProperty("query", + new JObject(new JProperty("term", + new JObject(new JProperty("Vrvirksomhed.cvrNummer", query.VatNumber)))))); + } + return new JObject( new JProperty("_source", new JArray( @@ -87,7 +108,8 @@ namespace FCS.Lib.Virk ), new JProperty("query", new JObject(new JProperty("term", - new JObject(new JProperty("Vrvirksomhed.cvrNummer", query.VatNumber)))))); + new JObject(new JProperty("Vrvirksomhed.virksomhedMetadata.nyesteNavn.navn", query.EntityName)))))); + } } diff --git a/VrQueryValidator.cs b/VrQueryValidator.cs index a717db8..a0d8fc3 100644 --- a/VrQueryValidator.cs +++ b/VrQueryValidator.cs @@ -32,8 +32,8 @@ namespace FCS.Lib.Virk try { // Precise lookup - if (!string.IsNullOrWhiteSpace(query.VatNumber)) return true; - // Search lookup + if (!string.IsNullOrWhiteSpace(query.VatNumber) || !string.IsNullOrWhiteSpace(query.EntityName)) return true; + // Address lookup return !string.IsNullOrWhiteSpace(query.StreetName) && !string.IsNullOrWhiteSpace(query.HouseNumber) && !string.IsNullOrWhiteSpace(query.ZipCode)