Ejemplo n.º 1
0
        public static void SeedTimeZones(FCTContext _context, ILogger <DictionarySeeder> logger)
        {
            logger.LogInformation("DB Seeder: TimeZones", DateTime.Now);

            if (_context.TimeZone.Any())
            {
                return;
            }

            var zones = _context.Zone.ToList();

            var timeZonesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\timezones.json");

            using (StreamReader r = new StreamReader(timeZonesFilePath))
            {
                var settings = new JsonSerializerSettings
                {
                    NullValueHandling     = NullValueHandling.Ignore,
                    MissingMemberHandling = MissingMemberHandling.Ignore
                };

                string json  = r.ReadToEnd();
                var    items = JsonConvert.DeserializeObject <List <TimeZoneModel> >(json, settings);

                var timeZones     = new List <Domain.Geo.TimeZone>();
                var zoneTimeZones = new List <ZoneTimeZone>();

                foreach (var item in items)
                {
                    var timeZone = new Domain.Geo.TimeZone()
                    {
                        Name         = item.value,
                        Abbreviation = item.abbr,
                        IsDst        = item.isdst,
                        Description  = item.text,
                        Offset       = item.offset
                    };

                    foreach (var ztz in item.utc)
                    {
                        var zone = zones.Where(z => z.ZoneName == ztz).FirstOrDefault();
                        if (zone != null)
                        {
                            timeZone.Zones.Add(new ZoneTimeZone()
                            {
                                TimeZone = timeZone, Zone = zone
                            });
                        }
                    }

                    timeZones.Add(timeZone);
                }
                _context.TimeZone.AddRange(timeZones);
                _context.SaveChanges();
            }
        }
Ejemplo n.º 2
0
        public static void SeedAirports(FCTContext _context, ILogger <DictionarySeeder> logger)
        {
            logger.LogInformation("DB Seeder: Airports", DateTime.Now);

            if (_context.Airport.Any())
            {
                return;
            }

            var countriesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\airports.json");

            using (StreamReader r = new StreamReader(countriesFilePath))
            {
                var settings = new JsonSerializerSettings
                {
                    NullValueHandling     = NullValueHandling.Ignore,
                    MissingMemberHandling = MissingMemberHandling.Ignore
                };

                string json  = r.ReadToEnd();
                var    items = JsonConvert.DeserializeObject <Dictionary <string, AirportModel> >(json, settings);

                var zones        = _context.Zone.ToList();
                var airportsList = new List <Airport>();

                foreach (var item in items)
                {
                    var countryCode = item.Value.country;
                    var airport     = new Airport()
                    {
                        Name        = item.Value.name,
                        CountryCode = item.Value.country,
                        Country     = _context.Country.Where(c => c.Alpha2Code == countryCode).FirstOrDefault(),
                        State       = item.Value.state,
                        City        = item.Value.city,
                        IATA        = item.Value.iata,
                        ICAO        = item.Value.icao,
                        Latitude    = item.Value.lat,
                        Longitude   = item.Value.lon,
                        Elevation   = item.Value.elevation,
                        TimeZone    = item.Value.tz,
                        Zone        = zones.Where(c => c.ZoneName == item.Value.tz).FirstOrDefault()
                    };
                    airportsList.Add(airport);
                }
                _context.Airport.AddRange(airportsList);
                _context.SaveChanges();
            }
        }
