public PaymentEditorViewModel(IApplicationState applicationState, ITicketService ticketService, IPrinterService printerService, IUserService userService, IAutomationService automationService, TicketTotalsViewModel totals) { _applicationState = applicationState; _ticketService = ticketService; _printerService = printerService; _userService = userService; _automationService = automationService; _manualPrintCommand = new CaptionCommand<PrintJob>(Resources.Print, OnManualPrint, CanManualPrint); _makePaymentCommand = new CaptionCommand<PaymentTemplate>("", OnMakePayment, CanMakePayment); _serviceSelectedCommand = new CaptionCommand<CalculationTemplate>("", OnSelectCalculationTemplate); SubmitAccountPaymentCommand = new CaptionCommand<string>(Resources.AccountBalance_r, OnSubmitAccountPayment, CanSubmitAccountPayment); ClosePaymentScreenCommand = new CaptionCommand<string>(Resources.Close, OnClosePaymentScreen, CanClosePaymentScreen); TenderAllCommand = new CaptionCommand<string>(Resources.All, OnTenderAllCommand); TypeValueCommand = new DelegateCommand<string>(OnTypeValueExecuted); SetValueCommand = new DelegateCommand<string>(OnSetValue); DivideValueCommand = new DelegateCommand<string>(OnDivideValue); SelectMergedItemCommand = new DelegateCommand<MergedItem>(OnMergedItemSelected); SetDiscountAmountCommand = new CaptionCommand<string>(Resources.Round, OnSetDiscountAmountCommand, CanSetDiscount); AutoSetDiscountAmountCommand = new CaptionCommand<string>(Resources.Flat, OnAutoSetDiscount, CanAutoSetDiscount); SetDiscountRateCommand = new CaptionCommand<string>(Resources.DiscountPercentSign, OnSetDiscountRateCommand, CanSetDiscountRate); MergedItems = new ObservableCollection<MergedItem>(); ReturningAmountVisibility = Visibility.Collapsed; Totals = totals; PaymentButtonGroup = new PaymentButtonGroupViewModel(_makePaymentCommand, null, ClosePaymentScreenCommand); LastTenderedAmount = "1"; }
public PaymentButtonViewModel(IApplicationState applicationState, ITicketService ticketService) { _applicationState = applicationState; _ticketService = ticketService; CloseTicketCommand = new CaptionCommand <string>(Resources.CloseTicket_r, OnCloseTicketExecute, CanCloseTicket); MakePaymentCommand = new CaptionCommand <string>(Resources.Settle, OnMakePaymentExecute, CanMakePayment); MakeFastPaymentCommand = new CaptionCommand <PaymentType>("[FastPayment]", OnMakeFastPaymentExecute, CanMakeFastPayment); PaymentButtonGroup = new PaymentButtonGroupViewModel(); PaymentButtonGroup.SetButtonCommands(MakeFastPaymentCommand, MakePaymentCommand, CloseTicketCommand); SelectedTicket = Ticket.Empty; EventServiceFactory.EventService.GetEvent <GenericEvent <Department> >().Subscribe(OnDepartmentChanged); }
public PaymentEditorViewModel(ITicketService ticketService, ICacheService cacheService, IAccountService accountService, IUserService userService, IAutomationService automationService, TicketTotalsViewModel totals) { _ticketService = ticketService; _cacheService = cacheService; _accountService = accountService; _userService = userService; _automationService = automationService; _executeAutomationCommand = new CaptionCommand<AutomationCommandData>("", OnExecuteAutomationCommand, CanExecuteAutomationCommand); _makePaymentCommand = new CaptionCommand<PaymentTemplate>("", OnMakePayment, CanMakePayment); _serviceSelectedCommand = new CaptionCommand<CalculationSelector>("", OnSelectCalculationSelector, CanSelectCalculationSelector); ClosePaymentScreenCommand = new CaptionCommand<string>(Resources.Close, OnClosePaymentScreen, CanClosePaymentScreen); TenderAllCommand = new CaptionCommand<string>(Resources.All, OnTenderAllCommand); TypeValueCommand = new DelegateCommand<string>(OnTypeValueExecuted); SetValueCommand = new DelegateCommand<string>(OnSetValue); DivideValueCommand = new DelegateCommand<string>(OnDivideValue); SelectMergedItemCommand = new DelegateCommand<MergedItem>(OnMergedItemSelected); SetDiscountAmountCommand = new CaptionCommand<string>(Resources.Round, OnSetDiscountAmountCommand, CanSetDiscount); AutoSetDiscountAmountCommand = new CaptionCommand<string>(Resources.Flat, OnAutoSetDiscount, CanAutoSetDiscount); SetDiscountRateCommand = new CaptionCommand<string>(Resources.DiscountPercentSign, OnSetDiscountRateCommand, CanSetDiscountRate); MergedItems = new ObservableCollection<MergedItem>(); ReturningAmountVisibility = Visibility.Collapsed; Totals = totals; PaymentButtonGroup = new PaymentButtonGroupViewModel(_makePaymentCommand, null, ClosePaymentScreenCommand); LastTenderedAmount = "1"; EventServiceFactory.EventService.GetEvent<GenericEvent<EventAggregator>>().Subscribe(x => { if (SelectedTicket != null && x.Topic == EventTopicNames.CloseTicketRequested) { SelectedTicket = null; } }); }
public PaymentEditorViewModel(ITicketService ticketService, ICacheService cacheService, IAccountService accountService, ISettingService settingService, IAutomationService automationService, TicketTotalsViewModel totals, IApplicationStateSetter applicationStateSetter) { _ticketService = ticketService; _cacheService = cacheService; _accountService = accountService; _settingService = settingService; _automationService = automationService; _applicationStateSetter = applicationStateSetter; _executeAutomationCommand = new CaptionCommand<AutomationCommandData>("", OnExecuteAutomationCommand, CanExecuteAutomationCommand); _makePaymentCommand = new CaptionCommand<PaymentType>("", OnMakePayment, CanMakePayment); _selectChangePaymentTypeCommand = new CaptionCommand<PaymentData>("", OnSelectChangePaymentType); _serviceSelectedCommand = new CaptionCommand<CalculationSelector>("", OnSelectCalculationSelector, CanSelectCalculationSelector); _foreignCurrencySelectedCommand = new CaptionCommand<ForeignCurrency>("", OnForeignCurrencySelected); ClosePaymentScreenCommand = new CaptionCommand<string>(Resources.Close, OnClosePaymentScreen, CanClosePaymentScreen); ChangeTemplates = new ObservableCollection<CommandButtonViewModel<PaymentData>>(); ReturningAmountVisibility = Visibility.Collapsed; Totals = totals; PaymentButtonGroup = new PaymentButtonGroupViewModel(_makePaymentCommand, null, ClosePaymentScreenCommand); ForeignCurrencyButtons = new List<CommandButtonViewModel<ForeignCurrency>>(); NumberPadViewModel = new NumberPadViewModel(); NumberPadViewModel.TypedValueChanged += NumberPadViewModelTypedValueChanged; NumberPadViewModel.ResetValue += NumberPadViewModelResetValue; NumberPadViewModel.PaymentDueChanged += NumberPadViewModelPaymentDueChanged; OrderSelector = new OrderSelectorViewModel(new OrderSelector(), NumberPadViewModel); EventServiceFactory.EventService.GetEvent<GenericEvent<EventAggregator>>().Subscribe(x => { if (SelectedTicket != null && x.Topic == EventTopicNames.CloseTicketRequested) { SelectedTicket = null; } }); }
public PaymentButtonsViewModel(IApplicationState applicationState) { _applicationState = applicationState; PaymentButtonGroup = new PaymentButtonGroupViewModel(); }