Beispiel #1
0
        public async Task <bool> refreshCurrenciesRateByDefault(CurrencyModel obj)
        {
            bool result          = false;
            var  defaultCurrency = obj;// CurrenciesList.Where(x=>x.IsDefault).SingleOrDefault();

            if (defaultCurrency != null && defaultCurrency.Currency.ID != 0)
            {
                foreach (CurrencyModel currencyModel in CurrenciesList)
                {
                    currencyModel.Currency.Date = DateTime.Now;
                    currencyModel.Currency.Rate = ExchangeRateFromAPI(defaultCurrency.TxtCurrencyCode, currencyModel.TxtCurrencyCode);
                }

                var savedCurrencies = await Bl.BlOrder.UpdateCurrencyAsync(CurrenciesList.Select(x => x.Currency).ToList());

                if (savedCurrencies.Count > 0)
                {
                    result         = true;
                    CurrenciesList = new List <CurrencyModel>(savedCurrencies.Select(x => new CurrencyModel {
                        Currency = x
                    }).ToList());
                }
            }
            return(result);
        }
        private void BindAccountCell(AccountCollectionViewCell cell, object model, NSIndexPath indexPath)
        {
            var account = model as Account;

            cell.AccountNameLabel.Text    = account.Name;
            cell.AccountBalanceLabel.Text = CurrenciesList.GetCurrency(account.Currency).GetFormattedValue(account.Balance);
        }
        protected override CurrencyViewsList getRandomObject()
        {
            var l = new CurrenciesList(null, null);

            SetRandom.Values(l);
            return(new CurrencyViewsList(l));
        }
Beispiel #4
0
        public void GetAvailableCurrencies()
        {
            player.Play("GetAvailableCurrencies");

            Assert.DoesNotThrowAsync(async() => {
                CurrenciesList gotten = await client.GetAvailableCurrenciesAsync();
            });
        }
        private void SetBalance()
        {
            var balance = _accountsRepository.Items
                          .Sum(
                account => CurrenciesList.Convert(account.Currency, CurrenciesList.ReferenceCurrency.Code, account.Balance));

            Balance = CurrenciesList.ReferenceCurrency.GetFormattedValue(balance);
        }
Beispiel #6
0
        private void DefaultParametrs(ContractEF contract = null, bool refresh = false)
        {
            if (!refresh)
            {
                archiveManager    = new ArchiveManager(dataManager);
                BanksList         = DataBaseClient.ReadBanks();
                ContractTypesList = DataBaseClient.ReadContractTypes();
                CurrenciesList    = DataBaseClient.ReadCurrencies();
                BrokersList       = DataBaseClient.ReadBrokers();
                AuthorsList       = DataBaseClient.ReadTraders();

                RangeList = new List <string>();
                RangeList.Add("От 1 ");
                RangeList.Add("От 20.000 тсч.");
                RangeList.Add("От 1.000.000 млн.");
                RangeList.Add("От 5.000.000 млн.");
                RangeList.Add("От 10.000.000 млн.");
                RangeList.Add("От 15.000.000 млн.");
                RangeList.Add("От 25.000.000 млн.");
                RangeList.Add("От 40.000.000 млн.");
                RangeList.Add("От 50.000.000 млн.");
                RangeList.Add("От 75.000.000 млн.");
                RangeList.Add("От 100.000.000 млн.");
                RangeList.Add("От 1.000.000.000 млрд.");
                SelectedRange = RangeList[0];

                ScanTypesList = new List <string>();
                ScanTypesList.Add("Копия");
                ScanTypesList.Add("Оригинал");
            }

            if (contract == null)
            {
                Contract               = new ContractEF();
                Contract.companyid     = companyId;
                Contract.agreementdate = DateTime.Now;
                SelectedContractType   = ContractTypesList[0];
                SelectedCurrency       = CurrenciesList[0];
                SelectedScanType       = ScanTypesList[0];
            }
            else
            {
                try {
                    if (contract.bankid != null)
                    {
                        SelectedBank = BanksList.Where(x => x.id == contract.bankid).FirstOrDefault();
                        SearchTxt    = SelectedBank.name;
                    }

                    SelectedContractType = ContractTypesList.Where(x => x.id == (contract.contracttypeid == null ? 1 : contract.contracttypeid)).FirstOrDefault();
                    SelectedCurrency     = CurrenciesList.Where(x => x.id == contract.currencyid).FirstOrDefault();
                    SelectedBroker       = BrokersList.Where(x => x.id == contract.brokerid).FirstOrDefault();
                    RatesList            = new ObservableCollection <RatesListEF>(DataBaseClient.ReadRatesList(Contract.id));
                    SelectedAuthor       = AuthorsList.FirstOrDefault(a => a.id == (contract.authorid == null ? 1 : contract.authorid));
                    SelectedScanType     = ScanTypesList[(contract.scantype == null ? 0 : (int)contract.scantype)];
                } catch (Exception) { }
            }
        }
 public void ConfigureFor(WalletTransaction transaction)
 {
     CategoryNameLabel.Text  = transaction.Category.Name;
     AmountLabel.Text        = CurrenciesList.GetCurrency(transaction.Account.Currency).GetFormattedValue(transaction.Amount);
     DateLabel.Text          = transaction.Date.Date.ToString("d");
     AccountNameLabel.Text   = transaction.Account.Name;
     AmountLabel.TextColor   = transaction.Amount < 0 ? UIColor.Red : _green;
     CategoryImageView.Image = UIImage.FromFile("shopping");
 }
