public ActionResult Charts(decimal objectid) { ViewBag.objectid = objectid; string DefaultConnection = Microsoft .Extensions .Configuration .ConfigurationExtensions .GetConnectionString(Startup.Configuration, "DefaultConnection"); pasturepol pasturepol = new pasturepol(); using (var connection = new NpgsqlConnection(DefaultConnection)) { connection.Open(); var pasturepols = connection.Query <pasturepol>($"SELECT gid, objectid, class_id, otdely_id, " + $"subtype_id, group_id, ur_v, ur_l, ur_o, ur_z, korm_v, korm_l, korm_o, korm_z, " + $"recommend_, recom_catt, relief_id, zone_id, haying_id, shape_leng, shape_area " + $"FROM public.pasturepol " + $"WHERE objectid = {objectid};"); pasturepol = pasturepols.FirstOrDefault(); pasturepol.otdel = _context.Otdel.FirstOrDefault(o => o.Code == pasturepol.otdely_id)?.Description; pasturepol.ptype = _context.PType.FirstOrDefault(p => p.Code == pasturepol.class_id)?.Description; pasturepol.group = _context.Soob.FirstOrDefault(s => s.Code == pasturepol.group_id)?.Description; pasturepol.group_lat = _context.Soob.FirstOrDefault(s => s.Code == pasturepol.group_id)?.DescriptionLat; pasturepol.recommend = _context.Recommend.FirstOrDefault(r => r.Code == pasturepol.recommend_)?.Description; pasturepol.recomcatt = _context.RecomCattle.FirstOrDefault(r => r.Code == pasturepol.recom_catt)?.Description; } ViewBag.pasturepol = pasturepol; return(View()); }
public async Task <IActionResult> GetPastureInfo( string objectid, string sourceproduct, string dataset, string year, string day) { string DefaultConnection = Microsoft .Extensions .Configuration .ConfigurationExtensions .GetConnectionString(Startup.Configuration, "DefaultConnection"); pasturepol pasturepol = new pasturepol(); using (var connection = new NpgsqlConnection(DefaultConnection)) { connection.Open(); var pasturepols = connection.Query <pasturepol>($"SELECT gid, objectid, class_id, otdely_id, " + $"subtype_id, group_id, ur_v, ur_l, ur_o, ur_z, korm_v, korm_l, korm_o, korm_z, " + $"recommend_, recom_catt, relief_id, zone_id, haying_id, shape_leng, shape_area " + $"FROM public.pasturepol " + $"WHERE objectid = {objectid};"); pasturepol = pasturepols.FirstOrDefault(); } pasturepol.otdel = _context.Otdel.FirstOrDefault(o => o.Code == pasturepol.otdely_id)?.Description; pasturepol.ptype = _context.PType.FirstOrDefault(p => p.Code == pasturepol.class_id)?.Description; pasturepol.group = _context.Soob.FirstOrDefault(s => s.Code == pasturepol.group_id)?.Description; pasturepol.group_lat = _context.Soob.FirstOrDefault(s => s.Code == pasturepol.group_id)?.DescriptionLat; pasturepol.recommend = _context.Recommend.FirstOrDefault(r => r.Code == pasturepol.recommend_)?.Description; pasturepol.recomcatt = _context.RecomCattle.FirstOrDefault(r => r.Code == pasturepol.recom_catt)?.Description; string raster = "A" + year + day + "_" + sourceproduct + "_B01_NDVI_3857_KZ"; if (dataset == "Anomaly") { raster += "_Anomaly"; } raster += ".tif"; analytic analytic = new analytic(); if (!string.IsNullOrEmpty(sourceproduct)) { using (var connection = new NpgsqlConnection(DefaultConnection)) { connection.Open(); string query = $"SELECT raster, min, max, median, majority, mean, objectid" + $" FROM public.analytics" + $" WHERE objectid = {objectid}" + $" AND raster = '{raster}';"; var analyticsDB = connection.Query <analytic>(query); analytic = analyticsDB.Where(a => !a.raster.Contains("BASE")).FirstOrDefault(); } } return(Json(new { pasturepol, analytic })); }