From 51120f74ebd83e485e1707e44cc9d67e3efb949d Mon Sep 17 00:00:00 2001 From: mark stoker Date: Tue, 15 Oct 2024 10:50:56 +0200 Subject: [PATCH] cleanup --- .../Apis/Odrc/WaardelijstResponseModel.cs | 13 ++----- .../WaardelijstViewModel.cs | 20 +---------- .../WaardelijstenController.cs | 36 +++++++------------ 3 files changed, 16 insertions(+), 53 deletions(-) diff --git a/ODPC.Server/Apis/Odrc/WaardelijstResponseModel.cs b/ODPC.Server/Apis/Odrc/WaardelijstResponseModel.cs index 0c679aa..fecf0d8 100644 --- a/ODPC.Server/Apis/Odrc/WaardelijstResponseModel.cs +++ b/ODPC.Server/Apis/Odrc/WaardelijstResponseModel.cs @@ -4,19 +4,10 @@ namespace ODPC.Apis.Odrc { public class WaardelijstResponseModel - { - - + { [JsonPropertyName("uuid")] public required string Id { get; set; } [JsonPropertyName("naam")] - public required string Name { get; set; } - - //// dit zal een model per soort lijst worden. thema's zullen bijvoorbeeld genest zijn. - //// dus dat hier nu alles default - // [DefaultValue("INFORMATIECATEGORIE")] - //[Jso] - // public string Type { get; set; } = "INFORMATIECATEGORIE"; - + public required string Name { get; set; } } } diff --git a/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstViewModel.cs b/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstViewModel.cs index e274c1f..8778934 100644 --- a/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstViewModel.cs +++ b/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstViewModel.cs @@ -9,25 +9,7 @@ public class WaardelijstViewModel public required string Id { get; set; } public required string Name { get; set; } - - public string Type { get; set; } = "INFORMATIECATEGORIE"; + public string Type { get; set; } = "INFORMATIECATEGORIE"; //tijdelijk. als de andere categorien ook uit het odrc gehaald worden, zullen de waardelijsten volledig gesplitst worden } - - - //public class InformatiecategorieViewModel : WaardelijstViewModel - //{ - // public override string Type => "INFORMATIECATEGORIE"; - //} - - //public class ThemaViewModel : WaardelijstViewModel - //{ - // public override string Type => "THEMA"; - //} - - //public class OrganisatieViewModel : WaardelijstViewModel - //{ - // public override string Type => "ORGANISATIE"; - //} - } diff --git a/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstenController.cs b/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstenController.cs index 6e85908..d619f5e 100644 --- a/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstenController.cs +++ b/ODPC.Server/Features/WaardeLijstenOverzicht/WaardelijstenController.cs @@ -15,10 +15,9 @@ public class WaardelijstenController(OdpUser user, IOrdcClientFactory clientFact [HttpGet] public async Task> GetAsync() { - // Deserialization of types without a parameterless constructor, a singular parameterized constructor, or a parameterized constructor annotated with 'JsonConstructorAttribute' is not supported. Type 'ODPC.Features.WaardeLijstenOverzicht.WaardelijstViewModel'. - //infocategorien ophalen uit het ODRC + //user en audit log handeling meegeven is misschien nog niet nodig, maar doet geen kwaad var client = clientFactory.Create(user, "Waardelijsten ophalen"); var response = await client.GetAsync("/api/v1/informatiecategorieen/", new CancellationToken()); @@ -26,32 +25,23 @@ public async Task> GetAsync() response.EnsureSuccessStatusCode(); var responseBody = await response.Content.ReadAsStringAsync(); - + var deserializedResponse = JsonSerializer.Deserialize>(responseBody, JsonSerialization.Options); - var results = deserializedResponse?.results ?? []; - - //alle wardelijsten zitten in 1 response. wellicht splitsten? - //op dit moment worden alleen de inormatiecageroien opgehaald. voor nu aanvullen met wat mock data - //viewModel.Add(new ThemaViewModel() { Id = "d3da5277-ea07-4921-97b8-e9a181390c76", Name = "arbeidsomstandigheden" }); - //viewModel.Add(new ThemaViewModel() { Id = "066241fe-7f39-41da-8efb-a702ef32b7d0", Name = "afval" }); - //viewModel.Add(new OrganisatieViewModel() { Id = "8f939b51-dad3-436d-a5fa-495b42317d64", Name = "Organisatie 2"}); - //viewModel.Add(new OrganisatieViewModel () { Id = "5c14e7e2-00a2-4990-adbb-7290cd89fb6e", Name = "Organisatie 3" }); - //viewModel.Add(new ThemaViewModel() { Id = "0e7a0023-423a-421a-8700-359232fef584", Name = "europese zaken" }); - - var viewModel = results.Select(x=> new WaardelijstViewModel { Id = x.Id, Name = x.Name}).ToList(); + var informatiecategorieen = deserializedResponse?.results ?? []; + + var wardelijstenViewModel = informatiecategorieen.Select(x=> new WaardelijstViewModel { Id = x.Id, Name = x.Name}).ToList(); - - viewModel.Add(new WaardelijstViewModel() { Id = "d3da5277-ea07-4921-97b8-e9a181390c76", Name = "arbeidsomstandigheden", Type = "THEMA" }); - viewModel.Add(new WaardelijstViewModel() { Id = "066241fe-7f39-41da-8efb-a702ef32b7d0", Name = "afval", Type = "THEMA" }); - - viewModel.Add(new WaardelijstViewModel() { Id = "8f939b51-dad3-436d-a5fa-495b42317d64", Name = "Organisatie 2", Type="ORGANISATIE" }); - viewModel.Add(new WaardelijstViewModel() { Id = "5c14e7e2-00a2-4990-adbb-7290cd89fb6e", Name = "Organisatie 3", Type = "ORGANISATIE" }); - viewModel.Add(new WaardelijstViewModel() { Id = "0e7a0023-423a-421a-8700-359232fef584", Name = "europese zaken", Type = "THEMA" }); - return viewModel; + //nog wat dummy data toevoegen van andersoortige waardelijsten + wardelijstenViewModel.Add(new WaardelijstViewModel() { Id = "d3da5277-ea07-4921-97b8-e9a181390c76", Name = "arbeidsomstandigheden", Type = "THEMA" }); + wardelijstenViewModel.Add(new WaardelijstViewModel() { Id = "066241fe-7f39-41da-8efb-a702ef32b7d0", Name = "afval", Type = "THEMA" }); + wardelijstenViewModel.Add(new WaardelijstViewModel() { Id = "8f939b51-dad3-436d-a5fa-495b42317d64", Name = "Organisatie 2", Type="ORGANISATIE" }); + wardelijstenViewModel.Add(new WaardelijstViewModel() { Id = "5c14e7e2-00a2-4990-adbb-7290cd89fb6e", Name = "Organisatie 3", Type = "ORGANISATIE" }); + wardelijstenViewModel.Add(new WaardelijstViewModel() { Id = "0e7a0023-423a-421a-8700-359232fef584", Name = "europese zaken", Type = "THEMA" }); + + return wardelijstenViewModel; } - } }