diff --git a/SewingDresses/SewingDressesDatabaseImplement/Implements/OrderStorage.cs b/SewingDresses/SewingDressesDatabaseImplement/Implements/OrderStorage.cs index 6b25ccd..d15097e 100644 --- a/SewingDresses/SewingDressesDatabaseImplement/Implements/OrderStorage.cs +++ b/SewingDresses/SewingDressesDatabaseImplement/Implements/OrderStorage.cs @@ -6,96 +6,87 @@ using SewingDressesDatabaseImplement.Models; namespace SewingDressesDatabaseImplement.Implements { - public class OrderStorage : IOrderStorage - { - public List GetFullList() - { - using var context = new SewingDressesDatabase(); - return context.Orders.Select(x => AcessDressesStorage(x.GetViewModel, context)).ToList(); - } - public List GetFilteredList(OrderSearchModel model) - { - if (!model.Id.HasValue && !model.DateFrom.HasValue && !model.DateTo.HasValue && !model.ClientId.HasValue) - { - return new(); - } - using var context = new SewingDressesDatabase(); - if (model.Id.HasValue) - return context.Orders.Where(x => x.Id == model.Id).Select(x => AcessDressesStorage(x.GetViewModel, context)).ToList(); - else if (model.ClientId.HasValue) - return context.Orders.Where(x => x.ClientId == model.ClientId).Select(x => AcessDressesStorage(x.GetViewModel, context)).ToList(); + public class OrderStorage : IOrderStorage + { + public List GetFullList() + { + using var context = new SewingDressesDatabase(); + return context.Orders.Select(x => AcessDressesStorage(x.GetViewModel, context)).ToList(); + } + public List GetFilteredList(OrderSearchModel model) + { + if (!model.Id.HasValue && !model.DateFrom.HasValue && !model.DateTo.HasValue) + { + return new(); + } + using var context = new SewingDressesDatabase(); + if (model.Id.HasValue) + return context.Orders.Where(x => x.Id == model.Id).Select(x => AcessDressesStorage(x.GetViewModel, context)).ToList(); else - return context.Orders.Where(x => x.DateCreate >= model.DateFrom).Where(x => x.DateCreate <= model.DateTo).Select(x => AcessDressesStorage(x.GetViewModel, context)).ToList(); - } - public OrderViewModel? GetElement(OrderSearchModel model) - { - if (!model.Id.HasValue) - { - return null; - } - using var context = new SewingDressesDatabase(); - return AcessDressesStorage(context.Orders.FirstOrDefault(x => x.Id == model.Id)?.GetViewModel, context); - } - public OrderViewModel? Insert(OrderBindingModel model) - { - var order = Order.Create(model); - if (order == null) - { - return null; - } - using var context = new SewingDressesDatabase(); - context.Orders.Add(order); - context.SaveChanges(); - return AcessDressesStorage(order.GetViewModel, context); + return context.Orders.Where(x => x.DateCreate >= model.DateFrom).Where(x => x.DateCreate <= model.DateTo).Select(x => AcessDressesStorage(x.GetViewModel, context)).ToList(); + } + public OrderViewModel? GetElement(OrderSearchModel model) + { + if (!model.Id.HasValue) + { + return null; + } + using var context = new SewingDressesDatabase(); + return AcessDressesStorage(context.Orders.FirstOrDefault(x => x.Id == model.Id)?.GetViewModel, context); + } + public OrderViewModel? Insert(OrderBindingModel model) + { + var order = Order.Create(model); + if (order == null) + { + return null; + } + using var context = new SewingDressesDatabase(); + context.Orders.Add(order); + context.SaveChanges(); + return AcessDressesStorage(order.GetViewModel, context); - } - public OrderViewModel? Update(OrderBindingModel model) - { + } + public OrderViewModel? Update(OrderBindingModel model) + { - using var context = new SewingDressesDatabase(); - var order = context.Orders.FirstOrDefault(x => x.Id == model.Id); - if (order == null) - { - return null; - } - order.Update(model); - context.SaveChanges(); - return AcessDressesStorage(order.GetViewModel, context); + using var context = new SewingDressesDatabase(); + var order = context.Orders.FirstOrDefault(x => x.Id == model.Id); + if (order == null) + { + return null; + } + order.Update(model); + context.SaveChanges(); + return AcessDressesStorage(order.GetViewModel, context); - } - public OrderViewModel? Delete(OrderBindingModel model) - { - using var context = new SewingDressesDatabase(); - var element = context.Orders.FirstOrDefault(x => x.Id == model.Id); - if (element == null) - { - return null; - } - context.Orders.Remove(element); - context.SaveChanges(); - return AcessDressesStorage(element.GetViewModel, context); - } - public static OrderViewModel? AcessDressesStorage(OrderViewModel? model, SewingDressesDatabase context) - { - if (model == null) - { - return null; - } - var dress = context.Dresses.FirstOrDefault(x => x.Id == model.DressId); - if (dress == null) - { - return null; - } - var client = context.Clients.FirstOrDefault(x => x.Id == model.ClientId); - if (client == null) - { - return null; - } - model.DressName = dress.DressName; - model.ClientFIO = client.ClientFIO; - model.ClientId = client.Id; - return model; - } + } + public OrderViewModel? Delete(OrderBindingModel model) + { + using var context = new SewingDressesDatabase(); + var element = context.Orders.FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + context.Orders.Remove(element); + context.SaveChanges(); + return AcessDressesStorage(element.GetViewModel, context); + } + public static OrderViewModel? AcessDressesStorage(OrderViewModel? model, SewingDressesDatabase context) + { + if (model == null) + { + return null; + } + var dress = context.Dresses.FirstOrDefault(x => x.Id == model.DressId); + if (dress == null) + { + return null; + } + model.DressName = dress.DressName; + return model; + } - } + } }