public List <Bank> ParsToIncomingBanks(string html, int cityId, int currencyId, DateTime dateTime) { var trNodes = GetTrNodes(html); var banks = new List <Bank>(); for (var i = 2; i < trNodes.Length; i++) { var td = GetRowspan(trNodes[i]); var purchase = ConvertToDouble(td[1]); var sale = ConvertToDouble(td[2]); var address = GetAddressFromNode(td[3]); var bankName = GetBankNameFromNode(td[0]); var departmentName = GetBankDepartmentNameFromNode(td[0]); var bank = FindOrCreateBank(bankName, banks); var bankDepartment = BankDepartmentHelper.GetNewBankDepartment(address, departmentName, cityId); var currencyRate = CurrencyRateByTime.GetNewCurrencyRateByTime(currencyId, dateTime, sale, purchase); bankDepartment.CurrencyRateByTime.Add(currencyRate); bank.BankDepartment.Add(bankDepartment); } return(banks); }
private static List <CurrencyRateByTime> InitializeList() { var bank1 = new Bank { Name = "Bank1", Id = 1, BankDepartment = new List <BankDepartment>() }; var city1 = new City { Id = 1, Name = "City1", BankDepartment = new List <BankDepartment>() }; var bankDepartment = new BankDepartment { Address = "BankDepartment 1 address", Id = 1, Name = "BankDepartment1", Bank = bank1, BankId = bank1.Id, CurrencyRateByTime = new List <CurrencyRateByTime>(), CityId = city1.Id, City = city1 }; bank1.BankDepartment.Add(bankDepartment); city1.BankDepartment.Add(bankDepartment); var currency1 = new Currency { Id = 1, Name = "Currency1", CurrencyRateByTime = new List <CurrencyRateByTime>() }; var currencyRate1 = new CurrencyRateByTime { Id = 1, BankDepartment = bankDepartment, BankDepartmentId = bankDepartment.Id, Purchase = 1, Sale = 1.1, DateTime = DateTime.UtcNow, CurrencyId = currency1.Id, Currency = currency1 }; currency1.CurrencyRateByTime.Add(currencyRate1); var currencyRates = new List <CurrencyRateByTime> { currencyRate1 }; return(currencyRates); }