Add from-to-search to DeliveryAdminWindow

This commit is contained in:
2023-08-20 10:38:26 +02:00
parent ded7dbec06
commit 00078a1f4e
2 changed files with 28 additions and 1 deletions

View File

@ -207,6 +207,29 @@ namespace Elwig.Windows {
filter.RemoveAt(i--);
}
if (e.Length == 1) filter.RemoveAt(i--);
} else if (e.Length > 1 && Utils.FromToRegex.IsMatch(e)) {
var parts = e.Split("-");
double? from = (parts[0].Length > 0) ? double.Parse(parts[0].Replace(".", ",")) : null;
double? to = (parts[1].Length > 0) ? double.Parse(parts[1].Replace(".", ",")) : null;
switch ((from, to)) {
case (<= 30, <= 30):
case (<= 30, null):
case (null, <= 30):
filterKmwGt = from ?? 0;
filterKmwLt = to ?? 0;
break;
case (>= 1900, >= 1900):
case (>= 1900, null):
case (null, >= 1900):
filterYearGt = (int)(from ?? 0);
filterYearLt = (int)(to ?? -1) + 1;
break;
case (_, _):
filterOeGt = from ?? 0;
filterOeLt = to ?? 0;
break;
}
filter.RemoveAt(i--);
} else if (DateOnly.TryParse(e, out var date)) {
filterDate.Add($"{date:yyyy-MM-dd}");
filter.RemoveAt(i--);
@ -279,7 +302,7 @@ namespace Elwig.Windows {
}
if (n > 0 && n <= 200) {
if (n > 0 && (n <= 200 || TodayOnlyInput.IsChecked == true)) {
var parts = (await deliveryParts.ToListAsync());
var groups = parts
.GroupBy(p => string.Join("/", p.Attributes.Select(a => a.Name)))