Реализована фильтрация заказов по дате для всех реализаций хранения

This commit is contained in:
Никита Потапов 2024-03-24 21:50:48 +04:00
parent 1c849d9f5a
commit f47e53df7d
2 changed files with 26 additions and 15 deletions

View File

@ -26,14 +26,22 @@ namespace SecuritySystemFileImplement.Implements
public List<OrderViewModel> GetFilteredList(OrderSearchModel model) public List<OrderViewModel> GetFilteredList(OrderSearchModel model)
{ {
if (!model.Id.HasValue) var orders = source.Orders
{ .Select(x => x.GetViewModel)
return new();
}
return source.Orders
.Where(x => x.Id == model.Id)
.Select(x => GetViewModel(x))
.ToList(); .ToList();
if (model.Id.HasValue)
{
orders = orders.Where(x => x.Id == model.Id.Value).ToList();
}
if (model.DateFrom.HasValue)
{
orders = orders.Where(x => x.DateCreate >= model.DateFrom.Value).ToList();
}
if (model.DateTo.HasValue)
{
orders = orders.Where(x => x.DateCreate <= model.DateTo.Value).ToList();
}
return orders;
} }
public List<OrderViewModel> GetFullList() public List<OrderViewModel> GetFullList()

View File

@ -24,19 +24,22 @@ namespace SecuritySystemListImplement.Implements
} }
public List<OrderViewModel> GetFilteredList(OrderSearchModel model) public List<OrderViewModel> GetFilteredList(OrderSearchModel model)
{ {
var result = new List<OrderViewModel>(); var orders = _source.Orders
if (!model.Id.HasValue) .Select(x => x.GetViewModel)
.ToList();
if (model.Id.HasValue)
{ {
return result; orders = orders.Where(x => x.Id == model.Id.Value).ToList();
} }
foreach (var order in _source.Orders) if (model.DateFrom.HasValue)
{ {
if (order.Id == model.Id) orders = orders.Where(x => x.DateCreate >= model.DateFrom.Value).ToList();
}
if (model.DateTo.HasValue)
{ {
result.Add(order.GetViewModel); orders = orders.Where(x => x.DateCreate <= model.DateTo.Value).ToList();
} }
} return orders;
return result;
} }
public OrderViewModel? GetElement(OrderSearchModel model) public OrderViewModel? GetElement(OrderSearchModel model)
{ {