Esempio n. 1
0
        public ActionResult VerMasIniciativaDetalle(int ini)
        {
            ListaObjeto     modelo = new ListaObjeto();
            IniciativaBE    inic   = new IniciativaBE();
            IndicadorDataBE ida    = new IndicadorDataBE();

            inic.ID_INICIATIVA    = ini;
            ida.ID_INICIATIVA     = ini;
            modelo.iniciativa_mit = inic;
            modelo.iniciativa_mit = IniciativaLN.IniciativaMitigacionDatos(modelo.iniciativa_mit);
            //modelo.listaIndicador = IndicadorLN.ListarDetalleIndicadorDatos(modelo.iniciativa_mit);
            modelo.medida = MedidaMitigacionLN.getMedidaMitigacion(modelo.iniciativa_mit.ID_MEDMIT);

            modelo.listaEnfoque = EnfoqueLN.listarEnfoqueMedida(modelo.iniciativa_mit.ID_MEDMIT);
            ida.ID_MEDMIT       = modelo.iniciativa_mit.ID_MEDMIT;
            modelo.listaIndData = IndicadorLN.ListarDatosTablaDinamica(ida);

            modelo.listaIndicador = capturarIndicadores(modelo.listaIndData);

            modelo.listaUbicacion  = IniciativaLN.ListarUbicacionIniciativa(modelo.iniciativa_mit);
            modelo.listaEnergetico = IniciativaLN.ListarEnergeticoIniciativa(modelo.iniciativa_mit);
            modelo.listaGei        = IniciativaLN.ListarGeiIniciativa(modelo.iniciativa_mit);
            modelo.usuario         = UsuarioLN.UsuarioIniciativa(modelo.iniciativa_mit.ID_USUARIO);
            modelo.detalle         = 1;
            Session["lista_indicador_revision"] = modelo.listaIndicador;//add
            return(View(modelo));
        }
Esempio n. 2
0
        public JsonResult MostrarGeiporAnio(IniciativaBE entidad)
        {
            List <IniciativaBE> lista = IndicadorLN.MostrarGeiporAnio(entidad);
            var jsonResult            = Json(lista, JsonRequestBehavior.AllowGet);

            jsonResult.MaxJsonLength = int.MaxValue;
            return(jsonResult);
        }
Esempio n. 3
0
        public JsonResult DashboardResultado(IndicadorBE entidad)
        {
            List <IndicadorBE> lista = IndicadorLN.DashboardResultado(entidad);
            var jsonResult           = Json(lista, JsonRequestBehavior.AllowGet);

            jsonResult.MaxJsonLength = int.MaxValue;
            return(jsonResult);
        }
Esempio n. 4
0
        public ActionResult DetalleIndicadorMasivo(int id, int ini)
        {
            ListaObjeto modelo  = new ListaObjeto();
            int         validar = IniciativaLN.ValidarVista(id);

            if (validar == 6 || validar == 7 || validar == 14) //add 14-10-20
            {
                IniciativaBE inic = new IniciativaBE();
                inic.ID_INICIATIVA    = id;
                modelo.iniciativa_mit = inic;
                modelo.iniciativa_mit = IniciativaLN.IniciativaMitigacionDatos(modelo.iniciativa_mit);

                if (modelo.iniciativa_mit.ListaSustentos.Count > 0)
                {
                    modelo.iniciativa_mit.ListaSustentos = limpiarFileSustento(modelo.iniciativa_mit.ListaSustentos);                                                //add
                }
                modelo.menor           = IndicadorLN.DetalleIndicadorEnfoque(modelo.iniciativa_mit.ID_INICIATIVA);
                modelo.medida          = MedidaMitigacionLN.getMedidaMitigacion(modelo.iniciativa_mit.ID_MEDMIT);
                modelo.listaEnfoque    = EnfoqueLN.listarEnfoqueMedida(modelo.iniciativa_mit.ID_MEDMIT);
                modelo.listaUbicacion  = IniciativaLN.ListarUbicacionIniciativa(modelo.iniciativa_mit);
                modelo.listaEnergetico = IniciativaLN.ListarEnergeticoIniciativa(modelo.iniciativa_mit);
                modelo.listaGei        = IniciativaLN.ListarGeiIniciativa(modelo.iniciativa_mit);
                modelo.usuario         = UsuarioLN.EspecialistaMedida(modelo.iniciativa_mit.ID_MEDMIT);
                modelo.url             = WebConfigurationManager.AppSettings.Get("Sello");
                //if (modelo.menor == 0)
                //{
                //    modelo.menor = getMenorId(modelo.listaEnfoque);
                //}
                int enf = IniciativaLN.getIdEnfoqueMenor(inic);
                if (enf == 0)
                {
                    if (modelo.menor == 0)
                    {
                        modelo.menor       = getMenorId(modelo.listaEnfoque);
                        Session["enfoque"] = 0;
                    }
                }
                else
                {
                    modelo.menor       = enf;
                    Session["enfoque"] = enf;
                }
                Session["correo_destino"] = modelo.usuario.EMAIL_USUARIO;
            }
            else
            {
                return(RedirectToAction("Default", "Error"));
            }


            return(View(modelo));
        }
