Exemplo n.º 1
0
        private void ImportProbablyMissingCountries(IEnumerable <CandidateCountry> probablyMissingCountries,
                                                    IAdditionalRegionsInfoRepository <Data.Geography.Country> countriesRepository, int subtypeCountryId,
                                                    IRegionsRepository regionsRepository)
        {
            foreach (var probablyMissingCountry in probablyMissingCountries)
            {
                if (countriesRepository.Exists(c => c.Code == probablyMissingCountry.Code))
                {
                    continue;
                }

                var region = new Region
                {
                    CreatorId   = CreatorId,
                    Created     = DateTime.Now,
                    Coordinates = Geometry.DefaultFactory.CreatePolygon(new[]
                    {
                        new Coordinate(-122.358, 47.653), new Coordinate(-122.348, 47.649), new Coordinate(-122.358, 47.658), new Coordinate(-122.358, 47.653)
                    }),
                    CenterCoordinates = Point.Empty
                };

                region.Coordinates.SRID       = 4326;
                region.CenterCoordinates.SRID = 4326;

                region.LocalizedRegions.Add(new LocalizedRegion
                {
                    LanguageId = DefaultLanguageId,
                    Name       = probablyMissingCountry.Name,
                    CreatorId  = CreatorId
                });

                region.SubtypeId = subtypeCountryId;

                var country = new Data.Geography.Country
                {
                    Code      = probablyMissingCountry.Code,
                    CreatorId = CreatorId
                };

                region.ExpandingInformationAboutCountry = country;

                regionsRepository.Add(region);
            }
        }
Exemplo n.º 2
0
        public Data.Geography.Country[] BuildCountries(Country[] eanCountries,
                                                       IReadOnlyDictionary <long, int> expediaIdsToIds,
                                                       int creatorId)
        {
            var countries = new Queue <Data.Geography.Country>();

            foreach (var eanCountry in eanCountries)
            {
                if (!expediaIdsToIds.TryGetValue(eanCountry.CountryID, out var id))
                {
                    continue;
                }
                var country = new Data.Geography.Country
                {
                    Id        = id,
                    Code      = eanCountry.CountryCode,
                    CreatorId = creatorId
                };
                countries.Enqueue(country);
            }

            return(countries.ToArray());
        }