Create polygons by continent in LocationsContextSeed db
This commit is contained in:
parent
be6e276bff
commit
aeea739d1d
@ -23,18 +23,38 @@
|
||||
if (!ctx.Locations.Database.GetCollection<Locations>(nameof(Locations)).AsQueryable().Any())
|
||||
{
|
||||
await SetIndexes();
|
||||
await SetUSLocations();
|
||||
await SetNorthAmerica();
|
||||
await SetSouthAmerica();
|
||||
await SetAfrica();
|
||||
await SetEurope();
|
||||
await SetAsia();
|
||||
await SetAustralia();
|
||||
await SetBarcelonaLocations();
|
||||
}
|
||||
}
|
||||
|
||||
static async Task SetUSLocations()
|
||||
static async Task SetNorthAmerica()
|
||||
{
|
||||
var us = new Locations()
|
||||
{
|
||||
Code = "NA",
|
||||
Description = "North America",
|
||||
LocationId = 1
|
||||
};
|
||||
us.SetLocation(-103.219329, 48.803281);
|
||||
us.SetArea(GetNorthAmericaPoligon());
|
||||
await ctx.Locations.InsertOneAsync(us);
|
||||
await SetUSLocations(us.Id);
|
||||
}
|
||||
|
||||
static async Task SetUSLocations(string parentId)
|
||||
{
|
||||
var us = new Locations()
|
||||
{
|
||||
Parent_Id = parentId,
|
||||
Code = "US",
|
||||
Description = "United States",
|
||||
LocationId = 1
|
||||
LocationId = 2
|
||||
};
|
||||
us.SetLocation(-101.357386, 41.650455);
|
||||
us.SetArea(GetUSPoligon());
|
||||
@ -49,7 +69,7 @@
|
||||
Parent_Id = parentId,
|
||||
Code = "WHT",
|
||||
Description = "Washington",
|
||||
LocationId = 2
|
||||
LocationId = 3
|
||||
};
|
||||
wht.SetLocation(-119.542781, 47.223652);
|
||||
wht.SetArea(GetWashingtonPoligon());
|
||||
@ -65,7 +85,7 @@
|
||||
Parent_Id = parentId,
|
||||
Code = "SEAT",
|
||||
Description = "Seattle",
|
||||
LocationId = 3
|
||||
LocationId = 4
|
||||
};
|
||||
stl.SetArea(GetSeattlePoligon());
|
||||
stl.SetLocation(-122.330747, 47.603111);
|
||||
@ -79,7 +99,7 @@
|
||||
Parent_Id = parentId,
|
||||
Code = "REDM",
|
||||
Description = "Redmond",
|
||||
LocationId = 4
|
||||
LocationId = 5
|
||||
};
|
||||
rdm.SetLocation(-122.122887, 47.674961);
|
||||
rdm.SetArea(GetRedmondPoligon());
|
||||
@ -92,13 +112,77 @@
|
||||
{
|
||||
Code = "BCN",
|
||||
Description = "Barcelona",
|
||||
LocationId = 5
|
||||
LocationId = 6
|
||||
};
|
||||
bcn.SetLocation(2.156453, 41.395226);
|
||||
bcn.SetArea(GetBarcelonaPoligon());
|
||||
await ctx.Locations.InsertOneAsync(bcn);
|
||||
}
|
||||
|
||||
static async Task SetSouthAmerica()
|
||||
{
|
||||
var sa = new Locations()
|
||||
{
|
||||
Code = "SA",
|
||||
Description = "South America",
|
||||
LocationId = 7
|
||||
};
|
||||
sa.SetLocation(-60.328704, -16.809748);
|
||||
sa.SetArea(GetSouthAmericaPoligon());
|
||||
await ctx.Locations.InsertOneAsync(sa);
|
||||
}
|
||||
|
||||
static async Task SetAfrica()
|
||||
{
|
||||
var afc = new Locations()
|
||||
{
|
||||
Code = "AFC",
|
||||
Description = "Africa",
|
||||
LocationId = 8
|
||||
};
|
||||
afc.SetLocation(19.475383, 13.063667);
|
||||
afc.SetArea(GetAfricaPoligon());
|
||||
await ctx.Locations.InsertOneAsync(afc);
|
||||
}
|
||||
|
||||
static async Task SetEurope()
|
||||
{
|
||||
var eu = new Locations()
|
||||
{
|
||||
Code = "EU",
|
||||
Description = "Europe",
|
||||
LocationId = 9
|
||||
};
|
||||
eu.SetLocation(13.147258, 49.947844);
|
||||
eu.SetArea(GetEuropePoligon());
|
||||
await ctx.Locations.InsertOneAsync(eu);
|
||||
}
|
||||
|
||||
static async Task SetAsia()
|
||||
{
|
||||
var asa = new Locations()
|
||||
{
|
||||
Code = "AS",
|
||||
Description = "Asia",
|
||||
LocationId = 10
|
||||
};
|
||||
asa.SetLocation(97.522257, 56.069107);
|
||||
asa.SetArea(GetAsiaPoligon());
|
||||
await ctx.Locations.InsertOneAsync(asa);
|
||||
}
|
||||
|
||||
static async Task SetAustralia()
|
||||
{
|
||||
var aus = new Locations()
|
||||
{
|
||||
Code = "AUS",
|
||||
Description = "Australia",
|
||||
LocationId = 11
|
||||
};
|
||||
aus.SetLocation(133.733195, -25.010726);
|
||||
aus.SetArea(GetAustraliaPoligon());
|
||||
await ctx.Locations.InsertOneAsync(aus);
|
||||
}
|
||||
|
||||
static async Task SetIndexes()
|
||||
{
|
||||
@ -108,6 +192,99 @@
|
||||
await ctx.Locations.Indexes.CreateOneAsync(keys);
|
||||
}
|
||||
|
||||
static List<GeoJson2DGeographicCoordinates> GetNorthAmericaPoligon()
|
||||
{
|
||||
return new List<GeoJson2DGeographicCoordinates>()
|
||||
{
|
||||
new GeoJson2DGeographicCoordinates(-168.07786, 68.80277),
|
||||
new GeoJson2DGeographicCoordinates(-119.60378, 32.7561),
|
||||
new GeoJson2DGeographicCoordinates(-116.01966, 28.94642),
|
||||
new GeoJson2DGeographicCoordinates(-98.52265, 14.49378),
|
||||
new GeoJson2DGeographicCoordinates(-71.18188, 34.96278),
|
||||
new GeoJson2DGeographicCoordinates(-51.97606, 48.24377),
|
||||
new GeoJson2DGeographicCoordinates(-75.39806, 72.93141),
|
||||
new GeoJson2DGeographicCoordinates(-168.07786, 68.80277)
|
||||
};
|
||||
}
|
||||
|
||||
static List<GeoJson2DGeographicCoordinates> GetSouthAmericaPoligon()
|
||||
{
|
||||
return new List<GeoJson2DGeographicCoordinates>()
|
||||
{
|
||||
new GeoJson2DGeographicCoordinates(-91.43724, 13.29007),
|
||||
new GeoJson2DGeographicCoordinates(-87.96315, -27.15081),
|
||||
new GeoJson2DGeographicCoordinates(-78.75404, -50.71852),
|
||||
new GeoJson2DGeographicCoordinates(-59.14765, -58.50773),
|
||||
new GeoJson2DGeographicCoordinates(-50.08813, -42.22419),
|
||||
new GeoJson2DGeographicCoordinates(-37.21044, -22.56725),
|
||||
new GeoJson2DGeographicCoordinates(-36.61675, -0.38594),
|
||||
new GeoJson2DGeographicCoordinates(-44.46056, -16.6746),
|
||||
new GeoJson2DGeographicCoordinates(-91.43724, 13.29007),
|
||||
};
|
||||
}
|
||||
|
||||
static List<GeoJson2DGeographicCoordinates> GetAfricaPoligon()
|
||||
{
|
||||
return new List<GeoJson2DGeographicCoordinates>()
|
||||
{
|
||||
new GeoJson2DGeographicCoordinates(-12.68724, 34.05892),
|
||||
new GeoJson2DGeographicCoordinates(-18.33301, 20.77313),
|
||||
new GeoJson2DGeographicCoordinates(-14.13503, 6.21292),
|
||||
new GeoJson2DGeographicCoordinates(1.40221, -14.23693),
|
||||
new GeoJson2DGeographicCoordinates(22.41485, -35.55408),
|
||||
new GeoJson2DGeographicCoordinates(51.86499, -25.39831),
|
||||
new GeoJson2DGeographicCoordinates(53.49269, 4.59405),
|
||||
new GeoJson2DGeographicCoordinates(35.102, 26.14685),
|
||||
new GeoJson2DGeographicCoordinates(21.63319, 33.75767),
|
||||
new GeoJson2DGeographicCoordinates(6.58235, 37.05665),
|
||||
new GeoJson2DGeographicCoordinates(-12.68724, 34.05892),
|
||||
};
|
||||
}
|
||||
|
||||
static List<GeoJson2DGeographicCoordinates> GetEuropePoligon()
|
||||
{
|
||||
return new List<GeoJson2DGeographicCoordinates>()
|
||||
{
|
||||
new GeoJson2DGeographicCoordinates(-11.73143, 35.27646),
|
||||
new GeoJson2DGeographicCoordinates(-10.84462, 35.25123),
|
||||
new GeoJson2DGeographicCoordinates(-10.09927, 35.26833),
|
||||
new GeoJson2DGeographicCoordinates(49.00838, 36.56984),
|
||||
new GeoJson2DGeographicCoordinates(36.63837, 71.69807),
|
||||
new GeoJson2DGeographicCoordinates(-10.88788, 61.13851),
|
||||
new GeoJson2DGeographicCoordinates(-11.73143, 35.27646),
|
||||
};
|
||||
}
|
||||
|
||||
static List<GeoJson2DGeographicCoordinates> GetAsiaPoligon()
|
||||
{
|
||||
return new List<GeoJson2DGeographicCoordinates>()
|
||||
{
|
||||
new GeoJson2DGeographicCoordinates(31.1592, 45.91629),
|
||||
new GeoJson2DGeographicCoordinates(32.046, 45.89479),
|
||||
new GeoJson2DGeographicCoordinates(62.32261, -4.45013),
|
||||
new GeoJson2DGeographicCoordinates(154.47713, 35.14525),
|
||||
new GeoJson2DGeographicCoordinates(-166.70788, 68.62211),
|
||||
new GeoJson2DGeographicCoordinates(70.38837, 75.89335),
|
||||
new GeoJson2DGeographicCoordinates(32.00274, 67.23428),
|
||||
new GeoJson2DGeographicCoordinates(31.1592, 45.91629),
|
||||
};
|
||||
}
|
||||
|
||||
static List<GeoJson2DGeographicCoordinates> GetAustraliaPoligon()
|
||||
{
|
||||
return new List<GeoJson2DGeographicCoordinates>()
|
||||
{
|
||||
new GeoJson2DGeographicCoordinates(100.76857, -45.74117),
|
||||
new GeoJson2DGeographicCoordinates(101.65538, -45.76273),
|
||||
new GeoJson2DGeographicCoordinates(167.08823, -50.66317),
|
||||
new GeoJson2DGeographicCoordinates(174.16463, -34.62579),
|
||||
new GeoJson2DGeographicCoordinates(160.94837, -5.01004),
|
||||
new GeoJson2DGeographicCoordinates(139.29462, -7.86376),
|
||||
new GeoJson2DGeographicCoordinates(101.61212, -11.44654),
|
||||
new GeoJson2DGeographicCoordinates(100.76857, -45.74117),
|
||||
};
|
||||
}
|
||||
|
||||
static List<GeoJson2DGeographicCoordinates> GetUSPoligon()
|
||||
{
|
||||
return new List<GeoJson2DGeographicCoordinates>()
|
||||
|
Loading…
x
Reference in New Issue
Block a user