Esempio n. 5
0
        // GET: Detalle
        public ActionResult DetalleIndicadorMasivo(int id, int ini)
        {
            ListaObjeto  modelo = new ListaObjeto();
            IniciativaBE inic   = new IniciativaBE();

            inic.ID_INICIATIVA     = id;
            modelo.iniciativa_mit  = inic;
            modelo.iniciativa_mit  = IniciativaLN.IniciativaMitigacionDatos(modelo.iniciativa_mit);
            modelo.menor           = IndicadorLN.DetalleIndicadorEnfoque(modelo.iniciativa_mit.ID_INICIATIVA);
            modelo.medida          = MedidaMitigacionLN.getMedidaMitigacion(modelo.iniciativa_mit.ID_MEDMIT);
            modelo.listaEnfoque    = EnfoqueLN.listarEnfoqueMedida(modelo.iniciativa_mit.ID_MEDMIT);
            modelo.listaUbicacion  = IniciativaLN.ListarUbicacionIniciativa(modelo.iniciativa_mit);
            modelo.listaEnergetico = IniciativaLN.ListarEnergeticoIniciativa(modelo.iniciativa_mit);
            modelo.listaGei        = IniciativaLN.ListarGeiIniciativa(modelo.iniciativa_mit);
            modelo.usuario         = UsuarioLN.EspecialistaMedida(modelo.iniciativa_mit.ID_MEDMIT);
            if (modelo.menor == 0)
            {
                modelo.menor = getMenorId(modelo.listaEnfoque);
            }
            Session["correo_destino"] = modelo.usuario.EMAIL_USUARIO;
            return(View(modelo));
        }
Esempio n. 6
0
        public List <SustentoIniciativaBE> limpiarFileSustento(List <SustentoIniciativaBE> sustento)
        {
            List <SustentoIniciativaBE> new_lista = new List <SustentoIniciativaBE>();
            string cod_file = "";
            int    cod_ini  = 0;

            try
            {
                foreach (var item in sustento)
                {
                    if (item.ADJUNTO != null)
                    {
                        new_lista.Add(item);
                    }
                    else
                    {
                        cod_file = item.ID_INICIATIVA_SUSTENTATORIO + ",";
                        cod_ini  = item.ID_INICIATIVA;
                    }
                }

                if (!string.IsNullOrEmpty(cod_file))
                {
                    cod_file.Substring(0, cod_file.Length - 1);
                    IndicadorLN.EliminarIndicadoresFile(new IniciativaBE {
                        ID_INICIATIVA = cod_ini, ID_INDICADOR_ELIMINAR = cod_file
                    });
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex);
            }

            return(new_lista);
        }
