private void ReservedTableOperation(int tblId)
        {
            try
            {
                var tableOrder = OrderingService.GetTableOrder(tblId);
                if (tableOrder == null)
                {
                    return;
                }

                orderList.Items.Clear();
                foreach (var oItm in tableOrder.OrderItems)
                {
                    var itemPrice    = oItm.Price.ToString(_customCulture);
                    var itemQuantity = oItm.Quantity.ToString(_customCulture);
                    var itemSum      = (oItm.Price * oItm.Quantity).ToString(_customCulture);
                    orderList.Items.Add(new ListViewItem(new[] { oItm.Name, itemPrice, itemQuantity, itemSum }));
                }

                var orderSum = tableOrder.TotalAmount;

                sumPriceLbl.Text  = orderSum.ToString(@"###.00");
                showTableLbl.Text = tblId.ToString();

                ToggleOrderEditButtons(true);
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
        protected void RefreshOrderControls(List <OrderDto> ordersList)
        {
            foreach (var ctrl in tablesTLP.Controls)
            {
                if (!(ctrl is Button) || (ctrl as Button).Name.Equals(@"tablesTitleBtn"))
                {
                    continue;
                }

                var btn         = ctrl as Button;
                var tblId       = btn.Name.Replace(@"table", string.Empty).ToInt();
                var orderForTbl = ordersList.FirstOrDefault(x => x.Table == tblId);
                btn.BackColor = orderForTbl != null
                    ? Color.SpringGreen
                    : Color.White;
            }

            if (showTableLbl.Text.IsEmpty())
            {
                orderList.Items.Clear();
            }
            else
            {
                var tblId      = showTableLbl.Text.ToInt();
                var tableOrder = OrderingService.GetTableOrder(tblId);
                if (tableOrder == null)
                {
                    orderList.Items.Clear();
                }
                else
                {
                    ReservedTableOperation(tblId);
                }
            }
        }
        private void FinishOrderOperation()
        {
            try
            {
                if (!@"Η παραγγελία θα κλείσει. Συνέχεια?".SimpleQMsg(@"Προσοχή"))
                {
                    return;
                }

                var tblId      = showTableLbl.Text.ToInt();
                var tableOrder = OrderingService.GetTableOrder(tblId);
                if (tableOrder == null)
                {
                    return;
                }

                OrderingService.FinalizeOrder(tblId);
                RefreshOrderControls(OrderingService.PendingOrders);
                ToggleOrderEditButtons(false);

                @"Το τραπέζι έκλεισε".InfoMsg(@"Επιτυχία παραγγελίας");
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
        public void OrdenacaoAutorAscendenteETituloDescendente()
        {
            var settings = new BooksContext();

            settings.BookOrdenation = new List <Sorting>
            {
                new Sorting {
                    ColumnName = "Autor"
                },
                new Sorting {
                    ColumnName = "Titulo", Ascending = false
                }
            };

            var servico = new OrderingService(settings);

            var livrosOrdenados = servico.Order(_books);

            Assert.IsNotNull(livrosOrdenados);

            Assert.AreEqual("Java How to Program", livrosOrdenados.First().Titulo);
            Assert.AreEqual("Internet & World Wide Web: How to Program", livrosOrdenados.ElementAt(1).Titulo);
            Assert.AreEqual("Head First Design Patterns", livrosOrdenados.ElementAt(2).Titulo);
            Assert.AreEqual("Patterns of Enterprise Application Architecture", livrosOrdenados.ElementAt(3).Titulo);
        }
 private void Initialize()
 {
     ord    = new OrderingService();
     tab    = new TableService();
     member = new Staff();
     order  = new Order();
     InitializeComponent();
 }
 public SingleTable(Table _CurrentTable, Staff _member)
 {
     CurrentTable = _CurrentTable;
     InitializeComponent();
     member       = _member;
     order        = new Order();
     tableService = new TableService();
     orderService = new OrderingService();
 }
Exemple #7
0
        public DaDMainForm()
        {
            InitializeComponent();

            _orderingService = new OrderingService();
            _mailingService  = new MailingService();

            NewOrder();
        }
        private void ProductSelectedOperation(int pId)
        {
            try
            {
                decimal quantitySelected = 1;
                var     quantityAction   = Enums.UserAction.Submitted;
                var     product          = S.ProductService
                                           .ListByCriteria(new ProductCriteriaDto {
                    Id = pId
                })
                                           .FirstOrDefault();

                if (product == null)
                {
                    return;
                }

                if (product.FixedQuantity)
                {
                    using (var setQForm = new SetQuantityForm())
                    {
                        setQForm.ShowDialog();
                        if (setQForm.Action == Enums.UserAction.Submitted)
                        {
                            quantitySelected = setQForm.QuantitySelected;
                        }
                        else
                        {
                            quantityAction = Enums.UserAction.Cancelled;
                        }
                    }
                }

                if (quantityAction != Enums.UserAction.Submitted)
                {
                    return;
                }

                var tblId     = showTableLbl.Text.ToInt();
                var orderItem = new OrderItemDto()
                {
                    Id       = product.Id,
                    Name     = product.Name,
                    Price    = product.Price,
                    Quantity = quantitySelected
                };

                OrderingService.SetupOrder(tblId, orderItem);
                ReservedTableOperation(tblId);
                RefreshOrderControls(OrderingService.PendingOrders);
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
 private void OnKeyDown(object sender, KeyEventArgs e)
 {
     if (e.Key == Key.Escape)
     {
         if (!ViewModel.ProjectTemplates.CloseAllEditions() && !OrderingService.ClearDraggin())
         {
             Close();
         }
     }
 }
Exemple #10
0
        DeliveryService(EventLog eventLog, DeliveryOrderRepository deliveryOrderRepository, OrderingService orderingService, KitchenService kitchenService)
        {
            this.eventLog = eventLog;
            this.deliveryOrderRepository = deliveryOrderRepository;
            this.orderingService         = orderingService;
            this.kitchenService          = kitchenService;

            this.eventLog.subscribe(new Topic("kitchen_orders"), e->{
                KitchenOrderAssemblyFinishedEvent kitchenOrderAssemblyFinishedEvent = (KitchenOrderAssemblyFinishedEvent)e;
                addDeliveryOrderToRepository(kitchenOrderAssemblyFinishedEvent);
            });
        public void OrdenacaoVazia()
        {
            var settings = new BooksContext();

            settings.BookOrdenation = new List <Sorting> {
                new Sorting()
            };

            var servico = new OrderingService(settings);

            var livrosOrdenados = servico.Order(_books);

            Assert.IsFalse(livrosOrdenados.Any());
        }
        public void OrdenacaoNaoDefinida()
        {
            try
            {
                var settings = new BooksContext();

                var servico = new OrderingService(settings);

                var livrosOrdenados = servico.Order(_books);
                Assert.Fail();
            }
            catch (Exception ex)
            {
                Assert.IsInstanceOfType(ex, typeof(OrdenationException));
            }
        }
        private void DeleteOrderItemOperation()
        {
            try
            {
                var selectedItems  = orderList.SelectedItems;
                var totalListItems = orderList.Items;
                var tblId          = showTableLbl.Text.ToInt();

                if (selectedItems.Count == 0)
                {
                    @"Δεν έχει επιλεγεί είδος".WarnMsg(@"Αποτυχία");
                }
                else
                {
                    foreach (ListViewItem item in selectedItems)
                    {
                        var itemName         = item.SubItems[0].Text;
                        var orderTotalToShow = sumPriceLbl.Text.ToDecimal() - (item.SubItems[1].ToDecimal() * item.SubItems[2].ToDecimal());
                        sumPriceLbl.Text = orderTotalToShow.ToString(_customCulture);
                        orderList.Items.Remove(item);

                        OrderingService.RemoveItemFromOrder(tblId, itemName);
                        ReservedTableOperation(tblId);
                    }
                }

                if (totalListItems.Count != 0)
                {
                    return;
                }

                foreach (var control in tablesTLP.Controls)
                {
                    if (!(control is Button) || !(control as Button).Text.Equals(tblId.ToString()))
                    {
                        continue;
                    }

                    var tableBtn = control as Button;
                    tableBtn.BackColor = Color.Transparent;
                }
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
        private void DaySumMenuItemOperation()
        {
            try
            {
                if (!$"Εκτύπωση συνόλου για ημέρα {DateTime.Now.ToString("dd/MM/yyyy")}. Συνέχεια?".SimpleQMsg())
                {
                    return;
                }

                var todayAmount = OrderingService.GetTodaysSum();
                PrintingService.DaySummary(todayAmount);
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
        private void btn_ready_Click(object sender, EventArgs e)
        {
            if (Lst_TableOrders.Items.Count == 0)
            {
                MessageBox.Show("There are no orders");
                //this.DialogResult = DialogResult.OK;
            }
            else
            {
                OrderingService service = new OrderingService();
                service.MarkItemsServed(CurrentTable);
                this.Close();

                /*MessageBox.Show("The order is ready to be served.");
                 * this.DialogResult = DialogResult.OK;*/
            }
        }
        private void CancelOrderOperation()
        {
            try
            {
                var tblId = showTableLbl.Text.ToInt();
                if (!$"Θέλετε να ακυρώσετε την παραγγελία στο τραπέζι {tblId}".SimpleQMsg(@"Ακύρωση παραγγελίας"))
                {
                    return;
                }

                OrderingService.RemoveOrder(tblId);
                RefreshOrderControls(OrderingService.PendingOrders);
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
        private void PrintOrderOperation()
        {
            try
            {
                if (!@"Η παραγγελία θα εκτυπωθεί. Συνέχεια?".SimpleQMsg(@"Προσοχή"))
                {
                    return;
                }

                var tblId      = showTableLbl.Text.ToInt();
                var tableOrder = OrderingService.GetTableOrder(tblId);
                if (tableOrder != null)
                {
                    PrintingService.ReceiptForOrder(tableOrder);
                }
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
        public async Task UpdateHomePageAsync()
        {
            // Configuration: SplitView, MVVM Basic, Blank page
            var testFrameworkName = "MVVMBasic";
            var viewModel         = new MainViewModel(GenContext.CurrentLanguage);
            await viewModel.ProjectSetup.InitializeAsync();

            viewModel.ProjectSetup.SelectedFramework = viewModel.ProjectSetup.Frameworks.First(pt => pt.Name == testFrameworkName);
            await viewModel.ProjectTemplates.InitializeAsync();

            var settingsPage = FindTemplate(viewModel.ProjectTemplates.PagesGroups, "wts.Page.Settings");

            settingsPage.AddItemCommand.Execute(null);
            settingsPage.SaveItemCommand.Execute(null);

            var blankPage = FindTemplate(viewModel.ProjectTemplates.PagesGroups, "wts.Page.Blank");

            // Add Blank 1
            blankPage.AddItemCommand.Execute(null);
            blankPage.SaveItemCommand.Execute(null);

            // Add Blank 2
            blankPage.AddItemCommand.Execute(null);
            blankPage.SaveItemCommand.Execute(null);

            // Add Blank 3
            blankPage.AddItemCommand.Execute(null);
            blankPage.SaveItemCommand.Execute(null);

            // Drag Page1 in position 1 to Main in position 0
            OrderingService.SetDrag(viewModel.ProjectTemplates.SavedPages.First().ElementAt(1));
            OrderingService.SetDropTarget(viewModel.ProjectTemplates.SavedPages.First().ElementAt(0));
            OrderingService.SetDrop(viewModel.ProjectTemplates.SavedPages.First().ElementAt(0));

            // Check that Page1 is in position 0 and is the current Home Page
            Assert.True(UserSelectionService.HomeName == "Blank");
            Assert.True(viewModel.ProjectTemplates.SavedPages.First().ElementAt(0).ItemName == "Blank");
        }
        private void MoveOrderOperation()
        {
            try
            {
                var tblId   = showTableLbl.Text.ToInt();
                var toTable = 0;

                using (var form = new TableNumsForm(tblId))
                {
                    form.ShowDialog();
                    if (form.Action == Enums.UserAction.Submitted)
                    {
                        toTable = form.ToTable;
                    }
                }

                OrderingService.MoveOrder(tblId, toTable);
            }
            catch (Exception x)
            {
                x.ShowException();
            }
        }
 public OrdersController(OrderingService orderingService)
 {
     this.orderingService = orderingService;
 }
 public CustomerController(OrderingService orderingService)
 {
     _orderingService = orderingService;
 }