예제 #1
0
    protected void rptFlujoFondos_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        DataGrid dg = (DataGrid)e.Item.FindControl("dgFlujoFondo");

        WSNovedad.FlujoFondo fFondo = (WSNovedad.FlujoFondo)e.Item.DataItem;

        Label lblFFondos = (Label)e.Item.FindControl("lblFlujoFondos");

        lblFFondos.Text = fFondo.RazonSocial;

        dg.DataSource = lstFlujoFondo.FindAll(x => x.RazonSocial == fFondo.RazonSocial);
        dg.DataBind();


        decimal totalImporteCuota        = 0;
        decimal totalGastoAdministrativo = 0;
        decimal totalGastoAdmTarjeta     = 0;
        decimal totalSeguroVida          = 0;
        decimal totalAmortizacion        = 0;
        decimal totalInteres             = 0;
        decimal totalInteresCuotaCero    = 0;

        foreach (FlujoFondo flujoFondo in lstFlujoFondo.FindAll(x => x.RazonSocial == fFondo.RazonSocial))
        {
            totalImporteCuota        += flujoFondo.TotalImporteCuota;
            totalGastoAdministrativo += flujoFondo.TotalGastoAdministrativo;
            totalGastoAdmTarjeta     += flujoFondo.TotalGastoAdmTarjeta;
            totalSeguroVida          += flujoFondo.TotalSeguroVida;
            totalAmortizacion        += flujoFondo.TotalAmortizacion;
            totalInteres             += flujoFondo.TotalInteres;
            totalInteresCuotaCero    += flujoFondo.TotalInteresCuotaCero;
        }

        WSNovedad.FlujoFondo FlujoFondoTotal = new FlujoFondo();
        FlujoFondoTotal.RazonSocial              = fFondo.RazonSocial;
        FlujoFondoTotal.TotalImporteCuota        = totalImporteCuota;
        FlujoFondoTotal.TotalGastoAdministrativo = totalGastoAdministrativo;
        FlujoFondoTotal.TotalGastoAdmTarjeta     = totalGastoAdmTarjeta;
        FlujoFondoTotal.TotalSeguroVida          = totalSeguroVida;
        FlujoFondoTotal.TotalAmortizacion        = totalAmortizacion;
        FlujoFondoTotal.TotalInteres             = totalInteres;
        FlujoFondoTotal.TotalInteresCuotaCero    = totalInteresCuotaCero;

        LstFlujoFondoTotal.Add(FlujoFondoTotal);
        List <FlujoFondo> lstFlujoFondoTotal = new List <FlujoFondo> {
            FlujoFondoTotal
        };
        DataGrid dgAcumulado = (DataGrid)e.Item.FindControl("dgFlujoFondoAcumulado");

        dgAcumulado.DataSource = lstFlujoFondoTotal;
        dgAcumulado.DataBind();
    }
예제 #2
0
    public string RenderFlujoDeFondos(List <WSNovedad.FlujoFondo> fFondo)
    {
        StringWriter sw = new StringWriter();

        if (fFondo.Count > 0)
        {
            IEnumerable <WSNovedad.FlujoFondo> filteredList = fFondo
                                                              .GroupBy(fluFondo => fluFondo.RazonSocial)
                                                              .Select(group => group.First());

            int pos1 = ParametrosDeBusqueda.IndexOf("|") + 1;
            int pos2 = ParametrosDeBusqueda.IndexOf("||") + 2;
            sw.Write("<table><tr><td colspan=\"10\" align=\"left\">{0}</td></tr></table>", "Parámetros de Búsqueda");
            sw.Write("<table><tr><td colspan=\"10\" align=\"left\">{0}</td></tr></table>", ParametrosDeBusqueda.Substring(0, pos1 - 1));
            sw.Write("<table><tr><td colspan=\"10\" align=\"left\">{0}</td></tr></table>", ParametrosDeBusqueda.Substring(pos1, pos2 - pos1 - 2));
            sw.Write("<table><tr><td colspan=\"10\" align=\"left\">{0}</td></tr></table>", ParametrosDeBusqueda.Substring(pos2, ParametrosDeBusqueda.Length - pos2));

            sw.Write("<table><tr><td colspan=\"10\" align=\"cener\">{0}</td></tr></table>", String.Empty);

            foreach (WSNovedad.FlujoFondo item in filteredList)
            {
                sw.Write("<table><tr><td colspan=\"10\" align=\"left\">{0}</td></tr></table>", item.RazonSocial);
                sw.Write("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\"><tr><td align=\"center\">Mensual</td><td align=\"center\">Cant Créditos</td><td align=\"center\">Monto Total Préstamo</td><td align=\"center\">Total Amortización</td><td align=\"center\">Total interés</td><td align=\"center\">Total Gasto Administrativo</td><td align=\"center\">Total Gasto Adm Tarjeta</td><td align=\"center\">Total Seguro Vida</td><td align=\"center\">Total Interes Cuota Cero</td><td align=\"center\">Importe Total Cuota</td></tr>");

                foreach (WSNovedad.FlujoFondo itemDeta in fFondo.FindAll(x => x.RazonSocial == item.RazonSocial))
                {
                    sw.Write("<tr><td align=\"center\">{0}</td><td align=\"center\">{1}</td><td align=\"center\">{2}</td><td align=\"center\">{3}</td><td align=\"center\">{4}</td><td align=\"center\">{5}</td><td align=\"center\">{6}</td><td align=\"center\">{7}</td><td align=\"center\">{8}</td><td align=\"center\">{9}</td></tr>", itemDeta.mensual, itemDeta.cantCreditos, itemDeta.TotalMontoPrestamo, itemDeta.TotalAmortizacion, itemDeta.TotalInteres, itemDeta.TotalGastoAdministrativo, itemDeta.TotalGastoAdmTarjeta, itemDeta.TotalSeguroVida, item.TotalInteresCuotaCero, itemDeta.TotalImporteCuota);
                }

                WSNovedad.FlujoFondo FlujoFondoTotal = LstFlujoFondoTotal.Where(f => f.RazonSocial == item.RazonSocial).FirstOrDefault();
                sw.Write("<tr><td colspan=\"3\" align=\"center\">{0}</td><td align=\"center\">{1}</td><td align=\"center\">{2}</td><td align=\"center\">{3}</td><td align=\"center\">{4}</td><td align=\"center\">{5}</td><td align=\"center\">{6}</td></tr>", "Total", FlujoFondoTotal.TotalAmortizacion, FlujoFondoTotal.TotalInteres, FlujoFondoTotal.TotalGastoAdministrativo, FlujoFondoTotal.TotalGastoAdmTarjeta, FlujoFondoTotal.TotalSeguroVida, FlujoFondoTotal.TotalInteresCuotaCero, FlujoFondoTotal.TotalImporteCuota);
                sw.Write("<tr></tr>");
                sw.Write("</table>");
            }
        }
        return(sw.ToString());
    }