Esempio n. 7
0
        //public JsonResult ProcesarExcel(HttpPostedFileBase fledeclaracion, IndicadorBE entidad)
        public JsonResult ProcesarExcel(HttpPostedFileBase fledeclaracion, ParametroBE entidad)
        {
            //List<IndicadorBE> listaIndicadores = new List<IndicadorBE>();
            //ResponseEntity itemRespuesta = new ResponseEntity();
            //List<string> excelData = new List<string>();
            //int pagina = 0;
            //if (fledeclaracion != null)
            //{
            //    //load the uploaded file into the memorystream
            //    byte[] archivo = new byte[fledeclaracion.ContentLength];
            //    fledeclaracion.InputStream.Read(archivo, 0, fledeclaracion.ContentLength - 1);
            //    using (MemoryStream stream = new MemoryStream(archivo))
            //    using (ExcelPackage excelPackage = new ExcelPackage(stream))
            //    {
            //        //loop all worksheets
            //        foreach (ExcelWorksheet worksheet in excelPackage.Workbook.Worksheets)
            //        {
            //            pagina++;
            //            //loop all rows
            //            if (pagina < 2)
            //            {
            //                for (int i = worksheet.Dimension.Start.Row; i <= worksheet.Dimension.End.Row; i++)
            //                {
            //                    IndicadorBE item = new IndicadorBE();
            //                    if (i > 1)
            //                    {
            //                        //loop all columns in a row
            //                        if (worksheet.Cells[i, 1].Value != null && worksheet.Cells[i, 2].Value != null && worksheet.Cells[i, 3].Value != null && worksheet.Cells[i, 4].Value != null && worksheet.Cells[i, 5].Value != null && worksheet.Cells[i, 6].Value != null && worksheet.Cells[i, 7].Value != null && worksheet.Cells[i, 8].Value != null)
            //                        {
            //                            for (int j = worksheet.Dimension.Start.Column; j <= worksheet.Dimension.End.Column; j++)
            //                            {
            //                                //add the cell data to the List
            //                                if (worksheet.Cells[i, j].Value != null)
            //                                {
            //                                    excelData.Add(worksheet.Cells[i, j].Value.ToString());
            //                                    switch (j)
            //                                    {
            //                                        case 1:
            //                                            item.ANNOB = int.Parse(worksheet.Cells[i, j].Value.ToString());
            //                                            item.ANNO_BASE = item.ANNOB;
            //                                            break;
            //                                        case 2:
            //                                            item.INICIO_OPERACIONES = DateTime.FromOADate(long.Parse(worksheet.Cells[i, j].Value.ToString()));
            //                                            break;
            //                                        case 3:
            //                                            item.ID_TIPO_VEHICULOB = int.Parse(worksheet.Cells[i, j].Value.ToString());
            //                                            item.ID_TIPO_VEHICULO_BASE = item.ID_TIPO_VEHICULOB;
            //                                            break;
            //                                        case 4:
            //                                            break;
            //                                        case 5:
            //                                            item.ID_TIPO_COMBUSTIBLEB = int.Parse(worksheet.Cells[i, j].Value.ToString());
            //                                            item.ID_TIPO_COMBUSTIBLE_BASE = item.ID_TIPO_COMBUSTIBLEB;
            //                                            break;
            //                                        case 6:
            //                                            break;
            //                                        case 7:
            //                                            item.KRVB = int.Parse(worksheet.Cells[i, j].Value.ToString());
            //                                            item.KRV_BASE = item.KRVB;
            //                                            break;
            //                                        case 8:
            //                                            item.CANTIDADB = int.Parse(worksheet.Cells[i, j].Value.ToString());
            //                                            item.CANT_BASE = item.CANTIDADB;
            //                                            break;
            //                                        case 9:
            //                                            item.FACTOR_RENDIMIENTO = double.Parse(worksheet.Cells[i, j].Value.ToString());
            //                                            item.F_RENDIMIENTO = item.FACTOR_RENDIMIENTO;
            //                                            break;
            //                                    }
            //                                }
            //                            }
            //                            item.ID_TIPO_FUENTEI = entidad.ID_TIPO_FUENTEI;
            //                            IndicadorBE Calculado = IndicadorLN.CalcularIndicador(item)[0];
            //                            item.TOTAL_GEI_INIMIT = Calculado.TOTAL_GEI_INIMIT;
            //                            item.TOTAL_GEI_REDUCIDO = Calculado.TOTAL_GEI_REDUCIDO;
            //                            item.TOTAL_GEI_BASE = Calculado.TOTAL_GEI_BASE;
            //                            item.F_RENDIMIENTO = Calculado.FACTOR_RENDIMIENTO;
            //                            listaIndicadores.Add(item);
            //                        }
            //                    }
            //                }
            //            }
            //        }
            //    }
            //}

            //var jsonResult = Json(listaIndicadores, JsonRequestBehavior.AllowGet);
            //jsonResult.MaxJsonLength = int.MaxValue;
            //return jsonResult;

            List <IndicadorDataBE> listaData = new List <IndicadorDataBE>();


            List <ParametroBE> listaParametro = new List <ParametroBE>(); //add
            List <ParametroBE> listaTemp      = new List <ParametroBE>(); //add
            ParametroBE        entTemp        = new ParametroBE();
            ResponseEntity     itemRespuesta  = new ResponseEntity();
            List <string>      excelData      = new List <string>();

            listaTemp = ParametroLN.ListarParametroCabeceraExcel(entidad);
            foreach (var item in listaTemp)
            {
                item.AGREGAR = 1;
                listaParametro.Add(item);
                if (item.ID_TIPO_CONTROL == 1)
                {
                    if (item.ID_PARAMETRO != 6)
                    {
                        entTemp.AGREGAR = 0;
                        listaParametro.Add(entTemp);
                    }
                }
            }

            int pagina = 0;

            if (fledeclaracion != null)
            {
                //load the uploaded file into the memorystream
                byte[] archivo = new byte[fledeclaracion.ContentLength];
                fledeclaracion.InputStream.Read(archivo, 0, fledeclaracion.ContentLength - 1);
                using (MemoryStream stream = new MemoryStream(archivo))
                    using (ExcelPackage excelPackage = new ExcelPackage(stream))
                    {
                        //loop all worksheets
                        foreach (ExcelWorksheet worksheet in excelPackage.Workbook.Worksheets)
                        {
                            pagina++;
                            pagina++;
                            var cant_column = worksheet.Dimension.End.Column;
                            var ultimos     = listaParametro.Count - cant_column;
                            //loop all rows
                            if (pagina < 3)
                            {
                                for (int i = worksheet.Dimension.Start.Row; i <= worksheet.Dimension.End.Row; i++)
                                {
                                    IndicadorDataBE        itemData         = new IndicadorDataBE();
                                    List <IndicadorDataBE> listaIndicadores = new List <IndicadorDataBE>();
                                    if (i > 2)
                                    {
                                        //loop all columns in a row
                                        var validar = 0;
                                        for (int n = 0; n < cant_column; n++)
                                        {
                                            if (worksheet.Cells[i, (n + 1)].Value == null)
                                            {
                                                validar = 1;
                                                break;
                                            }
                                        }

                                        if (validar == 0)
                                        {
                                            for (int j = worksheet.Dimension.Start.Column; j <= worksheet.Dimension.End.Column; j++)
                                            {
                                                //add the cell data to the List
                                                if (worksheet.Cells[i, j].Value != null)
                                                {
                                                    IndicadorDataBE item = new IndicadorDataBE();
                                                    excelData.Add(worksheet.Cells[i, j].Value.ToString());
                                                    item.ID_ENFOQUE   = entidad.ID_ENFOQUE;
                                                    item.ID_MEDMIT    = entidad.ID_MEDMIT;
                                                    item.ID_PARAMETRO = listaParametro[(j - 1)].ID_PARAMETRO;
                                                    if (listaParametro[(j - 1)].ID_TIPO_DATO == 1)
                                                    {
                                                        var fec = Convert.ToString(DateTime.FromOADate(long.Parse(worksheet.Cells[i, j].Value.ToString())));
                                                        item.VALOR = Convert.ToDateTime(fec).ToString("yyyy-MM-dd");
                                                        //item.VALOR = Convert.ToString(DateTime.FromOADate(long.Parse(worksheet.Cells[i, j].Value.ToString())));
                                                        //item.VALOR = item.VALOR.Substring(0, 10);
                                                        //item.VALOR = "2018-11-12";

                                                        //ALTERNO
                                                        //string p = worksheet.Cells[i, j].Value.ToString();
                                                        //item.VALOR = Convert.ToDateTime(p).ToString("yyyy-MM-dd");
                                                    }
                                                    else
                                                    {
                                                        item.VALOR = worksheet.Cells[i, j].Value.ToString();
                                                    }

                                                    if (listaParametro[(j - 1)].AGREGAR == 1)
                                                    {
                                                        listaIndicadores.Add(item);
                                                    }
                                                }
                                                else
                                                {
                                                    IndicadorDataBE item = new IndicadorDataBE();
                                                    excelData.Add(worksheet.Cells[i, j].Value.ToString());
                                                    item.ID_ENFOQUE   = entidad.ID_ENFOQUE;
                                                    item.ID_MEDMIT    = entidad.ID_MEDMIT;
                                                    item.ID_PARAMETRO = listaParametro[(j - 1)].ID_PARAMETRO;
                                                    item.VALOR        = "";
                                                }
                                            }
                                            for (int m = cant_column; m < listaParametro.Count; m++)
                                            {
                                                IndicadorDataBE item = new IndicadorDataBE();
                                                item.ID_ENFOQUE   = entidad.ID_ENFOQUE;
                                                item.ID_MEDMIT    = entidad.ID_MEDMIT;
                                                item.ID_PARAMETRO = listaParametro[m].ID_PARAMETRO;
                                                item.VALOR        = "";
                                                listaIndicadores.Add(item);
                                            }
                                            itemData.listaInd = IndicadorLN.CalculoIndicador(listaIndicadores);
                                            listaData.Add(itemData);
                                        }
                                    }
                                }
                            }
                        }
                    }
            }

            var jsonResult = Json(listaData, JsonRequestBehavior.AllowGet);

            jsonResult.MaxJsonLength = int.MaxValue;
            return(jsonResult);

            //return Respuesta(itemRespuesta);
        }
