private void TenderAllBalance() { ResetValues(); _orderSelectorViewModel.ClearSelection(); var paymentDue = _paymentEditor.GetRemainingAmount() / _paymentEditor.ExchangeRate; _tenderedValueViewModel.PaymentDueAmount = paymentDue.ToString(LocalSettings.ReportCurrencyFormat); _tenderedValueViewModel.TenderedAmount = _tenderedValueViewModel.PaymentDueAmount; _foreignCurrencyButtonsViewModel.UpdateCurrencyButtons(); ResetAmount = true; }
public void UpdatePaymentAmount(decimal value) { var remaining = _paymentEditor.GetRemainingAmount(); if (value == 0 || value > remaining) { value = remaining; } value /= _paymentEditor.ExchangeRate; PaymentDueAmount = value.ToString("#,#0.00"); }
private bool CanMakePayment(PaymentType arg) { if (arg == null) { return(false); } if (_paymentEditor.AccountMode && _tenderedValueViewModel.GetTenderedValue() > _tenderedValueViewModel.GetPaymentDueValue()) { return(false); } if (_paymentEditor.AccountMode && arg.Account == null) { return(false); } return(_paymentEditor.SelectedTicket != null && !_paymentEditor.SelectedTicket.IsClosed && _tenderedValueViewModel.GetTenderedValue() != 0 && _paymentEditor.GetRemainingAmount() != 0 && (arg.Account != null || _paymentEditor.SelectedTicket.TicketEntities.Any(x => _ticketService.CanMakeAccountTransaction(x, arg.AccountTransactionType, _accountBalances.GetAccountBalance(x.AccountId) + _tenderedValueViewModel.GetTenderedValue())))); }