Ejemplo n.º 1
0
        public ActionResult ReporteMovimientoCaja(int pMovimientoCajaId)
        {
            var operacion = MovimientoCajaBL.Obtener(pMovimientoCajaId).Operacion;

            if (operacion == "CUO")
            {
                if (PlanPagoBL.Contar(x => x.MovimientoCajaId == pMovimientoCajaId) > 0)
                {
                    var data       = MovimientoCajaBL.RptMovCajaCredito(pMovimientoCajaId);
                    var parametros = new List <ReportParameter>
                    {
                        new ReportParameter("MovimientoCajaId", data.MovimientoCajaId.ToString()),
                        new ReportParameter("PersonaId", data.PersonaId.ToString()),
                        new ReportParameter("Cliente", data.Cliente),
                        new ReportParameter("User", data.User),
                        new ReportParameter("FechaReg", data.FechaReg.ToString()),
                        new ReportParameter("Oficina", data.Oficina),
                        new ReportParameter("Producto", data.Producto),
                        new ReportParameter("SaldoAnterior", data.SaldoAnterior.ToString()),
                        new ReportParameter("PagoDeuda", data.PagoDeuda.ToString()),
                        new ReportParameter("Interes", data.Interes.ToString()),
                        new ReportParameter("MoraCargo", data.MoraCargo.ToString()),
                        new ReportParameter("ImporteLibre", data.ImporteLibre.ToString()),
                        new ReportParameter("ImportePagado", data.ImportePagado.ToString()),
                        new ReportParameter("SaldoCapital", data.SaldoCapital.ToString()),
                        new ReportParameter("CuotasPagadas", data.CuotasPagadas),
                        new ReportParameter("ProximaCuota", data.ProximaCuota),
                        new ReportParameter("CuotasAtrazadas", data.CuotasAtrazadas.ToString())
                    };
                    return(Reporte("PDF", "rptMovCajaCuota.rdlc", null, "VoucherCaja", parametros));
                }
                else
                {
                    var data       = MovimientoCajaBL.RptMovCajaLibre(pMovimientoCajaId);
                    var parametros = new List <ReportParameter>
                    {
                        new ReportParameter("MovimientoCajaId", data.MovimientoCajaId.ToString()),
                        new ReportParameter("PersonaId", data.PersonaId.ToString()),
                        new ReportParameter("Cliente", data.Cliente),
                        new ReportParameter("User", data.User),
                        new ReportParameter("FechaReg", data.FechaReg.ToString()),
                        new ReportParameter("Oficina", data.Oficina),
                        new ReportParameter("Producto", data.Producto),
                        new ReportParameter("ImportePago", data.ImportePago.ToString()),
                        new ReportParameter("Articulo", data.Articulo),
                        new ReportParameter("Concepto", "PAGO LIBRE")
                    };
                    return(Reporte("PDF", "rptMovCaja.rdlc", null, "VoucherCaja", parametros));
                }
            }
            if (operacion == "INI" || operacion == "GAD" || operacion == "CDN")
            {
                var data     = MovimientoCajaBL.RptMovCajaInicial(pMovimientoCajaId);
                var concepto = string.Empty;
                switch (operacion)
                {
                case "INI": concepto = "PAGO INICIAL"; break;

                case "GAD": concepto = "GASTO ADM ADELANTADO"; break;

                case "CDN": concepto = "PAGO POR CONDONACION"; break;
                }


                var parametros = new List <ReportParameter>
                {
                    new ReportParameter("MovimientoCajaId", data.MovimientoCajaId.ToString()),
                    new ReportParameter("PersonaId", data.PersonaId.ToString()),
                    new ReportParameter("Cliente", data.Cliente),
                    new ReportParameter("User", data.User),
                    new ReportParameter("FechaReg", data.FechaReg.ToString()),
                    new ReportParameter("Oficina", data.Oficina),
                    new ReportParameter("Producto", data.Producto),
                    new ReportParameter("ImportePago", data.ImportePago.ToString()),
                    new ReportParameter("Articulo", data.Articulo),
                    new ReportParameter("Concepto", concepto)
                };
                return(Reporte("PDF", "rptMovCaja.rdlc", null, "VoucherCaja", parametros));
            }
            if (operacion == "CON")
            {
                var data       = MovimientoCajaBL.RptMovCajaContado(pMovimientoCajaId);
                var parametros = new List <ReportParameter>
                {
                    new ReportParameter("MovimientoCajaId", data.MovimientoCajaId.ToString()),
                    new ReportParameter("PersonaId", data.PersonaId.ToString()),
                    new ReportParameter("Cliente", data.Cliente),
                    new ReportParameter("User", data.User),
                    new ReportParameter("FechaReg", data.FechaReg.ToString()),
                    new ReportParameter("Oficina", data.Oficina),
                    new ReportParameter("Producto", data.Producto),
                    new ReportParameter("ImportePago", data.ImportePago.ToString()),
                    new ReportParameter("Articulo", data.Articulo),
                    new ReportParameter("Concepto", "PAGO CONTADO")
                };
                return(Reporte("PDF", "rptMovCaja.rdlc", null, "VoucherCaja", parametros));
            }

            var dato = MovimientoCajaBL.RptMovCajaOtros(pMovimientoCajaId);

            if (string.IsNullOrEmpty(dato.Articulo))
            {
                dato.Articulo = "*";
            }
            var param = new List <ReportParameter>
            {
                new ReportParameter("MovimientoCajaId", dato.MovimientoCajaId.ToString()),
                new ReportParameter("PersonaId", "0"),
                new ReportParameter("Cliente", dato.Cliente),
                new ReportParameter("User", dato.User),
                new ReportParameter("FechaReg", dato.FechaReg.ToString()),
                new ReportParameter("Oficina", dato.Oficina),
                new ReportParameter("Producto", dato.Producto),
                new ReportParameter("ImportePago", dato.ImportePago.ToString()),
                new ReportParameter("Articulo", dato.Articulo),
                new ReportParameter("Concepto", dato.IndEntrada?"ENTRADA":"SALIDA")
            };

            return(Reporte("PDF", "rptMovCaja.rdlc", null, "VoucherCaja", param));
        }