Esempio n. 1
0
 public IEnumerable <Item> GetAllItems()
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.Items.ToList());
     }
 }
Esempio n. 2
0
 public Extra GetExtra(int ExtraID)
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.Extras.FirstOrDefault(e => e.ExtraID == ExtraID));
     }
 }
Esempio n. 3
0
 public Item GetItem(int ItemID)
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.Items.FirstOrDefault(i => i.ItemID == ItemID));
     }
 }
        public IHttpActionResult CompleteOrder(OrderReadModel OrderItem) //give it a read model
        {
            IHttpActionResult newOrder;

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var listOfOrderItemIDs = this.addOrderItems(OrderItem);

            using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
            {
                Order currentOrder = new Order()
                {
                    CustomerID = OrderItem.CustomerID,
                    Completed  = true,
                    Cancelled  = false,
                    TotalPrice = OrderItem.TotalPrice,
                    Tax        = OrderItem.TotalPrice - OrderItem.Price,
                    Date       = DateTime.Now,
                    MonthYear  = string.Format("{0:MMMM yyyy}", DateTime.Now)
                };
                entities.Orders.Add(currentOrder);

                entities.SaveChanges();
                newOrder = CreatedAtRoute("GetOrder", new
                {
                    OrderID = currentOrder.OrderID
                }, currentOrder);
                this.addOrderDetails(listOfOrderItemIDs, currentOrder.OrderID);
            }

            return(newOrder);
        }
        public List <int> addOrderItems(OrderReadModel OrderItem)
        {
            IHttpActionResult newOrderItem;
            List <int>        listOfOrderItemIDs = new List <int>();

            using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
            {
                //for each item
                foreach (var item in OrderItem.Items)
                {
                    foreach (var extra in item.ExtraItems)
                    {
                        OrderItem currentOrderItem = new OrderItem()
                        {
                            ItemID  = item.ItemID,
                            ExtraID = extra.ExtraID
                        };
                        OrderItem createdOrderItem = entities.OrderItems.Add(currentOrderItem);
                        entities.SaveChanges();
                        newOrderItem = CreatedAtRoute("GetOrderItem", new
                        {
                            OrderItemID = currentOrderItem.OrderItemID
                        }, currentOrderItem);
                        listOfOrderItemIDs.Add(createdOrderItem.OrderItemID);
                    }
                }
            }
            return(listOfOrderItemIDs);
        }
 public OrderItem GetOrderItemByOrderID(int OrderItemID)
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.OrderItems.FirstOrDefault(o => o.OrderItemID == OrderItemID));
     }
 }
 public Order GetOrderByCustomerID(int CustomerID)
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.Orders.FirstOrDefault(o => o.CustomerID == CustomerID));
     }
 }
 public IEnumerable <Order> GetAllOrders()//give it a read model
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.Orders.ToList());
     }
 }
 public Customer GetCustomer(int CustomerID)
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.Customers.FirstOrDefault(c => c.CustomerID == CustomerID));
     }
 }
 public IEnumerable <Customer> GetAllCustomers()
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         return(entities.Customers.ToList());
     }
 }
