Пример #1
0
        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());
        }
Пример #2
0
        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"));
        }
Пример #3
0
        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());
        }