示例#1
0
        public EditOrder(EditOrderViewModel edit)
        {
            List <Order> order = db.Orders.Where(m => m.TableNo == edit.EditTableId).ToList();
            Mappings     map   = new Mappings();

            //Delete Order
            if (edit.OrderDeletion == true)
            {
                ManageRestaurant manage = new ManageRestaurant();
                foreach (Order index in order)
                {
                    db.Orders.Remove(index);
                    db.SaveChanges();
                }
                manage.TableStatus((int)edit.EditTableId, false);
            }
            //Update Order
            else
            {
                for (int index = 0; index < edit.EditedQuantity.Count(); index++)
                {
                    order[index].Quantity        = edit.EditedQuantity[index];
                    db.Entry(order[index]).State = EntityState.Modified;
                    db.SaveChanges();
                }
            }
        }
示例#2
0
        /// <summary>
        /// OrderData storing adds order into database checks for duplicate orders and combine them into single order and also change the status of the table.
        /// </summary>
        public OrderDataStoring(List <OrderViewModel> orderData)
        {
            Mappings map   = new Mappings();
            int      count = orderData.Count;

            //For Loop to combine Duplicate orders
            for (int index = 0; index < count - 1; index++)
            {
                //loop to check for duplicate values.
                for (int innerIndex = index + 1; innerIndex < count; innerIndex++)
                {
                    if (orderData[index].OrderId == orderData[innerIndex].OrderId)
                    {
                        orderData[index].Quantity = orderData[index].Quantity + orderData[innerIndex].Quantity;
                        count--;
                        orderData.RemoveAt(innerIndex);
                    }
                }
            }
            //store the order in database
            foreach (OrderViewModel index in orderData)
            {
                selectedTable        = index.TableNo;
                orderModel.TableNo   = index.TableNo;
                orderModel.OrderId   = index.OrderId;
                orderModel.Quantity  = index.Quantity;
                orderModel.OrderTime = index.OrderTime;
                db.Orders.Add(orderModel);
                db.SaveChanges();
            }
            //To toggle the status of table
            ManageRestaurant manage = new ManageRestaurant();
            bool             check  = manage.TableStatus(selectedTable, true);
        }
示例#3
0
        /// <summary>
        ///Bill Information such as Customer Name, Mob No, Bill Id, amount Paid etc is getting stored on database and Clearing Order Data from Database
        ///and Changing the table status to available
        /// </summary>
        /// <param name="bill"></param>
        public BillStoring(CustomerBillStoringViewModel bill)
        {
            Mappings map = new Mappings();

            map.BillStoring(bill.Bill);
            map.CustomerStoring(bill.Customer);
            int          tableNo   = (bill.Bill.TableNo);
            List <Order> orderList = db.Orders.Where(a => a.TableNo == tableNo).ToList();

            foreach (Order index in orderList)
            {
                db.Orders.Remove(index);
                db.SaveChanges();
            }
            ManageRestaurant manage = new ManageRestaurant();
            bool             check  = manage.TableStatus(bill.Bill.TableNo, false);
        }