public JsonResult ObtenerDatosTabla() { string search = Request["search[value]"]; string draw = Request["draw"]; int start = Request["start"] != null?Int16.Parse(Request["start"]) : 0; int lenght = Request["length"] != null?Int16.Parse(Request["length"]) : 10; int dispositivo = Request["idDispositivo"] != null?Int16.Parse(Request["idDispositivo"]) : 0; string fechaInicial = Request["fechaInicio"] != null ? Request["fechaInicio"] : ""; string fechaFinal = Request["FechaFin"] != null ? Request["FechaFin"] : ""; int filtroMedidaTiempo = Request["filtroTiempo"] != null?Int16.Parse(Request["filtroTiempo"]) : 0; Medida medida = new Medida(); int pageCount = 0; string idUsuario = User.Identity.GetUserId(); string perfil = userHelper.obtenerPerfil(idUsuario); List <Medida> medidas = null; if (filtroMedidaTiempo <= 0) { medidas = medida.Listar(start, lenght, out pageCount, dispositivo, fechaInicial, fechaFinal, idUsuario, perfil); } else { medidas = medida.ListarPromedios(start, lenght, out pageCount, dispositivo, fechaInicial, fechaFinal, idUsuario, perfil, filtroMedidaTiempo); } List <double> temperaturaList = new List <double>(); List <string> fechas = new List <string>(); List <ReportModel> medidasModelList = new List <ReportModel>(); ReportModel medidasmodel = null; Dictionary <int, string> nombresDic = new Dictionary <int, string>(); foreach (Medida medidaTemp in medidas) { medidasmodel = new ReportModel(); medidasmodel.fecha = medidaTemp.FechaHora.ToString(); medidasmodel.idDispositivo = medidaTemp.DispositivoID; medidasmodel.temperatura = medidaTemp.Valor.ToString(); if (!nombresDic.ContainsKey(medidasmodel.idDispositivo)) { var nombre = dbActiveContext.Dispositivos.Where(dis => dis.DispositivoID == medidasmodel.idDispositivo).FirstOrDefault().Nombre; nombresDic.Add(medidasmodel.idDispositivo, nombre); } medidasmodel.nombreDispositivo = nombresDic[medidasmodel.idDispositivo]; medidasModelList.Add(medidasmodel); } var resultado = new JsonResult(); resultado.Data = new { draw = draw, recordsTotal = pageCount, recordsFiltered = pageCount, data = medidasModelList.ToArray() }; return(resultado); }
public JsonResult ObtenerDatosGrafico(int pageIndex, int idDispositivo, string fechaInicio, string fechaFin) { int start = Request["start"] != null?Int16.Parse(Request["start"]) : 0; int lenght = Request["length"] != null?Int16.Parse(Request["length"]) : 10; string fechaInicial = Request["fechaInicio"] != null ? Request["fechaInicio"] : ""; string fechaFi = Request["FechaFin"] != null ? Request["FechaFin"] : ""; int filtroMedidaTiempo = Request["filtroTiempo"] != null?Int16.Parse(Request["filtroTiempo"]) : 0; Medida medida = new Medida(); int pageCount = 0; List <Medida> medidas = null; if (filtroMedidaTiempo <= 0) { medidas = medida.Listar(start, lenght, out pageCount, idDispositivo, fechaInicial, fechaFi); } else { medidas = medida.ListarPromedios(start, lenght, out pageCount, idDispositivo, fechaInicial, fechaFi, "", "", filtroMedidaTiempo); } List <double> temperaturaList = new List <double>(); List <string> fechas = new List <string>(); List <double> umbralInferior = new List <double>(); List <double> umbralSuperior = new List <double>(); List <double> toleranciaSuperiorList = new List <double>(); List <double> toleranciaInferiorList = new List <double>(); decimal umbraMax = 0; decimal umbraMin = 0; decimal toleranciaMin = 0; decimal toleranciaMax = 0; try { umbraMax = dbActiveContext.Umbrals.Where(p => p.DispositivoID == idDispositivo).FirstOrDefault().Temperatura_max; umbraMin = dbActiveContext.Umbrals.Where(p => p.DispositivoID == idDispositivo).FirstOrDefault().Temperatura_min; toleranciaMin = dbActiveContext.Umbrals.Where(p => p.DispositivoID == idDispositivo).FirstOrDefault().Tolerancia_min; toleranciaMax = dbActiveContext.Umbrals.Where(p => p.DispositivoID == idDispositivo).FirstOrDefault().Tolerancia_max; } catch (Exception ex) { } foreach (Medida medidaTemp in medidas) { temperaturaList.Add((double)medidaTemp.Valor); fechas.Add(medidaTemp.FechaHora.ToString()); umbralInferior.Add((double)umbraMin); umbralSuperior.Add((double)umbraMax); toleranciaSuperiorList.Add((double)toleranciaMax); toleranciaInferiorList.Add((double)toleranciaMin); } var resultado = new JsonResult(); resultado.Data = new { fechas = fechas.ToArray(), temperaturas = temperaturaList.ToArray(), umbralSuperior = umbralSuperior.ToArray(), umbralInferior = umbralInferior.ToArray(), toleranciaSuperiorList = toleranciaSuperiorList.ToArray(), toleranciaInferiorList = toleranciaInferiorList.ToArray(), }; return(resultado); }