Esempio n. 8
0
        public string BuildFicha(int id, int id_plazo)
        {
            IniciativaBE ini = IniciativaLN.IniciativaFicha(new IniciativaBE {
                ID_INICIATIVA = id
            });
            NumberFormatInfo formato = new CultureInfo("es-ES").NumberFormat;

            formato.CurrencyGroupSeparator = ".";
            formato.NumberDecimalSeparator = ",";
            string html = "";

            html += "<html>";
            html += "<head>";
            html += "</head>";
            html += "<body>";
            html += "<br/>";
            html += "<div style='text-align: center;font-weight: bold;font-size: 22px;'>" + ini.NOMBRE_MEDMIT + "</div><br/>";
            html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>IPCC:</span>&nbsp;<span> " + ini.IPCC + "</span></div>";
            html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Descripción Medida Mitigación:</span>&nbsp;<span> " + ini.DESCRIPCION_MEDMIT + "</span></div>";
            html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Objetivo Medida Mitigación:</span>&nbsp;<span> " + ini.OBJETIVO_MEDMIT + "</span></div>";
            html += "<br/><div style='text-align: left;font-weight: bold;font-size: 14px;'>Datos principales</div>";
            html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Tipo de iniciativa:</span>&nbsp;<span> " + ini.TIPO_INICIATIVA + "</span></div>";
            html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Nombre de la iniciativa:</span>&nbsp;<span> " + ini.NOMBRE_INICIATIVA + "</span></div>";
            html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Descripción de la iniciativa:</span>&nbsp;<span> " + ini.DESC_INICIATIVA + "</span></div>";
            html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Responsable del registro:</span>&nbsp;<span> " + ini.NOMBRES + "</span></div>";
            html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Correo electrónico:</span>&nbsp;<span> " + ini.EMAIL_USUARIO + "</span></div>";
            html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Nombre de la institución:</span>&nbsp;<span> " + ini.INSTITUCION + "</span></div>";
            html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Dirección:</span>&nbsp;<span> " + ini.DIRECCION + "</span></div>";
            html += "<br/><div style='text-align: left;font-weight: bold;font-size: 14px;'>Datos generales</div>";
            html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Sector de la institución:</span>&nbsp;<span> " + ini.SECTOR + "</span></div>";
            html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Ubicación:</span>&nbsp;<span> " + ini.UBICACION + "</span></div>";
            html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Moneda:</span>&nbsp;<span> " + ini.MONEDA + "</span></div>";
            if (ini.PRIVACIDAD_INVERSION == '1')
            {
                html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Monto de inversión:</span>&nbsp;<span> " + ini.INVERSION_INICIATIVA.ToString("N", formato) + "</span></div>";
            }
            html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Fecha de inicio de operaciones:</span>&nbsp;<span> " + ini.FECHA + "</span></div>";
            if (ini.FECHA_FIN != "01/01/0001")
            {
                html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Fecha de finalización:</span>&nbsp;<span> " + ini.FECHA_FIN + "</span></div>";
            }

            if (id_plazo >= 12)
            {
                List <IndicadorDataBE> lista = IndicadorLN.ListarDatosTablaDinamica(new IndicadorDataBE {
                    ID_INICIATIVA = ini.ID_INICIATIVA, ID_MEDMIT = ini.ID_MEDMIT
                });

                if (!string.IsNullOrEmpty(ini.ENERGETICO) || !string.IsNullOrEmpty(ini.GEI))
                {
                    html += "<br/><div style='text-align: left;font-weight: bold;font-size: 14px;'>Indicadores</div>";
                    if (!string.IsNullOrEmpty(ini.ENERGETICO))
                    {
                        html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Energéticos:</span>&nbsp;<span> " + ini.ENERGETICO + "</span></div>";
                    }
                    if (!string.IsNullOrEmpty(ini.GEI))
                    {
                        html += "<div style='text-align: justify;font-size: 12px;'><span style='font-weight: bold;'>Gases de efecto invernadero:</span>&nbsp;<span> " + ini.GEI + "</span></div>";
                    }
                }

                if (lista.Count > 0)
                {
                    html += "<br/><div style='text-align: left;font-weight: bold;font-size: 14px;'>Detalle de la iniciativa de mitigación</div>";
                    html += "<div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Enfoque:</span>&nbsp;<span> " + lista[lista.Count() - 1].DESCRIPCION + "</span></div>";
                    html += "<div>";
                    html += "   <table style=''>";
                    html += "       <thead>";
                    html += "           <tr style='font-size: 6px;font-weight: bold;text-align: center;border: black 1px solid;border-collapse: collapse;'>";
                    foreach (var item in lista[lista.Count() - 1].listaParam)
                    {
                        html += "       <th scope='col'><span><small>" + item.NOMBRE_PARAMETRO + "</small></span></th>";
                    }
                    html += "               </tr>";
                    html += "           <thead>";
                    html += "       </thead>";
                    html += "       <tbody>";

                    foreach (var item in lista[lista.Count() - 1].listaInd)
                    {
                        html += "           <tr style='font-size: 6px;background-color: green;text-align: center;border: 1px;border-collapse: collapse;'>";
                        foreach (var itemD in item.listaInd)
                        {
                            if (itemD.ID_TIPO_CONTROL == 1)
                            {
                                if (itemD.ID_PARAMETRO == 6)
                                {
                                    html += "       <td><span><small>" + itemD.VALOR + "</small></span></td>";
                                }
                                else
                                {
                                    html += "       <td><span><small>" + itemD.DESCRIPCION + "</small></span></td>";
                                }
                            }
                            else
                            {
                                html += "       <td><span><small>" + itemD.VALOR + "</small></span></td>";
                            }
                        }
                        html += "               </tr>";
                    }

                    html += "       </tbody>";
                    html += "   </table>";
                    html += "</div>";
                    html += "<br/><div style='text-align: left;font-size: 12px;'><span style='font-weight: bold;'>Total reducido de GEI: </span>&nbsp;<span> " + ini.TOTAL_GEI + " tCO<sub>2</sub>eq</span></div>";
                }

                html += "</body>";
                html += "</html>";
            }

            return(html);
        }
