From a1a55aa39602c2283af97a06e777490de880bfc53171e848b0de5df061596f1c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20Garc=C3=ADa?=
<93217193+Daniel-Garmig@users.noreply.github.com>
Date: Thu, 10 Sep 2026 18:27:56 +0200
Subject: [PATCH] Small fixes and improvements: - StayExport -
SpainParteViajerosProvider - Fixed validation for codigoPostal/codMunicipio.
- AddressQueryDialog - Add loading indication and "debounce" input to reduce
API queries.
---
.../Controls/AddressQueryDialog.razor | 26 +++++++++++++++----
.../StayExportProviderSpainParteViajeros.cs | 2 +-
2 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/src/Somnia.GuestLog/Components/Controls/AddressQueryDialog.razor b/src/Somnia.GuestLog/Components/Controls/AddressQueryDialog.razor
index 7f8b2b7..3164d2a 100644
--- a/src/Somnia.GuestLog/Components/Controls/AddressQueryDialog.razor
+++ b/src/Somnia.GuestLog/Components/Controls/AddressQueryDialog.razor
@@ -17,13 +17,22 @@
-
+
- @if (addressResults.Count == 0)
+ @if (addressResults.Count == 0 && !_isDataLoading)
{
- @LanguageLocale.general_noResults
+
+
+ @LanguageLocale.general_noResults
+
+
+ }
+
+ @if (_isDataLoading)
+ {
+
}
addressResults = [];
private AddressResultDTO? SelectedAddressResult { get; set; }
+ private bool _isDataLoading = false;
+ private string _lastSearchText = "";
+
private void Cancel()
{
@@ -99,16 +111,20 @@
private async Task btnSearchAddress()
{
- if (SearchText.Length == 0)
+ if (SearchText.Length == 0 || SearchText == _lastSearchText)
{
return;
}
try
{
- var queryService = addressQueryFactory.GetService();
+ _isDataLoading = true;
+ var queryService = addressQueryFactory.GetService();
addressResults = await queryService.SearchAddressAsync(SearchText);
+ _lastSearchText = SearchText;
+
+ _isDataLoading = false;
}
catch (Exception ex)
{
diff --git a/src/Somnia.GuestLog/Services/StayExport/StayExportProviderSpainParteViajeros.cs b/src/Somnia.GuestLog/Services/StayExport/StayExportProviderSpainParteViajeros.cs
index f79e915..9b910f4 100644
--- a/src/Somnia.GuestLog/Services/StayExport/StayExportProviderSpainParteViajeros.cs
+++ b/src/Somnia.GuestLog/Services/StayExport/StayExportProviderSpainParteViajeros.cs
@@ -306,7 +306,7 @@ public class StayExportProviderSpainParteViajeros(
.NotEmpty()
.When(p => p.pais != PersonDireccionPais_ESP)
.MaximumLength(100);
- d.RuleFor(p => p.codigoMunicipio)
+ d.RuleFor(p => p.codigoPostal)
.NotEmpty()
.MaximumLength(20);
d.RuleFor(p => p.pais)