Ejemplo n.º 3
0
        public static void SeedZones(FCTContext _context, ILogger <DictionarySeeder> logger)
        {
            logger.LogInformation("DB Seeder: Zones", DateTime.Now);

            if (_context.Zone.Any())
            {
                return;
            }

            var zonesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\zone.csv");

            var _createdCountries = _context.Country.ToList();
            var zoneList          = new List <Zone>();


            using (var reader = new StreamReader(zonesFilePath))
                using (var csv = new CsvReader(reader, CultureInfo.InvariantCulture))
                {
                    csv.Configuration.HasHeaderRecord = false;
                    var records = csv.GetRecords <ZoneModel>();

                    foreach (var record in records)
                    {
                        zoneList.Add(new Zone()
                        {
                            CountryCode     = record.CountryCode,
                            ZoneName        = record.ZoneName,
                            GenericZoneName = TZNames.GetNamesForTimeZone(record.ZoneName, "en-US").Generic,
                            Country         = _createdCountries.Where(c => c.Alpha2Code == record.CountryCode).FirstOrDefault()
                        });
                    }

                    _context.AddRange(zoneList);
                    _context.SaveChanges();
                }
        }
Ejemplo n.º 4
0
 public DataSeeder(FCTContext context, ILogger <DataSeeder> logger)
 {
     _context = context;
     _logger  = logger;
 }
Ejemplo n.º 5
0
 public PurchaseDAL(FCTContext context)
 {
     _context = context;
 }
Ejemplo n.º 6
0
 public ProductDAL(FCTContext context)
 {
     _context = context;
 }
Ejemplo n.º 7
0
 public AviationRepository(FCTContext context)
 {
     _context = context ?? throw new ArgumentNullException(nameof(context));
 }
Ejemplo n.º 8
0
 public CustomerDAL(FCTContext context)
 {
     _context = context;
 }
Ejemplo n.º 9
0
        public static void SeedCountries(FCTContext _context, ILogger <DictionarySeeder> logger)
        {
            logger.LogInformation("DB Seeder: Countries", DateTime.Now);

            if (_context.Country.Any())
            {
                return;
            }

            var countriesFilePath = Path.Combine(AppContext.BaseDirectory, "LoadData\\countries.json");

            using (StreamReader r = new StreamReader(countriesFilePath))
            {
                var settings = new JsonSerializerSettings
                {
                    NullValueHandling     = NullValueHandling.Ignore,
                    MissingMemberHandling = MissingMemberHandling.Ignore
                };

                string json = r.ReadToEnd();
                List <CountriesDataModel> items = JsonConvert.DeserializeObject <List <CountriesDataModel> >(json, settings);
                foreach (var item in items)
                {
                    var continent = new Continent();

                    var existingContinent = _context.Continent.Where(c => c.Name == item.region).FirstOrDefault();

                    if (existingContinent == null)
                    {
                        continent = new Continent()
                        {
                            Name = item.region
                        };
                        _context.Add(continent);
                        _context.SaveChanges();
                    }
                    else
                    {
                        continent = existingContinent;
                    }

                    var region         = new Region();
                    var existingRegion = _context.Region.Where(rg => rg.Name == item.subregion).FirstOrDefault();

                    if (existingRegion == null)
                    {
                        region = new Region()
                        {
                            Name = item.subregion, Continent = continent
                        };
                        _context.Add(region);
                        _context.SaveChanges();
                    }
                    else
                    {
                        region = existingRegion;
                    }

                    var newCountry = new Country()
                    {
                        Name         = item.name.common,
                        OfficialName = item.name.official,
                        Alpha2Code   = item.cca2,
                        Alpha3Code   = item.cca3,
                        Area         = item.area,
                        Region       = region,
                        Latitude     = item.latlng.FirstOrDefault(),
                        Longitude    = item.latlng.LastOrDefault()
                    };
                    _context.Add(newCountry);
                    _context.SaveChanges();
                }
            }
        }
Ejemplo n.º 10
0
 public DictionarySeeder(FCTContext context, ILogger <DictionarySeeder> logger)
 {
     _context = context;
     _logger  = logger;
 }
Ejemplo n.º 11
0
 public EnsureDB(FCTContext context, ILogger <EnsureDB> logger)
 {
     _context = context;
     _logger  = logger;
 }
Ejemplo n.º 12
0
 public StatsRepository(FCTContext context)
 {
     _context = context;
 }