Esempio n. 9
0
        public List <AcumuladoBE> detalleAcumulado(List <IndicadorDataBE> listaE)
        {
            List <AcumuladoBE> listaA = new List <AcumuladoBE>();

            try
            {
                List <IndicadorDataBE> lista = new List <IndicadorDataBE>();

                lista = listaE;
                int    anioP    = 0;
                string reducido = "";
                foreach (var item in lista)
                {
                    if (item.ID_PARAMETRO == 17)
                    {
                        item.VALOR = "0";
                    }
                    else if (item.ID_PARAMETRO == 32)
                    {
                        string fecha = item.VALOR;
                        fecha      = fecha.Substring(0, 4);
                        item.VALOR = fecha + "-01-01";
                    }
                    else if (item.ID_PARAMETRO == 6)
                    {
                        anioP      = Convert.ToInt32(item.VALOR);
                        item.VALOR = Convert.ToString(anioP);
                    }
                    else if (item.ID_PARAMETRO == 11)
                    {
                        reducido = item.VALOR;
                    }
                }

                //listaA.Add(new AcumuladoBE { anio = anioP, reducido = reducido });
                if (lista[0].ID_MEDMIT != 12 && lista[0].ID_MEDMIT != 4 && lista[0].ID_ENFOQUE != 6 && lista[0].ID_ENFOQUE != 9) //add 08-09-20
                {
                    List <IndicadorDataBE> listaPr = new List <IndicadorDataBE>();
                    //anioP += 1;
                    while (DateTime.Now.Year > anioP)
                    {
                        listaPr = IndicadorLN.CalculoIndicador(lista);
                        foreach (var item in listaPr)
                        {
                            if (item.ID_PARAMETRO == 6)
                            {
                                item.VALOR = Convert.ToString(anioP + 1);
                            }
                            else if (item.ID_PARAMETRO == 11)
                            {
                                reducido = item.VALOR;
                            }
                        }
                        listaA.Add(new AcumuladoBE {
                            anio = anioP, reducido = reducido
                        });
                        anioP += 1;
                    }
                }
                else
                {
                    List <IndicadorDataBE> listaPr = IndicadorLN.CalculoIndicador(lista);
                    foreach (var item in listaPr)
                    {
                        if (item.ID_PARAMETRO == 6)
                        {
                            item.VALOR = Convert.ToString(anioP);
                        }
                        else if (item.ID_PARAMETRO == 11)
                        {
                            reducido = item.VALOR;
                        }
                    }
                    listaA.Add(new AcumuladoBE {
                        anio = anioP, reducido = reducido
                    });
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex);
            }

            return(listaA);
        }
