fix GetFilteredList methods
This commit is contained in:
parent
8d16b12e86
commit
4c4689f94c
@ -22,12 +22,15 @@ namespace FlowerShopDatabaseImplement.Implements
|
||||
return new();
|
||||
}
|
||||
using var context = new FlowerShopDatabase();
|
||||
if (model.Id.HasValue)
|
||||
return context.Orders.Where(x => x.Id == model.Id).Select(x => AccessFlowerStorage(x.GetViewModel)).ToList();
|
||||
if (model.ClientId.HasValue)
|
||||
return context.Orders.Where(x => x.ClientId == model.ClientId).Select(x => AccessFlowerStorage(x.GetViewModel)).ToList();
|
||||
return context.Orders.Where(x => x.DateCreate >= model.DateFrom).Where(x => x.DateCreate <= model.DateTo).
|
||||
Select(x => AccessFlowerStorage(x.GetViewModel)).ToList();
|
||||
if (model.DateFrom.HasValue)
|
||||
return context.Orders
|
||||
.Where(x => (x.DateCreate >= model.DateFrom && x.DateCreate <= model.DateTo)
|
||||
&& (!model.ClientId.HasValue || x.ClientId == model.ClientId))
|
||||
.Select(x => AccessFlowerStorage(x.GetViewModel)).ToList();
|
||||
return context.Orders
|
||||
.Where(x => (model.Id.HasValue && x.Id == model.Id)
|
||||
|| (model.ClientId.HasValue && x.ClientId == model.ClientId))
|
||||
.Select(x => AccessFlowerStorage(x.GetViewModel)).ToList();
|
||||
}
|
||||
public OrderViewModel? GetElement(OrderSearchModel model)
|
||||
{
|
||||
|
@ -19,15 +19,18 @@ namespace FlowerShopFileImplement.Implements
|
||||
}
|
||||
public List<OrderViewModel> GetFilteredList(OrderSearchModel model)
|
||||
{
|
||||
if (model.Id.HasValue)
|
||||
return source.Orders.Where(x => x.Id == model.Id)
|
||||
.Select(x => GetViewModel(x))
|
||||
.ToList();
|
||||
if (model.ClientId.HasValue)
|
||||
return source.Orders.Where(x => x.ClientId == model.ClientId).Select(x => GetViewModel(x)).ToList();
|
||||
return source.Orders.Where(x => x.DateCreate >= model.DateFrom).Where(x => x.DateCreate <= model.DateTo).
|
||||
Select(x => GetViewModel(x)).ToList();
|
||||
}
|
||||
if (model.DateFrom.HasValue)
|
||||
{
|
||||
return source.Orders
|
||||
.Where(x => (x.DateCreate >= model.DateFrom && x.DateCreate <= model.DateTo) && (!model.ClientId.HasValue || x.ClientId == model.ClientId))
|
||||
.Select(GetViewModel)
|
||||
.ToList();
|
||||
}
|
||||
return source.Orders
|
||||
.Where(x => (model.Id.HasValue && x.Id == model.Id) || (model.ClientId.HasValue && x.ClientId == model.ClientId))
|
||||
.Select(GetViewModel)
|
||||
.ToList();
|
||||
}
|
||||
public OrderViewModel? GetElement(OrderSearchModel model)
|
||||
{
|
||||
if (!model.Id.HasValue)
|
||||
|
@ -3,6 +3,7 @@ using FlowerShopContracts.SearchModels;
|
||||
using FlowerShopContracts.StoragesContracts;
|
||||
using FlowerShopContracts.ViewModels;
|
||||
using FlowerShopListImplement.Models;
|
||||
using System.Reflection;
|
||||
|
||||
namespace FlowerShopListImplement.Implements
|
||||
{
|
||||
@ -24,39 +25,26 @@ namespace FlowerShopListImplement.Implements
|
||||
}
|
||||
public List<OrderViewModel> GetFilteredList(OrderSearchModel model)
|
||||
{
|
||||
var result = new List<OrderViewModel>();
|
||||
if (model == null || !model.Id.HasValue)
|
||||
{
|
||||
return result;
|
||||
}
|
||||
if (model.ClientId.HasValue)
|
||||
{
|
||||
foreach (var order in _source.Orders)
|
||||
{
|
||||
if (order.Id == model.Id && order.ClientId == model.ClientId)
|
||||
{
|
||||
result.Add(AttachNames(order.GetViewModel));
|
||||
}
|
||||
}
|
||||
return result;
|
||||
if (model.DateFrom.HasValue)
|
||||
{
|
||||
return _source.Orders
|
||||
.Where(x => (x.DateCreate >= model.DateFrom && x.DateCreate <= model.DateTo) && (!model.ClientId.HasValue || x.ClientId == model.ClientId))
|
||||
.Select(x => AttachNames(x.GetViewModel))
|
||||
.ToList();
|
||||
}
|
||||
foreach (var order in _source.Orders)
|
||||
{
|
||||
if (order.Id == model.Id && order.DateCreate >= model.DateFrom && order.DateCreate <= model.DateTo)
|
||||
{
|
||||
result.Add(AttachNames(order.GetViewModel));
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
public OrderViewModel? GetElement(OrderSearchModel model)
|
||||
{
|
||||
if (!model.Id.HasValue)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
foreach (var order in _source.Orders)
|
||||
{
|
||||
return _source.Orders
|
||||
.Where(x => (model.Id.HasValue && x.Id == model.Id) || (model.ClientId.HasValue && x.ClientId == model.ClientId))
|
||||
.Select(x => AttachNames(x.GetViewModel))
|
||||
.ToList();
|
||||
}
|
||||
public OrderViewModel? GetElement(OrderSearchModel model)
|
||||
{
|
||||
if (!model.Id.HasValue)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
foreach (var order in _source.Orders)
|
||||
{
|
||||
if (model.Id.HasValue && order.Id == model.Id)
|
||||
{
|
||||
return AttachNames(order.GetViewModel);
|
||||
|
@ -50,14 +50,14 @@ namespace FlowerShopRestApi.Controllers
|
||||
}
|
||||
}
|
||||
[HttpGet]
|
||||
public List<OrderViewModel>? GetOrders(int clientId)
|
||||
public List<OrderViewModel>? GetOrders(int? clientId)
|
||||
{
|
||||
try
|
||||
{
|
||||
return _order.ReadList(new OrderSearchModel
|
||||
return _order.ReadList(clientId != null ? new OrderSearchModel
|
||||
{
|
||||
ClientId = clientId
|
||||
});
|
||||
} : null);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user