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())
|
if (!ctx.Locations.Database.GetCollection<Locations>(nameof(Locations)).AsQueryable().Any())
|
||||||
{
|
{
|
||||||
await SetIndexes();
|
await SetIndexes();
|
||||||
await SetUSLocations();
|
await SetNorthAmerica();
|
||||||
|
await SetSouthAmerica();
|
||||||
|
await SetAfrica();
|
||||||
|
await SetEurope();
|
||||||
|
await SetAsia();
|
||||||
|
await SetAustralia();
|
||||||
await SetBarcelonaLocations();
|
await SetBarcelonaLocations();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static async Task SetUSLocations()
|
static async Task SetNorthAmerica()
|
||||||
{
|
{
|
||||||
var us = new Locations()
|
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",
|
Code = "US",
|
||||||
Description = "United States",
|
Description = "United States",
|
||||||
LocationId = 1
|
LocationId = 2
|
||||||
};
|
};
|
||||||
us.SetLocation(-101.357386, 41.650455);
|
us.SetLocation(-101.357386, 41.650455);
|
||||||
us.SetArea(GetUSPoligon());
|
us.SetArea(GetUSPoligon());
|
||||||
@ -49,7 +69,7 @@
|
|||||||
Parent_Id = parentId,
|
Parent_Id = parentId,
|
||||||
Code = "WHT",
|
Code = "WHT",
|
||||||
Description = "Washington",
|
Description = "Washington",
|
||||||
LocationId = 2
|
LocationId = 3
|
||||||
};
|
};
|
||||||
wht.SetLocation(-119.542781, 47.223652);
|
wht.SetLocation(-119.542781, 47.223652);
|
||||||
wht.SetArea(GetWashingtonPoligon());
|
wht.SetArea(GetWashingtonPoligon());
|
||||||
@ -65,7 +85,7 @@
|
|||||||
Parent_Id = parentId,
|
Parent_Id = parentId,
|
||||||
Code = "SEAT",
|
Code = "SEAT",
|
||||||
Description = "Seattle",
|
Description = "Seattle",
|
||||||
LocationId = 3
|
LocationId = 4
|
||||||
};
|
};
|
||||||
stl.SetArea(GetSeattlePoligon());
|
stl.SetArea(GetSeattlePoligon());
|
||||||
stl.SetLocation(-122.330747, 47.603111);
|
stl.SetLocation(-122.330747, 47.603111);
|
||||||
@ -79,7 +99,7 @@
|
|||||||
Parent_Id = parentId,
|
Parent_Id = parentId,
|
||||||
Code = "REDM",
|
Code = "REDM",
|
||||||
Description = "Redmond",
|
Description = "Redmond",
|
||||||
LocationId = 4
|
LocationId = 5
|
||||||
};
|
};
|
||||||
rdm.SetLocation(-122.122887, 47.674961);
|
rdm.SetLocation(-122.122887, 47.674961);
|
||||||
rdm.SetArea(GetRedmondPoligon());
|
rdm.SetArea(GetRedmondPoligon());
|
||||||
@ -92,13 +112,77 @@
|
|||||||
{
|
{
|
||||||
Code = "BCN",
|
Code = "BCN",
|
||||||
Description = "Barcelona",
|
Description = "Barcelona",
|
||||||
LocationId = 5
|
LocationId = 6
|
||||||
};
|
};
|
||||||
bcn.SetLocation(2.156453, 41.395226);
|
bcn.SetLocation(2.156453, 41.395226);
|
||||||
bcn.SetArea(GetBarcelonaPoligon());
|
bcn.SetArea(GetBarcelonaPoligon());
|
||||||
await ctx.Locations.InsertOneAsync(bcn);
|
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()
|
static async Task SetIndexes()
|
||||||
{
|
{
|
||||||
@ -108,6 +192,99 @@
|
|||||||
await ctx.Locations.Indexes.CreateOneAsync(keys);
|
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()
|
static List<GeoJson2DGeographicCoordinates> GetUSPoligon()
|
||||||
{
|
{
|
||||||
return new List<GeoJson2DGeographicCoordinates>()
|
return new List<GeoJson2DGeographicCoordinates>()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user