Esempio n. 10
0
        //public JsonResult ProcesarExcel(HttpPostedFileBase fledeclaracion, IndicadorBE entidad)
        public JsonResult ProcesarExcel(HttpPostedFileBase fledeclaracion, ParametroBE entidad)
        {
            List <IndicadorDataBE> listaData = new List <IndicadorDataBE>();

            try
            {
                List <ParametroBE> listaParametro = new List <ParametroBE>(); //add
                List <ParametroBE> listaTemp      = new List <ParametroBE>(); //add
                ParametroBE        entTemp        = new ParametroBE();
                ResponseEntity     itemRespuesta  = new ResponseEntity();
                List <string>      excelData      = new List <string>();

                listaTemp = ParametroLN.ListarParametroCabeceraExcel(entidad);
                foreach (var item in listaTemp)
                {
                    item.AGREGAR = 1;
                    listaParametro.Add(item);
                    if (item.ID_TIPO_CONTROL == 1)
                    {
                        if (item.ID_PARAMETRO != 6)
                        {
                            entTemp.AGREGAR = 0;
                            listaParametro.Add(entTemp);
                        }
                    }
                }

                int pagina = 0;
                if (fledeclaracion != null)
                {
                    //load the uploaded file into the memorystream
                    byte[] archivo = new byte[fledeclaracion.ContentLength];
                    fledeclaracion.InputStream.Read(archivo, 0, fledeclaracion.ContentLength - 1);
                    using (MemoryStream stream = new MemoryStream(archivo))
                        using (ExcelPackage excelPackage = new ExcelPackage(stream))
                        {
                            //loop all worksheets
                            foreach (ExcelWorksheet worksheet in excelPackage.Workbook.Worksheets)
                            {
                                pagina++;
                                pagina++;
                                var cant_column = worksheet.Dimension.End.Column;
                                var ultimos     = listaParametro.Count - cant_column;
                                //loop all rows
                                if (pagina < 4)
                                {
                                    List <IndicadorDataBE> listaDataTemp = new List <IndicadorDataBE>();
                                    listaDataTemp = validar_campo(worksheet, entidad, listaParametro, cant_column);
                                    if (bandera == 1)
                                    {
                                        listaData = listaDataTemp;
                                        break;
                                    }

                                    for (int i = worksheet.Dimension.Start.Row; i <= worksheet.Dimension.End.Row; i++)
                                    {
                                        IndicadorDataBE        itemData         = new IndicadorDataBE();
                                        List <IndicadorDataBE> listaIndicadores = new List <IndicadorDataBE>();
                                        if (i > 3)
                                        {
                                            //loop all columns in a row
                                            var validar = 0;
                                            for (int n = 0; n < cant_column; n++)
                                            {
                                                if (worksheet.Cells[i, (n + 1)].Value == null)
                                                {
                                                    validar = 1;
                                                    break;
                                                }
                                            }

                                            if (validar == 0)
                                            {
                                                string anno = "";
                                                for (int j = worksheet.Dimension.Start.Column; j <= worksheet.Dimension.End.Column; j++)
                                                {
                                                    //add the cell data to the List
                                                    if (worksheet.Cells[i, j].Value != null)
                                                    {
                                                        IndicadorDataBE item = new IndicadorDataBE();
                                                        excelData.Add(worksheet.Cells[i, j].Value.ToString());
                                                        item.ID_ENFOQUE   = entidad.ID_ENFOQUE;
                                                        item.ID_MEDMIT    = entidad.ID_MEDMIT;
                                                        item.ID_PARAMETRO = listaParametro[(j - 1)].ID_PARAMETRO;
                                                        if (listaParametro[(j - 1)].ID_TIPO_DATO == 1)
                                                        {
                                                            var fec = Convert.ToString(DateTime.FromOADate(long.Parse(worksheet.Cells[i, j].Value.ToString())));
                                                            item.VALOR = Convert.ToDateTime(fec).ToString("yyyy-MM-dd");
                                                            if (item.VALOR == "1920-01-01")
                                                            {
                                                                item.VALOR = "";
                                                            }
                                                            //item.VALOR = Convert.ToString(DateTime.FromOADate(long.Parse(worksheet.Cells[i, j].Value.ToString())));
                                                            //item.VALOR = item.VALOR.Substring(0, 10);
                                                            //item.VALOR = "2018-11-12";

                                                            //ALTERNO
                                                            //string p = worksheet.Cells[i, j].Value.ToString();
                                                            //item.VALOR = Convert.ToDateTime(p).ToString("yyyy-MM-dd");
                                                        }
                                                        else
                                                        {
                                                            item.VALOR = worksheet.Cells[i, j].Value.ToString();
                                                            if (item.ID_PARAMETRO == 6)
                                                            {
                                                                anno = item.VALOR;
                                                            }
                                                        }

                                                        if (listaParametro[(j - 1)].AGREGAR == 1)
                                                        {
                                                            listaIndicadores.Add(item);
                                                        }
                                                    }
                                                    else
                                                    {
                                                        IndicadorDataBE item = new IndicadorDataBE();
                                                        excelData.Add(worksheet.Cells[i, j].Value.ToString());
                                                        item.ID_ENFOQUE   = entidad.ID_ENFOQUE;
                                                        item.ID_MEDMIT    = entidad.ID_MEDMIT;
                                                        item.ID_PARAMETRO = listaParametro[(j - 1)].ID_PARAMETRO;
                                                        item.VALOR        = "";
                                                    }
                                                }
                                                for (int m = cant_column; m < listaParametro.Count; m++)
                                                {
                                                    IndicadorDataBE item = new IndicadorDataBE();
                                                    item.ID_ENFOQUE   = entidad.ID_ENFOQUE;
                                                    item.ID_MEDMIT    = entidad.ID_MEDMIT;
                                                    item.ID_PARAMETRO = listaParametro[m].ID_PARAMETRO;
                                                    item.VALOR        = "";
                                                    listaIndicadores.Add(item);
                                                }
                                                //itemData.listaInd = IndicadorLN.CalculoIndicador(listaIndicadores);
                                                itemData.listaAcumulado   = detalleAcumulado(listaIndicadores);
                                                listaIndicadores[0].VALOR = anno;
                                                itemData.listaInd         = IndicadorLN.CalculoIndicador(listaIndicadores);
                                                listaData.Add(itemData);
                                            }
                                        }
                                    }
                                }
                            }
                        }
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex);
            }

            var jsonResult = Json(listaData, JsonRequestBehavior.AllowGet);

            jsonResult.MaxJsonLength = int.MaxValue;
            return(jsonResult);

            //return Respuesta(itemRespuesta);
        }