Beispiel #8
0
        private void BindCurrenciesDropDown()
        {
            CurrencyDto dto = CurrencyManager.GetCurrencyDto();

            CurrenciesList.DataValueField = "CurrencyCode";
            CurrenciesList.DataTextField  = "Name";

            CurrenciesList.DataSource = dto.Currency;
            CurrenciesList.DataBind();
        }
 public static IEnumerable <SelectListItem> CurrencyList()
 {
     return(CurrenciesList.Select(c => new SelectListItem()
     {
         Value = c.ISOCurrencySymbol,
         Text = $"{c.ISOCurrencySymbol} – {c.CurrencySymbol}",
         //Selected = c.ISOCurrencySymbol == new RegionInfo(CultureInfo.CurrentCulture.LCID).ISOCurrencySymbol
     })
            .OrderBy(s => s.Text));
 }
Beispiel #10
0
        private async void addCurrency(CurrencyModel obj)
        {
            CurrencyModel.TxtRate = getCurrencyValue().ToString();

            if (CurrencyModel.Currency.Rate != 0)
            {
                List <Currency> savedCurrenciesList = new List <Currency>();
                Singleton.getDialogueBox().showSearch(ConfigurationManager.AppSettings["update_message"]);
                CurrencyModel.Currency.Date = DateTime.Now;

                if (CurrencyModel.Currency.ID == 0)
                {
                    savedCurrenciesList = await Bl.BlOrder.InsertCurrencyAsync(new List <QOBDCommon.Entities.Currency> {
                        CurrencyModel.Currency
                    });

                    CurrenciesList = new List <CurrencyModel>(CurrenciesList.Concat(savedCurrenciesList.Select(x => new CurrencyModel {
                        Currency = x
                    }).ToList()));
                }
                else
                {
                    savedCurrenciesList = await Bl.BlOrder.UpdateCurrencyAsync(new List <Currency> {
                        CurrencyModel.Currency
                    });
                }

                if (savedCurrenciesList.Count > 0)
                {
                    await Singleton.getDialogueBox().showAsync("Currency updated Successfully!");
                }
            }
            else
            {
                CurrencyModel.IsDefault = false;
                Currency currencyFound = Bl.BlOrder.searchCurrency(new Currency {
                    IsDefault = true
                }, ESearchOption.AND).SingleOrDefault();
                if (currencyFound != null)
                {
                    var currency = CurrenciesList.Where(x => x.Currency.ID == currencyFound.ID).SingleOrDefault();
                    if (currency != null)
                    {
                        currency.IsDefault = true;
                    }
                }
                await Singleton.getDialogueBox().showAsync("Cannot set a currency with a rate of [0] !");
            }


            clearNewCurrency(null);
            Singleton.getDialogueBox().IsDialogOpen = false;
        }
Beispiel #11
0
        private decimal getCurrencyValue()
        {
            var defaultCurrency = CurrenciesList.Where(x => x.IsDefault).SingleOrDefault();

            if (defaultCurrency != null)
            {
                return(ExchangeRateFromAPI(defaultCurrency.CurrencyEnum.ToString(), CurrencyModel.CurrencyEnum.ToString()));
            }
            else
            {
                return(ExchangeRateFromAPI(CurrencyModel.CurrencyEnum.ToString(), CurrencyModel.CurrencyEnum.ToString()));
            }
        }
