public  void  GetData(string city, string country)
        {
            RepositoryHolder holder = new RepositoryHolder();
            string type = "Банк";
            var client = new RestClient("https://search-maps.yandex.ru/v1/?text=" + type + ", " + city + ", " + country + "&type=biz&lang=uk_Ua&apikey=f7f27aa0-8bf2-4d7d-9e80-fdab701a58c8&results=500");

            var request = new RestRequest("resource/", Method.GET);

            var asyncHandle = client.ExecuteAsync<YandexModel.RootObject>(request, response =>
            {


                for (int i = 0; i <= response.Data.features.Count - 1; i++)
                {
                    string[] buf = response.Data.features[i].properties.CompanyMetaData.address.Split(','); //разбиваем строку на массив слов, разделитель пробел

                    Char separator = System.Globalization.CultureInfo.CurrentCulture.NumberFormat.CurrencyDecimalSeparator[0];
                    String Source = response.Data.features[i].geometry.coordinates[0].Replace(',', separator);
                    Double number = Convert.ToDouble(Source);
                    String Source2 = response.Data.features[i].geometry.coordinates[1].Replace(',', separator);
                    Double number2 = Convert.ToDouble(Source2);
                    holder.AdressRepository.Insert(new Entity.tbAdress()
                    {
                        cLatitude = Source,
                        cLongitude = Source2,
                        cIdBank = 1,
                        cAdressVal = response.Data.features[i].properties.CompanyMetaData.address,
                        cCity = city,
                        cCountry = country,
                        cStreet = buf[1] + buf[2]
                    });
                    holder.SaveChanges();
                }
            });
        }
Example #2
0
        public async Task<List<ClosestPointModel>> BindData(string adress)
        {
           
            var client = new RestClient("https://geocode-maps.yandex.ru/1.x/?format=json&lang=uk_Ua&geocode="+adress);

            var request = new RestRequest("resource/", Method.GET);
            
            var data = await client.GetTaskAsync<GeocodeModel.RootObject>(request);

            var latitude = data.response.GeoObjectCollection.featureMember[0].GeoObject.Point.pos[0];
            var longitude = data.response.GeoObjectCollection.featureMember[0].GeoObject.Point.pos[1];
            
            RepositoryHolder holder = new RepositoryHolder();

            ClosestPointMapper mapper = new ClosestPointMapper();
            var adressRepository = holder.AdressRepository;
           List<ClosestPointModel> resultData =
                adressRepository.
                    Fetch().
                    Select(p => mapper.EntityToUI(p, latitude, longitude))
                    .OrderBy(z => z.FakeLatitude).
                    ThenBy(z => z.FakeLongitude).
                    Take(20).ToList();

           
            return resultData;
        }
Example #3
0
        public async Task<List<AddressModelForBanks>> BindDataByBank(string city, string country, string bank)
        {
            RepositoryHolder holder = new RepositoryHolder();

            AddressMaper mapper = new AddressMaper();
            var addressRepository = holder.AdressRepository;
            List<AddressModelForBanks> resultData =
                addressRepository.
                    FetchBy(p => p.cCity == city && p.cCountry == country && p.tbBank.cName==bank).
                    Select(p => mapper.EntityToUI(p)).ToList();



            /*
            if (resultData == null || resultData.Count == 0)
            {
                string type = bank;
                var client = new RestClient("https://search-maps.yandex.ru/v1/?text=" + type + ", " + city + ", " + country + "&type=biz&lang=uk_Ua&apikey=f7f27aa0-8bf2-4d7d-9e80-fdab701a58c8&results=500");

                var request = new RestRequest("resource/", Method.GET);


                var data = await client.GetTaskAsync<YandexModel.RootObject>(request);

                for (int i = 0; i <= data.features.Count - 1; i++)
                {
                    string[] buf = data.features[i].properties.CompanyMetaData.address.Split(','); //разбиваем строку на массив слов, разделитель пробел

                    Char separator = System.Globalization.CultureInfo.CurrentCulture.NumberFormat.CurrencyDecimalSeparator[0];
                    String Source = data.features[i].geometry.coordinates[0].Replace(',', separator);

                    String Source2 = data.features[i].geometry.coordinates[1].Replace(',', separator);

                    holder.AdressRepository.Insert(new Entity.tbAdress()
                    {
                        cLatitude = Source,
                        cLongitude = Source2,
                        cIdBank = 1,
                        cAdressVal = data.features[i].properties.CompanyMetaData.address,
                        cCity = city,
                        cCountry = country,
                        cStreet = buf[1] + buf[2]
                    });
                    holder.SaveChanges();
                }

                List<AddressModelForBanks> resultData2 =
               addressRepository.
                   FetchBy(p => p.cCity == city && p.cCountry == country).
                   Select(p => mapper.EntityToUI(p)).ToList();
                return resultData2;
            }else
            {*/
                return resultData;
           // }
        }
