public ActionResult ReporteTransformador(SubmitViewModel model, DateTime FechaInicio, DateTime FechaFin) { using (var db = new DBContext()) { Transformador trans = db.Transformadores.FirstOrDefault(t => t.TransformadorID == model.IdSeleccionado); Reporte reporteModelo = new Reporte("Transformador", trans.TransformadorID.ToString(), 0, FechaInicio, FechaFin); IEnumerable <Transformador> transformadores = (IEnumerable <Transformador>)TransformadoresImp.transformadoresEnDb();//se carga lista de dispositivos List <SelectListItem> dispositivosSelectList = new List <SelectListItem>(); foreach (Transformador t in transformadores) { dispositivosSelectList.Add(new SelectListItem() { Value = t.TransformadorID.ToString(), Text = t.TransformadorID.ToString() }); } ViewBag.IdSeleccionado = dispositivosSelectList; //if(reporte esta en mongo){find} else{ se crea y se guarda en mongo} var reportesEncontrados = Mongo.getReporte("Transformador", trans.TransformadorID.ToString(), FechaInicio, FechaFin); if (reportesEncontrados.ToList <Reporte>().Count > 0) { var reporte = reportesEncontrados.ToList <Reporte>()[0]; ViewBag.consumo = "Consumo: " + reporte.consumo.ToString() + "Kw"; } else { reporteModelo.consumo = trans.EnergiaQueEstaSuministrando(FechaInicio, FechaFin); ViewBag.consumo = "Consumo: " + reporteModelo.consumo.ToString() + "Kw"; Mongo.insertarReporte(reporteModelo); } ViewBag.fechas = FechaInicio.ToShortDateString() + " - " + FechaFin.ToShortDateString(); ViewBag.nombre = trans.TransformadorID.ToString(); } return(View()); }
public ActionResult Index(HttpPostedFileBase file, SubmitViewModel model) { ViewBag.FileStatus = ""; List <SelectListItem> opciones = new List <SelectListItem>(); opciones.Add(new SelectListItem() { Value = "clientes", Text = "clientes" }); opciones.Add(new SelectListItem() { Value = "transformadores", Text = "transformadores" }); opciones.Add(new SelectListItem() { Value = "dispositivos", Text = "dispositivos" }); ViewBag.DispositivoSeleccionado = opciones; string tipo = model.DispositivoSeleccionado; try { if (file != null && file.ContentLength > 0) { //se abre el buscador de archivos y se agarra el path del archivo seleccionado path = Path.Combine(Server.MapPath("~/App_Data/uploads"), Path.GetFileName(file.FileName)); file.SaveAs(path); } try { //se agarra el texto del archivo y se lo convierte a una lista de Cliente, Transformadores o Dispositivos string Json = System.IO.File.ReadAllText(path); switch (tipo) { case "clientes": List <Cliente> userList = JsonConvert.DeserializeObject <List <Cliente> >(Json); ClientesImportados.clientes = userList; break; case "transformadores": //Agarra el json y agrega los que no estan ya en la base TransformadoresImp.CargarNuevosTransformadores(JsonConvert.DeserializeObject <List <Transformador> >(Json)); break; case "dispositivos": //Agarra el json y agrega los que no estan ya en la base List <DispositivoEstatico> disps = JsonConvert.DeserializeObject <List <DispositivoEstatico> >(Json); List <DispositivoEstatico> agregar = new List <DispositivoEstatico>(); foreach (DispositivoEstatico d in disps) { agregar.Add(new DispositivoEstatico(d.Codigo, d.Nombre, d.kWxHora, d.Min, d.Max, d.EsInteligente)); } DispositivosTotales.AgregarDispEstaticos(disps); break; default: break; } ViewBag.FileStatus = "Archivo cargado correctamente."; } catch (Exception) { ViewBag.FileStatus = "El archivo no es del formato correcto."; } } catch (Exception) { ViewBag.FileStatus = "Error cargando archivo."; } return(View("Index")); }
public ActionResult ReporteTransformador() { ViewBag.consumo = ""; IEnumerable <Transformador> transformadores = (IEnumerable <Transformador>)TransformadoresImp.transformadoresEnDb();//se carga lista de dispositivos List <SelectListItem> dispositivosSelectList = new List <SelectListItem>(); foreach (Transformador t in transformadores) { dispositivosSelectList.Add(new SelectListItem() { Value = t.TransformadorID.ToString(), Text = t.TransformadorID.ToString() }); } ViewBag.IdSeleccionado = dispositivosSelectList; return(View()); }