Beispiel #12
0
        public async void refreshCurrenciesRate(object obj)
        {
            var defaultCurrency = CurrenciesList.Where(x => x.IsDefault).SingleOrDefault();

            if (defaultCurrency != null)
            {
                await Singleton.getDialogueBox().showAsync("We are refreshing the currencies rate, you can start working in the mean time!");

                bool isUpdateValid = await refreshCurrenciesRateByDefault(defaultCurrency);

                if (!isUpdateValid)
                {
                    await Singleton.getDialogueBox().showAsync("Error detected while updating the currencies rate!");
                }
                Singleton.getDialogueBox().IsDialogOpen = false;
            }
        }
Beispiel #13
0
        protected override void MovementGoodsReportOnPropertyChanged(object sender, PropertyChangedEventArgs ea)
        {
            if (ea.PropertyName == "IdCurrency" && CurrenciesList != null)
            {
                MovementGoodsReport.Rate = CurrenciesList.FirstOrDefault(c => c.Id == MovementGoodsReport.IdCurrency)?.Cost;
            }

            if ((ea.PropertyName == "IdCurrency" || ea.PropertyName == "IdEquivalentCurrency") && MovementGoodsReport.IdCurrency == MovementGoodsReport.IdEquivalentCurrency)
            {
                MovementGoodsReport.EquivalentRate = 1;
            }
            if (ea.PropertyName == "MovementGoodsInfosCollection")
            {
                RaisePropertyChanged(nameof(MovementGoodsInfosList));
            }
            RaisePropertyChanged(nameof(MovementGoodsReport));
            RaisePropertyChanged(nameof(CanAdd));
        }
Beispiel #14
0
        private async void updateDefaultCurrency(CurrencyModel obj)
        {
            var previousDefaultCurrency = CurrenciesList.Where(x => x.IsDefault).SingleOrDefault();

            if (obj.Currency.Rate != 0 && await Singleton.getDialogueBox().showAsync("Do you confirm the update of the default currency?" + Environment.NewLine + "(Please note that all prices will be updated.)"))
            {
                Singleton.getDialogueBox().showSearch(ConfigurationManager.AppSettings["update_message"]);
                await refreshCurrenciesRateByDefault(obj);

                var savedCurrencies = await Bl.BlOrder.UpdateCurrencyAsync(new List <Currency> {
                    obj.Currency
                });

                if (savedCurrencies.Count > 0)
                {
                    await Singleton.getDialogueBox().showAsync("The default currency has been successfully updated!" + Environment.NewLine + "You must restart the application.");
                }
                else
                {
                    string errorMessage = "Error occurred while updating the default currency to [" + obj.TxtName + " (ID=" + obj.TxtID + ")]";
                    Log.error(errorMessage, EErrorFrom.REFERENTIAL);
                    await Singleton.getDialogueBox().showAsync(errorMessage);
                }
            }
            else
            {
                obj.IsDefault = false;
                if (obj.Currency.Rate == 0)
                {
                    await Singleton.getDialogueBox().showAsync("Cannot set a currency with a rate of [0] as a default currency!");
                }
                else
                {
                    if (previousDefaultCurrency != null)
                    {
                        previousDefaultCurrency.IsDefault = true;
                    }
                }
            }

            clearNewCurrency(null);
            Singleton.getDialogueBox().IsDialogOpen = false;
        }
Beispiel #15
0
        //Sets initial values for comboboxes
        public void  SetSelectedCurrencies()
        {
            //From App.Config
            SelectedBase = CurrenciesList.FirstOrDefault
                               (x => x.Contains(ConfigurationManager.AppSettings["DefaultBase"]));

            SelectedQuote = CurrenciesList.FirstOrDefault
                                (x => x.Contains(ConfigurationManager.AppSettings["DefaultQuote"]));

            //Or defaults
            if (SelectedBase == null)
            {
                SelectedBase = CurrenciesList[0];
            }

            if (SelectedQuote == null)
            {
                SelectedQuote = CurrenciesList[1];
            }
        }