Example #4
0
 public void BindFromUIModel(CurrencyRateModel model)
 {
     using (RepositoryHolder scope = new RepositoryHolder())
     {
         CurrencyRateMapper mapper = new CurrencyRateMapper();
         var dbModel = mapper.ModelToEntity(model);
         scope.CurrencyRateRepository.Insert(dbModel);
         scope.SaveChanges();
     }
 }
Example #5
0
 public void BindFromUIModel(BankModel model)
 {
     using (RepositoryHolder scope = new RepositoryHolder())
     {
         BankMapper mapper = new BankMapper();
         var dbModel = mapper.ModelToEntity(model);
         scope.BankRepository.Insert(dbModel);
         scope.SaveChanges();
     }
 }
Example #6
0
        public List<OnlyBankModel> BindData()
        {
            RepositoryHolder holder = new RepositoryHolder();

            OnlyBankMapper mapper = new OnlyBankMapper();
            var bankRepository = holder.BankRepository;
            List<OnlyBankModel> resultnewData =
                bankRepository.
                    Fetch().
                    Select(p => mapper.EntityToUI(p)).ToList();
            return resultnewData;
        }
Example #7
0
        public List<OnlyCityModel> BindData(string country)
        {
            RepositoryHolder holder = new RepositoryHolder();

            OnlyCityMapper mapper = new OnlyCityMapper();
            var adressRepository = holder.AdressRepository;
            List<OnlyCityModel> resultnewData =
                adressRepository.
                    FetchBy(p=>p.cCountry==country).
                    Select(p => mapper.EntityToUI(p)).Distinct().ToList();

            return resultnewData.Distinct().ToList();
        }
Example #8
0
        public List<OnlyRateModel> BindData()
        {
            RepositoryHolder holder = new RepositoryHolder();

            OnlyRateMapper mapper = new OnlyRateMapper();
            var rateRepository = holder.CurrencyRepository;
            List<OnlyRateModel> resultnewData =
                rateRepository.
                    Fetch().
                    Select(p => mapper.EntityToUI(p)).ToList();

            return resultnewData;
        }
Example #9
0
        public List<BankModel> BindFromEntities()
        {
            
            using (RepositoryHolder scope = new RepositoryHolder())
            {
                BankMapper mapper = new BankMapper();
                //CurrencyRateMapper mapper2 = new CurrencyRateMapper();   
                List<BankModel> result = mapper.EntityToModel(
                    scope.BankRepository
                    .Fetch()               
                   .ToList());
                return result;
            }

        }
Example #10
0
            public List<CurrencyModel> BindFromEntities()
            {
                using (RepositoryHolder scope = new RepositoryHolder())
                {
                    CurrencyMapper mapper = new CurrencyMapper();

                    List<CurrencyModel> result = mapper.EntityToModel(
                        scope.CurrencyRepository
                        .Fetch()

                       .ToList());
                    return result;
                }

            }
Example #11
0
            public List<RateModel> BindFromEntities()
            {
                using (RepositoryHolder scope = new RepositoryHolder())
                {
                    RateMapper mapper = new RateMapper();

                    List<RateModel> result = mapper.EntityToModel(
                        scope.RateRepository
                        .Fetch()

                       .ToList());
                    return result;
                }

            }
Example #12
0
        public List<AdressModel> BindFromEntitiesBy(int id)
        {

            using (RepositoryHolder scope = new RepositoryHolder())
            {
                AdressMapper mapper = new AdressMapper();
                //CurrencyRateMapper mapper2 = new CurrencyRateMapper();   
                List<AdressModel> result = mapper.EntityToModel(
                    scope.AdressRepository
                    .FetchBy(p => p.cIdBank == id)
                   .ToList());
                return result;
            }

        }
