private void UpdateTicketOptions(TextBlockButton button) { if ((SessionManager.ActiveTicketItem == null) || (button == null)) { return; } // DEBUG: This isn't always going to be 'this' simple... If the ingredient // is already on, then it's might be getting removed (not added)... It // might also indicate the addition of extra. Change count (the constant '1', // in the Add() below) is always positive, even on deletions. It's a factor // that allows support for "extra-extra" type options. if (button.IsChecked == true) { if (!TicketItemOption.HasOption(SessionManager.ActiveTicketItem.PrimaryKey, GetId(button))) { TicketItemOption option = TicketItemOption.Add(SessionManager.ActiveTicketItem.PrimaryKey.Id, GetId(button), PosModels.Types.TicketItemOptionType.None, 1); } } else { TicketItemOption.Delete(SessionManager.ActiveTicketItem, GetId(button), true); } OrderEntryControl.UpdateDisplayedOrderAmount(); }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: #line 12 "..\..\..\MainWindow.xaml" ((TemPOS.MainWindow)(target)).Closing += new System.ComponentModel.CancelEventHandler(this.Window_Closing); #line default #line hidden #line 12 "..\..\..\MainWindow.xaml" ((TemPOS.MainWindow)(target)).Closed += new System.EventHandler(this.Window_Closed); #line default #line hidden #line 13 "..\..\..\MainWindow.xaml" ((TemPOS.MainWindow)(target)).Loaded += new System.Windows.RoutedEventHandler(this.Window_Loaded); #line default #line hidden return; case 2: this.Configuration = ((PosControls.ConfigurationManager)(target)); return; case 3: #line 17 "..\..\..\MainWindow.xaml" ((System.Windows.Controls.Grid)(target)).Initialized += new System.EventHandler(this.Grid_Initialized); #line default #line hidden return; case 4: this.mainPane = ((System.Windows.Controls.DockPanel)(target)); return; case 5: this.orderEntryControl = ((TemPOS.OrderEntryControl)(target)); return; case 6: this.loginControl = ((TemPOS.LoginControl)(target)); return; } this._contentLoaded = true; }
private void textBoxManagerComments_CommitEdit(object sender, EventArgs e) { string text = textBoxManagerComments.Text; if ((text != null) && text.Equals("")) { text = null; } SelectedTicket.SetManagerNote(text); SelectedTicket.Update(); OrderEntryControl.InitializeTicketSelection(SelectedTicket); }
private void NotifyParent(bool sameButton) { Item item = SessionManager.ActiveItem; if ((SessionManager.ActiveCategory == null) || (item == null)) { return; } // Add a new item OrderEntryControl.ClearItemOptions(); SessionManager.ActiveItem = item; OrderEntryControl.AddItemToOrder(item); SessionManager.ActiveItem = item; OrderEntryControl.UpdateDisplayedOrderAmount(); OrderEntryControl.SetItemOptions(); }
private void UpdateItems() { // Clear the Item Options OrderEntryControl.ClearItemOptions(); if (SessionManager.ActiveItem == null) { OrderEntryControl.ClearReceiptTape(); } SessionManager.ActiveCategory = ActiveCategory; // Move back to OrderEnteryControl, instead, call an event handler here if (SessionManager.ActiveCategory != null) { OrderEntryControl.SetCategory(); } }
private void UpdateTicketOptions(TextBlockButton button) { if (button.IsChecked == true) { if (!TicketItemOption.HasOption(SessionManager.ActiveTicketItem.PrimaryKey, GetId(button))) { TicketItemOption option = TicketItemOption.Add(SessionManager.ActiveTicketItem.PrimaryKey.Id, GetId(button), PosModels.Types.TicketItemOptionType.Add, 1); } } else { TicketItemOption.Delete( SessionManager.ActiveTicketItem, GetId(button), true); } OrderEntryControl.UpdateDisplayedOrderAmount(); }
public OrderEntryControl() { if (Singleton != null) { throw new Exception("OrderEntryControl Singleton Exception"); } Singleton = this; InitializeComponent(); InitializeStatusBarUpdate(); InitializeSessionManager(); InitializeReceiptTape(); InitializeCheckFutureOrdersTimer(); InitializeSpeechCommands(); InitializeBroadcastMessageEventHanlder(); // Wired into XAML this causes an exception in Release build OrderEntryTicketSelectionControl.SelectedTicketChanged += ticketSelectionControl_SelectedTicketChanged; StringsCore.LanguageChanged += StringsCore_LanguageChanged; }
public void RemoveSelectedItemFromReceiptTape() { // Remove all child items List <TicketItemTemplate> childTicketItems = (from TicketItemTemplate item in Items where item.TicketItem.ParentTicketItemId == SelectedItem.TicketItem.PrimaryKey.Id select item).ToList(); foreach (TicketItemTemplate childTicketItem in childTicketItems) { Items.Remove(childTicketItem); } // Remove the item from the receipt tape Items.Remove(SelectedItem); OrderEntryControl.SetOrderAmountText(TicketSubTotal.ToString("C2")); SessionManager.ResetItemEntry(); OrderEntryControl.InitializeTicket(); OrderEntryCommands.UpdateInOrderCommands(); ClearSelection(); }
public void InitializeListBox(TicketSelectionShow show) { var tickets = new List <Ticket>(); if (show == TicketSelectionShow.All) { tickets.AddRange(TicketManager.GetAllTickets()); } else if (show == TicketSelectionShow.Range) { tickets.AddRange(TicketManager.GetRange(RangeStart, RangeEnd)); } else if (show == TicketSelectionShow.AllDay) { if (DayOfOperation.Today != null) { tickets.AddRange(TicketManager.GetRange(DayOfOperation.Today.StartOfDay, DateTime.Now)); } else { DayOfOperation lastDay = DayOfOperation.GetLatestInYear(DayOfOperation.CurrentYear); if (lastDay.EndOfDay != null) { tickets.AddRange(TicketManager.GetRange(lastDay.StartOfDay, lastDay.EndOfDay.Value)); } } } else if (show == TicketSelectionShow.AllOpen) { tickets.AddRange(TicketManager.GetOpenTickets()); } else if (show == TicketSelectionShow.MyOpen) { tickets.AddRange(TicketManager.GetOpenTickets(SessionManager.ActiveEmployee.Id)); } else if (show == TicketSelectionShow.Closed) { tickets.AddRange(TicketManager.GetTodaysClosedTickets()); } else if (show == TicketSelectionShow.Canceled) { tickets.AddRange(TicketManager.GetTodaysCanceledTickets()); } else if (show == TicketSelectionShow.Dispatched) { tickets.AddRange(TicketManager.GetDispatchedTickets()); } else if (show == TicketSelectionShow.Future) { tickets.AddRange(TicketManager.GetFutureOrderTickets()); } Items.Clear(); foreach (Ticket ticket in tickets .Where(ticket => (TicketTypeFilterControl.CurrentFilter == null) || (TicketTypeFilterControl.CurrentFilter.Value == ticket.Type))) { string text; Seating seat = SeatingManager.GetSeating(ticket.SeatingId); if (seat != null) { text = (ticket.OrderId != null ? Types.Strings.Order + ": " + ticket.OrderId.Value + ", " : "") + Types.Strings.Ticket + ": " + ticket.PrimaryKey.Id + (ticket.PartyId != 0 ? Types.Strings.Party + ticket.PartyId : "") + ", " + seat.Description + Environment.NewLine + Types.Strings.CreateTime + ticket.CreateTime; if (!String.IsNullOrEmpty(ticket.ManagerNote)) { text += Environment.NewLine + Types.Strings.Comment + ticket.ManagerNote; } } else { text = (ticket.OrderId != null ? Types.Strings.Order + ": " + ticket.OrderId.Value + ", " : "") + Types.Strings.Ticket + ": " + ticket.PrimaryKey.Id + (ticket.PartyId != 0 ? Types.Strings.Party + ticket.PartyId : "") + ", " + ticket.Type.GetFriendlyName() + Environment.NewLine + Types.Strings.CreateTime + ticket.CreateTime; if (!String.IsNullOrEmpty(ticket.ManagerNote)) { text += Environment.NewLine + Types.Strings.Comment + ticket.ManagerNote; } } AddItem(ticket, text); } OrderEntryControl.SetDisplayedTicketTypeToStatusBar(); }
private void CreateTicketCommand() { // Make sure that start-of-day has occured if (DayOfOperation.Today == null) { PosDialogWindow.ShowDialog( Types.Strings.YouCanNotCreateTicketsUntilStartOfDayHasBeenCompleted, Types.Strings.RequiresStartOfDay, DialogButtons.Ok); return; } // Create the seating selection control if (ConfigurationManager.UseSeating) { PosDialogWindow window = SeatingSelectionControl.CreateInDefaultWindow(); var control = window.DockedControl as SeatingSelectionControl; if (control == null) { return; } control.InitializeFromTicket(null); // Show the dialog PosDialogWindow.ShowPosDialogWindow(window); if (!window.ClosedByUser) { SessionManager.ActiveTicket = TicketManager.Add(control.TicketType, Party.NoPartyId, control.SelectedSeatingId, SessionManager.ActiveEmployee.Id, ((control.SelectedCustomer != null) ? control.SelectedCustomer.Id : Customer.NoCustomerId)); SelectedTicket = SessionManager.ActiveTicket; OrderEntryControl.SetAndLoadActiveTicket(SessionManager.ActiveTicket); } MainWindow.ShowWindowShadingOverlay = false; } else { SessionManager.ActiveTicket = TicketManager.Add(TicketType.DineIn, Party.NoPartyId, Seating.NoSeatingId, SessionManager.ActiveEmployee.Id, Customer.NoCustomerId); SelectedTicket = SessionManager.ActiveTicket; OrderEntryControl.SetAndLoadActiveTicket(SessionManager.ActiveTicket); } // Stop auto-logoff timer, if it should be disabled StoreSetting setting = SettingManager.GetStoreSetting("EnableAutoLogoffWhileInOrderEntry"); if ((setting.IntValue == null) || (setting.IntValue.Value == 0)) { LoginControl.StopAutoLogoutTimer(); } // Need to change displayed tickets to open tickets, otherwise it will cause // an exception in the TicketCashoutControl when cashing-out from in-order if ((TicketFilterControl.CurrentFilter != TicketSelectionShow.MyOpen) && (TicketFilterControl.CurrentFilter != TicketSelectionShow.AllOpen) && (TicketFilterControl.CurrentFilter != TicketSelectionShow.AllDay) && (TicketFilterControl.CurrentFilter != TicketSelectionShow.All)) { TicketFilterControl.CurrentFilter = TicketSelectionShow.MyOpen; } UpdateTickets(); }