コード例 #1
0
        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;
        }
コード例 #2
0
        public void UpdatePaymentAmount(decimal value)
        {
            var remaining = _paymentEditor.GetRemainingAmount();

            if (value == 0 || value > remaining)
            {
                value = remaining;
            }
            value           /= _paymentEditor.ExchangeRate;
            PaymentDueAmount = value.ToString("#,#0.00");
        }
コード例 #3
0
 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()))));
 }