From 775296a0661bc867ac0f3757bfcd61976f5e3afd Mon Sep 17 00:00:00 2001 From: DSO Date: Tue, 28 Jul 2026 08:11:27 -0700 Subject: [PATCH] fixing validation, there was an edge case where frontend sends back undefined for query param /undefined which is flagged as a non-guid string. Before we would catch this and default it to null. Need to revert to previous behaviour to allow that --- .../ConfigurationEndpoints.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ECER.Clients.RegistryPortal/ECER.Clients.RegistryPortal.Server/ConfigurationEndpoints.cs b/src/ECER.Clients.RegistryPortal/ECER.Clients.RegistryPortal.Server/ConfigurationEndpoints.cs index 1273b99f0..a2efdeaa7 100644 --- a/src/ECER.Clients.RegistryPortal/ECER.Clients.RegistryPortal.Server/ConfigurationEndpoints.cs +++ b/src/ECER.Clients.RegistryPortal/ECER.Clients.RegistryPortal.Server/ConfigurationEndpoints.cs @@ -51,20 +51,20 @@ public void Register(IEndpointRouteBuilder endpointRouteBuilder) endpointRouteBuilder.MapGet("/api/certificationComparison/{id?}", async (string? id, string? provinceId, HttpContext ctx, IMediator messageBus, IConfigurationMapper configurationMapper, CancellationToken ct) => { + bool IdIsNotGuid = !Guid.TryParse(id, out _); if (IdIsNotGuid && id != null) { id = null; } var results = await messageBus.Send(new CertificationComparisonQuery() { ById = id, ByProvinceId = provinceId }, ct); return TypedResults.Ok(configurationMapper.MapComparisonRecords(results.Items)); }) .AddGuidValidationQueryParams(["provinceId"], false) - .AddGuidValidation("id", false) .WithOpenApi("Handles certification comparison queries", string.Empty, "certificationComparison_get"); endpointRouteBuilder.MapGet("/api/postSecondaryInstitutionList/{id?}", async (string? id, string? name, string? provinceId, PostSecondaryInstitutionStatus? status, IMediator messageBus, IConfigurationMapper configurationMapper, CancellationToken ct) => { + bool IdIsNotGuid = !Guid.TryParse(id, out _); if (IdIsNotGuid && id != null) { id = null; } var results = await messageBus.Send(new PostSecondaryInstitutionsQuery() { ById = id, ByName = name, ByProvinceId = provinceId, ByStatus = status }, ct); return TypedResults.Ok(configurationMapper.MapPostSecondaryInstitutions(results.Items)); }) .AddGuidValidationQueryParams(["provinceId"], false) - .AddGuidValidation("id", false) .WithOpenApi("Handles psi queries", string.Empty, "psi_get"); endpointRouteBuilder.MapGet("/api/systemMessages", async (HttpContext ctx, IMediator messageBus, IConfigurationMapper configurationMapper, CancellationToken ct) =>