Beispiel #16
0
        private async void deleteCurrency(CurrencyModel obj)
        {
            if (await Singleton.getDialogueBox().showAsync("[Currency = " + obj.TxtName + "] Do you confirm the deletion?"))
            {
                Singleton.getDialogueBox().showSearch(ConfigurationManager.AppSettings["delete_message"]);
                var NotDeletedCurrencies = await Bl.BlOrder.DeleteCurrencyAsync(new List <QOBDCommon.Entities.Currency> {
                    obj.Currency
                });

                if (NotDeletedCurrencies.Count == 0)
                {
                    await Singleton.getDialogueBox().showAsync("Currency Deleted Successfully!");

                    CurrenciesList.Remove(obj);
                    CurrenciesList = new List <CurrencyModel>(CurrenciesList);
                    clearNewCurrency(null);
                }
                clearNewCurrency(null);
                Singleton.getDialogueBox().IsDialogOpen = false;
            }
        }
        public async Task AddTransferTransaction(TransferTransaction transaction, string sourceAccountId, string targetAccountId, double amount)
        {
            await _realm.WriteAsync(realm => {
                var sourceAccount    = realm.Find <Account>(sourceAccountId);
                var targetAccount    = realm.Find <Account>(targetAccountId);
                var transferCategory = realm.Find <Category>("Transfer"); //TODO: make category

                //TODO: CURRENCIES

                var date = new DateTimeOffset(DateTime.Now);

                var sourceTransaction = new WalletTransaction {
                    Account             = sourceAccount,
                    Category            = transferCategory,
                    Amount              = -amount,
                    Date                = date,
                    TransferTransaction = transaction
                };

                var targetAmount = CurrenciesList.Convert(sourceAccount.Currency, targetAccount.Currency, amount);

                var targetTransaction = new WalletTransaction {
                    Account             = targetAccount,
                    Category            = transferCategory,
                    Amount              = targetAmount,
                    Date                = date,
                    TransferTransaction = transaction
                };

                transaction.SourceTransaction = sourceTransaction;
                transaction.TargetTransaction = targetTransaction;

                realm.Add(transaction);
                realm.Add(sourceTransaction);
                realm.Add(targetTransaction);

                sourceAccount.Balance -= amount;
                targetAccount.Balance += targetAmount;
            });
        }
 public CurrenciesListTests()
 {
     _sut = new CurrenciesList(_fileSystemMock.Object);
 }
Beispiel #19
0
        private async void GetContractFrom1C()
        {
            AppJournal.Write("Contract", "Get contract from 1c", true);

            CompanyEF Company     = DataBaseClient.ReadCompany(companyId);
            string    contractNum = await MessagesService.GetInput("ПОИСК В 1С", "Введите номер договора");

            if (!string.IsNullOrEmpty(contractNum))
            {
                try {
                    Contracts = _1CTransport.SearchContract(Company.bin, contractNum, 1);

                    if (Contracts != null)
                    {
                        SelectedBroker = BrokersList.Where(x => x.id == 1).First();
                        BankAccounts   = _1CTransport.SearchBankAccount(Company.iik, Company.bin, 1);
                    }
                    else
                    {
                        Contracts = _1CTransport.SearchContract(Company.bin, contractNum, 2);

                        if (Contracts != null)
                        {
                            SelectedBroker = BrokersList.Where(x => x.id == 2).First();
                            BankAccounts   = _1CTransport.SearchBankAccount(Company.iik, Company.bin, 2);
                        }
                        else
                        {
                            Contracts = _1CTransport.SearchContract(Company.bin, contractNum, 3);

                            if (Contracts != null)
                            {
                                SelectedBroker = BrokersList.Where(x => x.id == 4).First();
                                BankAccounts   = _1CTransport.SearchBankAccount(Company.iik, Company.bin, 3);
                            }
                        }
                    }

                    if (Contracts != null)
                    {
                        Contract.agreementdate = Contracts.ContracDate;

                        Contract.number = Contracts.ContractNumber;

                        if (BankAccounts != null)
                        {
                            SelectedBank = BanksList.Where(x => x.company.bik == BankAccounts.BankBIК).First();
                        }

                        if (Contracts.ContractType.ToUpper().Contains("ПРОЧЕЕ") || Contracts.ContractType.ToUpper().Contains("ПОКУПАТЕЛЕМ"))
                        {
                            SelectedContractType = ContractTypesList.Where(x => x.id == 1).First();
                        }
                        else
                        {
                            SelectedContractType = ContractTypesList.Where(x => x.id == 2).First();
                        }

                        SelectedCurrency = CurrenciesList.Where(x => x.code == Contracts.СontractСurrency).First();

                        Contract = Contract;
                    }
                } catch (Exception ex) {
                    Contracts = null;
                    AppJournal.Write("Contract", "Get contract from 1c error :" + ex.ToString(), true);
                }
            }

            if (Contracts == null)
            {
                MessagesService.Show("РЕЗУЛЬТАТ ПОИСКА В БАЗАХ", "Результатов нет");
            }
        }