// CRUD Product /// <summary> /// Returns the list of all Products in the database. /// </summary> /// <returns> List<Product> list </returns> public List <Domain.Product> GetAllProducts() { var x = _context.Set <Product>().AsEnumerable(); List <Domain.Product> list = new List <Domain.Product>(); foreach (var i in x) { var p = new Domain.Product(i.Name, (decimal)i.Price) { ID = i.Id }; list.Add(p); } return(list); }
// CRUD Customer /// <summary> /// Returns the list of all Customers in the database. /// </summary> /// <returns> List<Customer> list </returns> public List <Domain.Customer> GetAllCustomers() { var x = _context.Set <Customer>().AsEnumerable(); List <Domain.Customer> list = new List <Domain.Customer>(); foreach (var i in x) { var c = new Domain.Customer(i.FirstName, i.LastName, (int)i.DefaultLocationId) { ID = i.Id }; list.Add(c); } return(list); }
// CRUD Location /// <summary> /// Returns the list of all Locations from the database. /// </summary> /// <returns> List<Location> toReturn </returns> public List <Domain.Location> GetAllLocations() { var dbLocations = _context.Set <Location>().ToList(); List <Domain.Location> toReturn = new List <Domain.Location>(); foreach (var l in dbLocations) { var n = new Domain.Location(l.Id) { Name = l.Name }; var inventories = _context.Set <Inventory>().Where(i => i.LocationId == l.Id).ToList(); foreach (var i in inventories) { var dbProduct = _context.Set <Product>().Where(p => p.Id == i.ProductId).FirstOrDefault(); var domProduct = new Domain.Product(dbProduct.Id, dbProduct.Name, (decimal)dbProduct.Price); n.SetProductAmount(domProduct, i.Amount); } toReturn.Add(n); } return(toReturn); }
// CRUD Orders /// <summary> /// Returns the list of all Orders in the database. /// </summary> /// <returns> List<Order> toReturn </returns> public List <Domain.Order> GetAllOrders() { var dbOrders = _context.Set <Order>().ToList(); List <Domain.Order> toReturn = new List <Domain.Order>(); foreach (var o in dbOrders) { var n = new Domain.Order(o.Id, o.CustomerId, o.LocationId) { Time = (DateTimeOffset)o.Time }; var lines = _context.Set <OrderLine>().Where(i => i.OrderId == o.Id).ToList(); foreach (var i in lines) { var dbProduct = _context.Set <Product>().Where(p => p.Id == i.ProductId).FirstOrDefault(); var domProduct = new Domain.Product(dbProduct.Id, dbProduct.Name, (decimal)dbProduct.Price); n.SetItemAmount(domProduct, i.Amount); } toReturn.Add(n); } return(toReturn); }