Esempio n. 11
0
 public IEnumerable <Extra> GetExtrasByID(int ItemID)
 {
     using (var entities = new OrderSystemEntitiesCtx())
     {
         var listOfItemIDs = entities.ItemExtras.Where(ie => ie.ItemId == ItemID).Select(x => x.ExtraId).ToList();
         return(entities.Extras.Where(e => listOfItemIDs.Contains(e.ExtraID)).ToList());
     }
 }
 public void addOrderDetails(List <int> OrderItemIDs, int OrderID)
 {
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         foreach (var item in OrderItemIDs)
         {
             OrderDetail currentOrderDetail = new OrderDetail()
             {
                 OrderID     = OrderID,
                 OrderItemID = item
             };
             OrderDetail createdOrderDetail = entities.OrderDetails.Add(currentOrderDetail);
         }
         entities.SaveChanges();
     }
 }
 public IHttpActionResult AddCustomer(Customer Customer)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
     {
         entities.Customers.Add(Customer);
         entities.SaveChanges();
         return(CreatedAtRoute("GetCustomer", new
         {
             CustomerID = Customer.CustomerID
         }, Customer));
     }
 }
        public List <ItemHistoryReadModel> GetOrderItemHistory()
        {
            List <ItemHistoryReadModel> itemHistory = new List <ItemHistoryReadModel>();
            List <Order> allOrders = new List <Order>();

            using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
            {
                try
                {
                    allOrders = entities.Orders.ToList();
                    foreach (var order in allOrders)
                    {
                        ItemHistoryReadModel currentReadModel = new ItemHistoryReadModel();
                        List <Item>          allItems         = new List <Item>();
                        List <int>           allOrderItemIDs  = new List <int>();
                        List <int>           allItemIDs       = new List <int>();
                        allOrderItemIDs = entities.OrderDetails.Where(od => od.OrderID == order.OrderID).Select(x => x.OrderItemID).ToList();

                        foreach (var id in allOrderItemIDs)
                        {
                            Debug.WriteLine("itemid " + id);
                            OrderItem currentOrderItem = entities.OrderItems.FirstOrDefault(i => i.OrderItemID == id);
                            allItemIDs.Add(currentOrderItem.ItemID);
                        }
                        foreach (var id in allItemIDs)
                        {
                            Item currentItem = entities.Items.FirstOrDefault(i => i.ItemID == id);
                            allItems.Add(currentItem);
                            currentReadModel.ItemID    = currentItem.ItemID;
                            currentReadModel.Name      = currentItem.Name;
                            currentReadModel.Price     = currentItem.Price;
                            currentReadModel.Extras    = true;
                            currentReadModel.Date      = order.Date;
                            currentReadModel.MonthYear = order.MonthYear;
                            itemHistory.Add(currentReadModel);
                        }
                    }
                }
                catch (Exception exc)
                {
                    Console.WriteLine(exc.GetType());
                    Debug.WriteLine(exc.GetType());
                }
            }

            return(itemHistory);
        }
        public List <OrderHistoryReadModel> GetOrderHistory()
        {
            List <OrderHistoryReadModel> orderHistory = new List <OrderHistoryReadModel>();
            List <Order> allOrders = new List <Order>();

            using (OrderSystemEntitiesCtx entities = new OrderSystemEntitiesCtx())
            {
                allOrders = entities.Orders.ToList();
                foreach (var order in allOrders)
                {
                    OrderHistoryReadModel currentReadModel = new OrderHistoryReadModel();
                    List <Item>           allItems         = new List <Item>();
                    List <int>            allOrderItemIDs  = new List <int>();
                    List <int>            allItemIDs       = new List <int>();
                    allOrderItemIDs = entities.OrderDetails.Where(od => od.OrderID == order.OrderID).Select(x => x.OrderItemID).ToList();

                    foreach (var id in allOrderItemIDs)
                    {
                        Debug.WriteLine("itemid " + id);
                        //allItemIDs = entities.OrderItems.Where(od => od.OrderItemID == id).Select(x => x.ItemID).ToList();
                        OrderItem currentOrderItem = entities.OrderItems.FirstOrDefault(i => i.OrderItemID == id);
                        allItemIDs.Add(currentOrderItem.ItemID);
                    }
                    foreach (var id in allItemIDs)
                    {
                        //    allItemIDs = entities.OrderItems.Where(od => od.OrderItemID == id).Select(x => x.ItemID).ToList();
                        Item currentItem = entities.Items.FirstOrDefault(i => i.ItemID == id);
                        allItems.Add(currentItem);
                    }
                    currentReadModel.OrderID    = order.OrderID;
                    currentReadModel.CustomerID = order.CustomerID;
                    currentReadModel.Completed  = order.Completed;
                    currentReadModel.Cancelled  = order.Cancelled;
                    currentReadModel.TotalPrice = order.TotalPrice;
                    currentReadModel.Date       = order.Date;
                    currentReadModel.MonthYear  = order.MonthYear;
                    currentReadModel.Items      = allItems;
                    orderHistory.Add(currentReadModel);
                }
            }

            return(orderHistory);
        }