Example #13
0
        public List<RateByValidModel> BindData(string currency)
        {
            RepositoryHolder holder = new RepositoryHolder();

            RatesMapper mapper = new RatesMapper();
            var rateRepository = holder.CurrencyRateRepository;
            List<RateByValidModel> resultnewData =
                rateRepository.
                    FetchBy(p=>p.tbRate.cIsValid==1&&p.tbCurrency.cCurrencyLong==currency).
                    Select(p => mapper.EntityToUI(p)).
                    OrderByDescending(z => z.Rate)
                    .Reverse()
                    .ToList();
            
            return resultnewData;
        }
Example #14
0
        public List<BankByCityCountryModel> BindData(string country, string city)
        {
            RepositoryHolder holder = new RepositoryHolder();

            BankByCityCountryMapper mapper = new BankByCityCountryMapper();
            var bankRepository = holder.AdressRepository;
            List<BankByCityCountryModel> resultnewData =
                bankRepository.
                    FetchBy(p => p.cCountry == country && p.cCity == city)
                    .Select(p => mapper.EntityToUI(p))
                    .Distinct()
                    .OrderByDescending(z =>z.Rating )
                    .Reverse()
                    .ToList() ;
            return resultnewData;
        }
Example #15
0
        public List<GraphModel> BindData(DateTime startdate, DateTime enddate, string bank, string currency, string sellbuy)
        {
            RepositoryHolder holder = new RepositoryHolder();

            GraphMapper mapper = new GraphMapper();
            var rateRepository = holder.CurrencyRateRepository;
            List<GraphModel> resultData =
                rateRepository.
                    FetchBy(p => p.tbRate.cDate <= enddate &&
                        p.tbRate.cDate >= startdate && 
                        p.tbBank.cName == bank &&
                        p.tbCurrency.cCurrencyLong==currency&&
                        p.tbRate.SellBuy==sellbuy).
                    Select(p => mapper.EntityToUI(p)).ToList();

            return resultData;
        }
Example #16
0
        public List<CalculateModel> BindData(string currency1, string currency2,string sellbuy, string bank)
        {
            RepositoryHolder holder = new RepositoryHolder();

            CalculateMapper mapper = new CalculateMapper();
            var rateRepository = holder.CurrencyRateRepository;
            List<CalculateModel> resultData =
                rateRepository.
                    FetchBy(p =>
                        p.tbBank.cName==bank&&
                        p.tbRate.cIsValid==1&&
                        p.tbRate.SellBuy==sellbuy&&(
                        p.tbCurrency.cCurrencyLong==currency1||
                        p.tbCurrency.cCurrencyLong == currency2)).
                    Select(p => mapper.EntityToUI(p)).ToList();

            return resultData;
        }
Example #17
0
        public List<AdressModel> BindFromEntities()
        {
            using (RepositoryHolder scope = new RepositoryHolder())
            {
                AdressMapper mapper = new AdressMapper();
                
                List<AdressModel> result =  //mapper.EntityToModel(
                    scope.AdressRepository
                    .Fetch()
                    .Select
                        (
                            p => 
                                mapper.EntityToModel(p)
                        )
                   .ToList();
                return result;
            }

        }
Example #18
0
        public List<AdressModel> BindFromEntities(string city, string country)
        {
            using (RepositoryHolder scope = new RepositoryHolder())
            {
                AdressMapper mapper = new AdressMapper();

                List<AdressModel> result = mapper.EntityToModel(
                    scope.AdressRepository
                    .FetchBy(p =>p.cCity==city)

                   .ToList());
                /*
                if (result == null)
                {
                    return GetData(city, country);
                }
                else
                {
                    return result;
                }*/
                return result;
            }

        }
Example #19
0
        public List<AddressModelForBanks> BindDataByBank(string bank, string country)
        {
            RepositoryHolder holder = new RepositoryHolder();

            AddressMaper mapper = new AddressMaper();
            var addressRepository = holder.AdressRepository;
            List<AddressModelForBanks> resultData =
                addressRepository.
                    FetchBy(p => p.tbBank.cName == bank && p.cCountry == country).
                    Select(p => mapper.EntityToUI(p)).ToList();
           
                return resultData;
       
        }
Example #20
0
        public  List<AddressModelForBanks> BindDataAll()
        {
            RepositoryHolder holder = new RepositoryHolder();

            AddressMaper mapper = new AddressMaper();
            var addressRepository = holder.AdressRepository;
            List<AddressModelForBanks> resultData =
                addressRepository.
                    Fetch().
                    Select(p => mapper.EntityToUI(p)).ToList();
            
            return resultData;
            
        }