DeliveryAdminWindow: Fix delivery ordering
This commit is contained in:
@ -278,15 +278,14 @@ namespace Elwig.Windows {
|
||||
}
|
||||
if (TodayOnlyInput.IsChecked == true) {
|
||||
deliveryQuery = deliveryQuery
|
||||
.Where(d => (d.DateString == Utils.Today.ToString("yyyy-MM-dd") && d.TimeString.CompareTo("03:00:00") > 0) ||
|
||||
(d.DateString == Utils.Today.AddDays(1).ToString("yyyy-MM-dd") && d.TimeString.CompareTo("03:00:00") <= 0));
|
||||
.Where(d => (d.DateString == Utils.Today.ToString("yyyy-MM-dd") && (d.TimeString == null || d.TimeString.CompareTo("03:00:00") > 0)) ||
|
||||
(d.DateString == Utils.Today.AddDays(1).ToString("yyyy-MM-dd") && (d.TimeString == null || d.TimeString.CompareTo("03:00:00") <= 0)));
|
||||
filterNames.Add(Utils.Today.ToString("dd.MM.yyyy"));
|
||||
} else if (AllSeasonsInput.IsChecked == false) {
|
||||
deliveryQuery = deliveryQuery.Where(d => d.Year == SeasonInput.Value);
|
||||
filterNames.Add(SeasonInput.Value.ToString() ?? "");
|
||||
}
|
||||
deliveryQuery = deliveryQuery.OrderBy(d => d.DateString).ThenBy(d => d.TimeString);
|
||||
IQueryable<DeliveryPart> dpq = deliveryQuery.SelectMany(d => d.Parts);
|
||||
IQueryable<DeliveryPart> dpq = deliveryQuery.SelectMany(d => d.Parts).OrderBy(p => p.Delivery.DateString).ThenBy(p => p.Delivery.TimeString);
|
||||
|
||||
// TODO add filter for:
|
||||
// attributes
|
||||
@ -402,8 +401,8 @@ namespace Elwig.Windows {
|
||||
if (filterPartDate.Count > 0) dpq = dpq.Where(p => filterPartDate.Contains(p.Delivery.DateString.Substring(4)));
|
||||
if (filterYearGt > 0) dpq = dpq.Where(p => p.Year >= filterYearGt);
|
||||
if (filterYearLt > 0) dpq = dpq.Where(p => p.Year < filterYearLt);
|
||||
if (filterTimeGt != null) dpq = dpq.Where(p => filterTimeGt.CompareTo(p.Delivery.TimeString) <= 0);
|
||||
if (filterTimeLt != null) dpq = dpq.Where(p => filterTimeLt.CompareTo(p.Delivery.TimeString) > 0);
|
||||
if (filterTimeGt != null) dpq = dpq.Where(p => p.Delivery.TimeString != null && filterTimeGt.CompareTo(p.Delivery.TimeString) <= 0);
|
||||
if (filterTimeLt != null) dpq = dpq.Where(p => p.Delivery.TimeString != null && filterTimeLt.CompareTo(p.Delivery.TimeString) > 0);
|
||||
if (filterVar.Count > 0) dpq = dpq.Where(p => filterVar.Contains(p.SortId));
|
||||
if (filterQual.Count > 0) dpq = dpq.Where(p => filterQual.Contains(p.QualId));
|
||||
if (filterKmwGt > 0) dpq = dpq.Where(p => p.Kmw >= filterKmwGt);
|
||||
@ -441,7 +440,7 @@ namespace Elwig.Windows {
|
||||
}
|
||||
}
|
||||
|
||||
return (filterNames, dpq.Select(p => p.Delivery).Distinct(), dpq, filter);
|
||||
return (filterNames, dpq.Select(p => p.Delivery).Distinct().OrderBy(d => d.DateString).ThenBy(d => d.TimeString), dpq, filter);
|
||||
}
|
||||
|
||||
private async Task RefreshDeliveryListQuery(bool updateSort = false) {
|
||||
@ -1135,8 +1134,8 @@ namespace Elwig.Windows {
|
||||
day = day.AddDays(-1);
|
||||
var lsnrs = await Context.Deliveries
|
||||
.Where(d => d.ZwstId == delivery.ZwstId)
|
||||
.Where(d => (d.DateString == day.ToString("yyyy-MM-dd") && d.TimeString.CompareTo("03:00:00") > 0) ||
|
||||
(d.DateString == day.AddDays(1).ToString("yyyy-MM-dd") && d.TimeString.CompareTo("03:00:00") <= 0))
|
||||
.Where(d => (d.DateString == day.ToString("yyyy-MM-dd") && (d.TimeString == null || d.TimeString.CompareTo("03:00:00") > 0)) ||
|
||||
(d.DateString == day.AddDays(1).ToString("yyyy-MM-dd") && (d.TimeString == null || d.TimeString.CompareTo("03:00:00") <= 0)))
|
||||
.Where(d => d.LsNr != delivery.LsNr)
|
||||
.OrderBy(d => d.LsNr)
|
||||
.Select(d => d.LsNr)
|
||||
|
Reference in New Issue
Block a user