示例#1
0
        public async Task <IActionResult> PutOrder_Service(int id, Order_Service order_Service)
        {
            if (id != order_Service.OrderID)
            {
                return(BadRequest());
            }

            _context.Entry(order_Service).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!Order_ServiceExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
示例#2
0
        private void SetLatestOrder()
        {
            Order_Service orderService = new Order_Service();

            table.order = orderService.GetLatestOrder();
            new SwitchForms(employee, this, new EditForm(employee, table, "Edit"));
        }
示例#3
0
        public async Task SaveOrder_SericeAsync(Order_Service item, bool isNewItem = false)
        {
            var uri = new Uri(string.Format(Constants.Order_ServicesUrl, string.Empty));

            try
            {
                var json    = JsonConvert.SerializeObject(item);
                var content = new StringContent(json, Encoding.UTF8, "application/json");

                HttpResponseMessage response = null;
                if (isNewItem)
                {
                    response = await _client.PostAsync(uri, content);
                }
                else
                {
                    response = await _client.PutAsync(uri, content);
                }

                if (response.IsSuccessStatusCode)
                {
                    Debug.WriteLine(@"\tOrder_Service successfully saved.");
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(@"\tERROR {0}", ex.Message);
            }
        }
        private void Payment_Load(object sender, EventArgs e)
        {
            os = new Order_Service();
            navigation.Hide();

            initOrderItems();
        }
示例#5
0
        private void btn_ViewOrder7_Click(object sender, EventArgs e)
        {
            pnl_OrderItems.Show();
            pnl_homekeuken.Hide();
            lbl_OrderItems.Text = "Tafel 7";
            Order_Items_Service order_Item_Service = new Order_Items_Service();
            List <Order_Item>   order_Item_List    = order_Item_Service.Get_Order_Items();
            Order_Item          order_Items        = new Order_Item();
            Order_Service       order_Service      = new Order_Service();
            List <Order>        order_List         = order_Service.Get_Orders();

            foreach (Order items in order_List)
            {
                foreach (Order_Item orderitems in order_Item_List)
                {
                    if (items.Tafel_ID == 7)
                    {
                        listView_OrderItems.View = View.Details;
                        ListViewItem li = new ListViewItem(orderitems.Tijd.ToString());
                        li.SubItems.Add(orderitems.Menu_Item_ID.ToString());
                        li.SubItems.Add(orderitems.status.ToString());
                        listView_OrderItems.Items.Add(li);
                    }
                }
            }
        }
示例#6
0
        public async Task <ActionResult <Order_Service> > PostOrder_Service(Order_Service order_Service)
        {
            _context.Order_Services.Add(order_Service);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetOrder_Service", new { id = order_Service.OrderID }, order_Service));
        }
示例#7
0
 private void button1_Click(object sender, EventArgs e)
 {
     if (dataGridView1.CurrentCell.RowIndex >= 0)
     {
         Merchant_Service.finishDeliver(Order_Service.GetDeliverOrderList(currentMerchant)[dataGridView1.CurrentCell.RowIndex]);
     }
 }
示例#8
0
 public void updateMOF(Manage_Order_Form mof)
 {
     mof.bindingSource1.DataSource = Order_Service.GetOrderList(currentMerchant);
     //typeBindingSource.DataSource = currentMerchant.CuisineTypes;
     mof.bindingSource1.ResetBindings(false);
     mof.bindingSource2.DataSource = mof.bindingSource1.Current;
     Thread.Sleep(5000);
 }
示例#9
0
        private void btn_VoegToe_DEF_Click(object sender, EventArgs e)
        {
            lbl_Productnaam.Text = listView_MenuItems.SelectedItems[0].SubItems[1].Text;
            //Order
            Order_Service order_Service = new Order_Service();
            List <Order>  orders        = new List <Order>();

            //Order items
            Order_Items_Service order_Items_Service = new Order_Items_Service();
            List <Order_Item>   order_items         = new List <Order_Item>();

            //Werknemer
            Werknemer werknemer = new Werknemer();

            werknemer.Werknemer_ID = 2;

            //Tafel info
            tafel_Service tafel_Service = new tafel_Service();
            List <Tafel>  tafels        = tafel_Service.Get_Tafels();

            //Order Items info
            Order_Item order_Item = new Order_Item();

            foreach (Tafel tafel in tafels)
            {
                if (tafel.Tafel_Status == Tafel_Status.Open || tafel.Tafel_Status == Tafel_Status.Gereserveerd)
                {
                    orders = order_Service.New_Order(tafel, werknemer);
                    foreach (Order order in orders)
                    {
                        order_Item.Order_ID = order.Order_ID;
                    }

                    order_Item.Menu_Item_ID = int.Parse(listView_MenuItems.SelectedItems[0].SubItems[1].Text);
                    order_Item.status       = Order_Status.Besteld;
                    order_Item.Hoeveelheid  = int.Parse(txt_Hoeveelheid.Text);
                    order_Item.Tijd         = DateTime.Now;
                    order_Item.Opmerking    = txt_Opmerking.Text;
                }
                //else if (tafel.Tafel_Status == Tafel_Status.Bezet)
                //{
                //    orders = order_Service.Get_Orders();
                //    order_Item.Menu_Item_ID = int.Parse(listView_MenuItems.SelectedItems[0].SubItems[1].Text);
                //    order_Item.status = Order_Status.Besteld;
                //    order_Item.Hoeveelheid = int.Parse(txt_Hoeveelheid.Text);
                //    order_Item.Tijd = DateTime.Now;
                //    order_Item.Opmerking = txt_Opmerking.Text;

                //    foreach (Order order in orders)
                //    {

                //    }
                //    orders = order_Items_Service.Add_To_Order();
                //}
            }
        }
 public ShoppingController()
 {
     this.cart_Service       = new Cart_Service();
     this.item_Service       = new Item_Service();
     this.customer_Service   = new Customer_Service();
     this.order_Service      = new Order_Service();
     this.affiliate_Service  = new Affiliate_Service();
     this.department_Service = new Department_Service();
     this.address_Service    = new Address_Service();
 }
示例#11
0
        public ResultOutput AddOrder(Order_Input order_Input)
        {
            try
            {
                int orderId = 0;

                if (order_Input.services.Count == 0)
                {
                    return(new ResultOutput(ResponseCode.NotFound, "Services not Found"));
                }

                var executionStrategy = _context.Database.CreateExecutionStrategy();
                executionStrategy.Execute(() =>
                {
                    var trans    = _context.Database.BeginTransaction();
                    Orders order = new Orders
                    {
                        name         = order_Input.name.Trim(),
                        phoneNumber  = order_Input.phoneNumber.Trim(),
                        email        = order_Input.email.Trim(),
                        addressFrom  = order_Input.addressFrom.Trim(),
                        addressTo    = order_Input.addressTo.Trim(),
                        notes        = order_Input.notes.Trim(),
                        creationDate = DateTime.Now,
                        updatedDate  = DateTime.Now
                    };
                    _context.Orders.Add(order);
                    _context.SaveChanges();
                    orderId = order.id;

                    if (order_Input.services != null)
                    {
                        foreach (var ordSer in order_Input.services)
                        {
                            Order_Service order_Service = new Order_Service
                            {
                                orderId            = orderId,
                                serviceId          = ordSer.serviceId,
                                executeServiceDate = ordSer.executeServiceDate,
                                creationDate       = DateTime.Now,
                                updatedDate        = DateTime.Now
                            };
                            _context.Order_Service.Add(order_Service);
                            _context.SaveChanges();
                        }
                    }
                    trans.Commit();
                });
                return(GetOrderById(orderId));
            }
            catch (Exception ex)
            {
                return(new ResultOutput(ResponseCode.Error, ex.ToString()));
            }
        }
示例#12
0
 public deliverForm(Merchant merchant)
 {
     this.currentMerchant = merchant;
     bindingSource1       = new BindingSource();
     InitializeComponent();
     bindingSource1.DataSource = Order_Service.GetDeliverOrderList(currentMerchant);
     //typeBindingSource.DataSource = currentMerchant.CuisineTypes;
     bindingSource1.ResetBindings(false);
     bindingSource2.DataSource = bindingSource1.Current;
     //orderList = Order_Service.GetOrderList();
 }
示例#13
0
        public void cancelOrder()
        {
            int cancelOrder = Order_Service.GetWaitCancelOrderList(currentMerchant).Count;

            if (cancelOrder > cancelOrder1)
            {
                textBox1.Text += "注意啦!有客户要取消订单!\r\n";
            }
            cancelOrder2 = cancelOrder;
            Thread.Sleep(5000);
        }
示例#14
0
        private void bestelBtn_Click(object sender, EventArgs e)
        {
            orderService     = new Order_Service();
            tableService     = new Table_Service();
            order.EmployeeId = employee.Id;
            billService      = new Bill_Service();
            try
            {
                bill = billService.GetBillByTableId(tafel.Number);
            }
            catch (Exception d)
            {
                orders = new List <Order>();
                bill   = new Bill(DateTime.Now, tafel, orders, employee, false);
                billService.AddBill(bill);
                MessageBox.Show("Bestelling is geplaatst.", "Attentie", MessageBoxButtons.OK, MessageBoxIcon.Information);
                orderService.AddOrderWhereBillIdIs(order, bill.Id);
                tafel.Occupied = true;
                tableService.ModifyTable(tafel);
                return;
            }

            if (bill.Payed == false)
            {
                orderService.AddOrderWhereBillIdIs(order, bill.Id);
                MessageBox.Show("Bestelling is geplaatst.", "Attentie", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            else
            {
                orders = new List <Order>();
                bill   = new Bill(DateTime.Now, tafel, orders, employee, false);
                billService.AddBill(bill);
                MessageBox.Show("Bestelling is geplaatst.", "Attentie", MessageBoxButtons.OK, MessageBoxIcon.Information);
                orderService.AddOrderWhereBillIdIs(order, bill.Id);
                tafel.Occupied = true;
                tableService.ModifyTable(tafel);
            }

            foreach (Dish dish in order.Dishes)
            {
                dishService = new Dish_Service();
                dishService.ModifyStock(dish.Id, dish.Stock - 1);
            }

            foreach (Drink drink in order.Drinks)
            {
                drinkService = new Drink_Service();
                drinkService.ModifyStock(drink.Id, drink.Stock - 1);
            }

            order = new Order();
        }
示例#15
0
        public OrderUI(/*int table,*/ Employee employee)
        {
            InitializeComponent();

            this.order_Service = new Order_Service();
            this.TableNumber   = 0;
            this.employee      = employee;

            FillTableList();

            ShowPanel("menu");
        }
示例#16
0
        public void newOrder()
        {
            int waitOrder2   = Order_Service.GetOrderList(currentMerchant).Count;
            int cancelOrder2 = Order_Service.GetWaitCancelOrderList(currentMerchant).Count;

            if (waitOrder2 + cancelOrder2 > waitOrder1 + cancelOrder1)
            {
                textBox1.Text += "您有新的订单啦!\r\n";
            }
            waitOrder1   = waitOrder2;
            cancelOrder1 = waitOrder2;
            Thread.Sleep(5000);
        }
示例#17
0
        private void btn_StatTafel2_Click(object sender, EventArgs e)
        {
            //Verberg alle andere panels
            pnl_StatusOverzicht.Hide();
            pnl_OrderBevestiging.Hide();
            pnl_OpenOrders.Hide();
            pnl_TafelOverzicht.Hide();

            //Toon bestelling panel en verander tafel
            pnl_TafelNAV.Show();
            lbl_StatusOverzicht.Text = "Tafel 2";

            Tafel tafel_ID = new Tafel();

            tafel_ID.Tafel_ID = 2;

            Order_Service order_Service = new Order_Service();
            Order         order         = order_Service.DB_Get_Order_By_Tafel(tafel_ID.Tafel_ID);

            Order_Items_Service order_Items_Service = new Order_Items_Service();
            List <Order_Item>   order_Items         = order_Items_Service.DB_Get_Order_Items_By_Tafel(tafel_ID.Tafel_ID, order.Order_ID);

            tafel_Service tafel_Status = new tafel_Service();
            List <Tafel>  tafels       = tafel_Status.Get_Tafels();

            //Get correct orders
            pnl_OpenOrders.Show();
            listView_OrderOverzicht.Clear();

            foreach (Order_Item item in order_Items)
            {
                ListViewItem list = new ListViewItem(item.Menu_Item_ID.ToString());
                list.SubItems.Add(item.status.ToString());
                list.SubItems.Add(item.Hoeveelheid.ToString());
                list.SubItems.Add(item.Tijd.ToString());
                list.SubItems.Add(item.Opmerking);
                listView_OrderOverzicht.Items.Add(list);
            }

            //foreach (Tafel tafel in tafels)
            //{
            //    if (tafel.Tafel_Status == Tafel_Status.Bezet)
            //    {

            //    }
            //    else
            //    {
            //        pnl_BestellingOpnemen.Show();
            //    }
            //}
        }
        public Overview(Employee employee)
        {
            InitializeComponent();
            order_service = new Order_Service();
            table_service = new RestaurantTables_Service();
            tables        = new List <RestaurantTable>();
            this.employee = employee;

            btn_takeorder.Enabled   = false;
            btn_takepayment.Enabled = false;

            navigation.Hide();

            GetSetformation();
        }
示例#19
0
 public PaymentController()
 {
     this.payFastSettings = new PayFastSettings
     {
         MerchantId  = ConfigurationManager.AppSettings["MerchantId"],
         MerchantKey = ConfigurationManager.AppSettings["MerchantKey"],
         PassPhrase  = ConfigurationManager.AppSettings["PassPhrase"],
         ProcessUrl  = ConfigurationManager.AppSettings["ProcessUrl"],
         ValidateUrl = ConfigurationManager.AppSettings["ValidateUrl"],
         ReturnUrl   = ConfigurationManager.AppSettings["ReturnUrl"],
         CancelUrl   = ConfigurationManager.AppSettings["CancelUrl"],
         NotifyUrl   = ConfigurationManager.AppSettings["NotifyUrl"]
     };
     order_Service   = new Order_Service();
     payment_Service = new Payment_Service();
 }
示例#20
0
        private void DeleteOrderItemButton_Click(object sender, EventArgs e)
        {
            Order_Service orderserv = new Order_Service();  //deletes selected order item

            if (EditView.SelectedItems.Count > 0)
            {
                orderserv.DeleteOrderItem(int.Parse(EditView.SelectedItems[0].SubItems[1].Text));
                Messagelabel.Text = "Deleted Order item with ID " + EditView.SelectedItems[0].SubItems[1].Text;
                orderserv.AdjustStock(int.Parse(EditView.SelectedItems[0].SubItems[2].Text), int.Parse((EditView.SelectedItems[0].SubItems[3].Text)), "+");
                FillOrderViewByOrderID(orderId);
            }
            else
            {
                Messagelabel.Text = "No item selected!";
            }
        }
示例#21
0
        private void Btn_BestellingPlaatsen_Click(object sender, EventArgs e) //bestellingen versturen naar db
        {
            int recentOrderID = 0;

            if (listViewWinkelwagen.Items.Count == 0) //check of alle velden zijn ingevuld
            {
                MessageBox.Show("Vul alle velden in.", "Foutmelding", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                Table            currentTable     = Table.GetTable();
                MenuItem_Service menuItem_Service = MenuItem_Service.GetMenuItemService();
                Table_Service    table_Service    = Table_Service.GetTableService();
                Login_Service    s = Login_Service.GetLoginService();
                int reservationID  = table_Service.GetReservationID(currentTable.currentTable.TableID); //reservationID vinden van betreffende tafel
                if (reservationID == 0)
                {
                    MessageBox.Show("Er is geen reservering voor deze tafel.", "Foutmelding", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    Order_Service service = Order_Service.GetOrderService();
                    if (service.PlaceOrder(reservationID, s.CurrentEmployee.Id))
                    {
                        recentOrderID = GetMostRecentOrderID();
                        List <MenuOrder> menuOrders    = new List <MenuOrder>();
                        MenuOrder_DAO    menuOrder_DAO = new MenuOrder_DAO();
                        foreach (ListViewItem li in listViewWinkelwagen.Items) //Lijst met MenuOrders maken vanuit winkelwagen
                        {
                            Model.MenuOrder menuOrder = new MenuOrder(int.Parse(li.SubItems[1].Text), recentOrderID, menuItem_Service.GetMenuItemID(li.Text));
                            menuOrders.Add(menuOrder);
                        }
                        foreach (MenuOrder menuOrder in menuOrders) //lijst met menuOrders naar db sturen
                        {
                            menuOrder_DAO.PlaceMenuOrder(menuOrder.Amount, menuOrder.OrderID, menuOrder.MenuItemID);
                            menuOrder_DAO.UpdateStock(menuOrder.Amount, menuOrder.MenuItemID);
                        }
                        OrderPlaced();
                        this.Refresh(); //zet scherm weer op default
                    }
                    else
                    {
                        MessageBox.Show("Niet gelukt om de order te maken.", "Foutmelding", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
        }
示例#22
0
        private void FillOrderViewByOrderID(int orderID) //fills the order item list
        {
            Order_Service    orderserv     = new Order_Service();
            List <OrderItem> orderitemlist = orderserv.GetByID(orderID);

            EditView.Items.Clear();
            foreach (OrderItem item in orderitemlist)
            {
                ListViewItem li = new ListViewItem(item.orderID.ToString());
                li.SubItems.Add(item.orderItems_id.ToString());
                li.SubItems.Add(item.menuItemID.ToString());
                li.SubItems.Add(item.amount.ToString());
                li.SubItems.Add(item.status.ToString());
                li.SubItems.Add(item.menuItemName);
                EditView.Items.Add(li);
            }
        }
        public TakeOrder(Employee employee, RestaurantTable table)
        {
            InitializeComponent();

            ShowCorrectPanel(1);

            flowLayoutPanelMenu.Controls.Clear();
            PopulateMenu();

            navigation.Hide();

            order_service = new Order_Service();
            this.employee = employee;
            this.table    = table;

            lbl_tableNumber.Text = table.TableId.ToString();
            lbl_ActiveMenu.Text  = "";
        }
示例#24
0
        public Form1(Merchant merchant)
        {
            this.currentMerchant = merchant;
            this.mof             = new Manage_Order_Form(merchant);
            this.wcf             = new waitCancelForm(merchant);
            this.af = new acceptedForm(merchant);
            //this.cf = new cancelForm(merchant);
            this.df           = new deliverForm(merchant);
            this.ff           = new finishForm(merchant);
            this.finishOrder1 = Order_Service.GetFinishOrderList(merchant).Count;
            this.waitOrder1   = Order_Service.GetOrderList(merchant).Count;
            this.cancelOrder1 = Order_Service.GetWaitCancelOrderList(merchant).Count;
            System.Windows.Forms.Timer timer1 = new System.Windows.Forms.Timer();
            timer1.Interval = 3000;
            timer1.Tick    += new System.EventHandler(timer1_Tick);
            timer1.Start();


            InitializeComponent();
        }
示例#25
0
        private bool CheckStockAmount(ListView list, int pos)
        {
            Order_Service orderService = new Order_Service();

            if (list.SelectedItems.Count > 0)
            {
                int stock = orderService.CheckStock(int.Parse(list.SelectedItems[0].SubItems[pos].Text));
                if (stock < 1)
                {
                    Messagelabel.Text = "Insufficient stock!";
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
 public OrdersController()
 {
     this.order_Service = new Order_Service();
 }
示例#27
0
        private int GetMostRecentOrderID()
        {
            Order_Service order_Service = Order_Service.GetOrderService();

            return(order_Service.GetMostRecentOrderID());
        }
示例#28
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            int waitOrder2   = Order_Service.GetOrderList(currentMerchant).Count;
            int cancelOrder2 = Order_Service.GetWaitCancelOrderList(currentMerchant).Count;

            if (waitOrder2 + cancelOrder2 > waitOrder1 + cancelOrder1)
            {
                textBox1.Text += $"{DateTime.Now.ToLocalTime().ToString()}:您有新的订单啦!\r\n";
            }
            //int cancelOrder = Order_Service.GetWaitCancelOrderList(currentMerchant).Count;
            if (cancelOrder2 > cancelOrder1)
            {
                textBox1.Text += $"{DateTime.Now.ToLocalTime().ToString()}:注意啦!有客户要取消订单!\r\n";
            }
            waitOrder1   = waitOrder2;
            cancelOrder1 = cancelOrder2;

            int finishOrder = Order_Service.GetFinishOrderList(currentMerchant).Count;

            if (finishOrder > finishOrder1)
            {
                textBox1.Text += $"{DateTime.Now.ToLocalTime().ToString()}:订单已完成!\r\n";
            }
            finishOrder1 = finishOrder;
            //更新mof
            mof.bindingSource1.DataSource = Order_Service.GetOrderList(currentMerchant);
            mof.bindingSource1.ResetBindings(false);
            if (mof.dataGridView3.Rows.Count <= 1)
            {
                mof.bindingSource2.DataSource = mof.bindingSource1.Current;
            }
            //mof.bindingSource2.DataSource = mof.bindingSource1.Current;
            //更新wcf
            wcf.bindingSource1.DataSource = Order_Service.GetWaitCancelOrderList(currentMerchant);
            wcf.bindingSource1.ResetBindings(false);
            if (wcf.dataGridView1.Rows.Count <= 1)
            {
                wcf.bindingSource2.DataSource = wcf.bindingSource1.Current;
            }
            //wcf.bindingSource2.DataSource = wcf.bindingSource1.Current;

            //更新af
            af.bindingSource1.DataSource = Order_Service.GetAcceptedOrderList(currentMerchant);
            af.bindingSource1.ResetBindings(false);
            if (af.dataGridView1.Rows.Count <= 1)
            {
                af.bindingSource2.DataSource = af.bindingSource1.Current;
            }
            //af.bindingSource2.DataSource = af.bindingSource1.Current;
            //更新df
            df.bindingSource1.DataSource = Order_Service.GetDeliverOrderList(currentMerchant);
            df.bindingSource1.ResetBindings(false);
            if (df.dataGridView1.Rows.Count <= 1)
            {
                df.bindingSource2.DataSource = df.bindingSource1.Current;
            }
            //df.bindingSource2.DataSource = df.bindingSource1.Current;
            //更新ff
            ff.bindingSource1.DataSource = Order_Service.GetFinishOrderList(currentMerchant);
            ff.bindingSource1.ResetBindings(false);
        }
示例#29
0
 private void button1_Click(object sender, EventArgs e)
 {
     Merchant_Service.acceptCancel(Order_Service.GetWaitCancelOrderList(currentMerchant)[dataGridView1.CurrentCell.RowIndex]);
 }
示例#30
0
 private void dataGridView1_MouseClick(object sender, MouseEventArgs e)
 {
     bindingSource2.DataSource = Order_Service.GetDeliverOrderList(currentMerchant)[dataGridView1.CurrentCell.RowIndex].OrderItems;
     bindingSource2.ResetBindings(false);
 }