예제 #1
0
        public ResultPoliza ObtenerBytesReportePoliza(PolizaModelo Reporte, PersonalizaReporte PersonalizaReporte)
        {
            Implementations clsImplementations = new Implementations();

            ResultPoliza result           = new ResultPoliza();
            string       extensionReporte = "";

            extensionReporte = Path.GetExtension(Reporte.RutaReporte);
            byte[] datosReporte = null;
            Area   area         = PersonalizaReporte.AreaRectangle;

            area.Y = 0.5f;
            string certificadoHtml = System.IO.File.ReadAllText(Reporte.RutaReporte);

            clsImplementations.AsignaParametros(ref certificadoHtml, Reporte);
            datosReporte = clsImplementations.ConvertirHTMLEnPDF(
                new PersonalizaReporte
            {
                Html               = certificadoHtml,
                MostrarMarcaAgua   = PersonalizaReporte.MostrarMarcaAgua,
                RutaImagenHeader   = PersonalizaReporte.RutaImagenHeader,
                RutaTipoLetra      = PersonalizaReporte.RutaTipoLetra,
                TextoHeader        = PersonalizaReporte.TextoHeader,
                TextoHeaderTam     = PersonalizaReporte.TextoHeaderTam,
                TextoMarcaAgua     = PersonalizaReporte.TextoMarcaAgua,
                TextoFooter        = PersonalizaReporte.TextoFooter,
                MostrarTextoFooter = PersonalizaReporte.MostrarTextoFooter,
                MostrarTextoHeader = PersonalizaReporte.MostrarTextoHeader,
                Pais               = Reporte.Pais,
                AreaRectangle      = area
            });
            result.Datos = datosReporte;

            return(result);
        }
예제 #2
0
        public ResultPoliza ObtenerBytesReportePoliza(PolizaModelo Reporte, PersonalizaReporte PersonalizaReporte)
        {
            Implementations clsImplementations = new Implementations();

            string       documentoId      = "";
            ResultPoliza result           = new ResultPoliza();
            string       extensionReporte = "";

            extensionReporte = Path.GetExtension(Reporte.RutaReporte);
            byte[]       bytesLocal   = null;
            ReportViewer reportViewer = new ReportViewer();

            reportViewer.ProcessingMode = ProcessingMode.Local;
            clsImplementations.CargarDataSourcePolizaLATAM(Reporte, ref reportViewer);
            reportViewer.LocalReport.ReportPath = Reporte.RutaReporte;
            PersonalizaReporte.Pais             = Reporte.Pais;
            try
            {
                clsImplementations.AsignaParametros(ref reportViewer);

                var    ListaComplementosOrden = clsImplementations.OrdenPolizaBrasil(Reporte.COMPLEMENTOS);
                byte[] reporteConcatenado     = null;
                for (int i = 0; i < ListaComplementosOrden.Count(); i++)
                {
                    ComplementosPolizaBR item = ListaComplementosOrden[i];
                    if (Reporte.FIANZASIS != null)
                    {
                        documentoId = string.Format("{0}{1}", Reporte.FIANZASIS.First().ID_DOCUMENTACION, (int)item.Reporte);
                    }
                    else
                    {
                        documentoId = "0";
                    }

                    byte[] bytesStorage = null;
                    if (documentoId.Length > 1)
                    {
                        bytesStorage = clsImplementations.BytesReportePolizaFromDocumentStorage(documentoId, Utilerias.Enums.TipoDocumentoStorage.POLAT);
                    }

                    if (bytesStorage != null)
                    {
                        bytesLocal         = bytesStorage;
                        reporteConcatenado = (reporteConcatenado == null) ? bytesLocal : clsImplementations.ConcatenarReportes(reporteConcatenado, bytesLocal);
                    }
                    else
                    {
                        switch (item.Reporte)
                        {
                        case ReportesComplementosBR.Boletos:
                            cboleto objboleto = new cboleto();
                            reporteConcatenado = objboleto.generaboleto(Reporte, PersonalizaReporte, item);
                            break;

                        case ReportesComplementosBR.AnexaPoliza:
                        case ReportesComplementosBR.DemostrativoFraccionamiento:
                            cpoliza objpoliza = new cpoliza();
                            bytesLocal         = objpoliza.generapoliza(Reporte, PersonalizaReporte, item, documentoId);
                            reporteConcatenado = (reporteConcatenado == null) ? bytesLocal : clsImplementations.ConcatenarReportes(reporteConcatenado, bytesLocal);

                            break;

                        case ReportesComplementosBR.DemostrativoComision:
                            cdemostrativacomisio objcdemostrativacomisio = new cdemostrativacomisio();
                            bytesLocal         = objcdemostrativacomisio.generademostrativacomisio(Reporte, PersonalizaReporte, item, documentoId);
                            reporteConcatenado = (reporteConcatenado == null) ? bytesLocal : clsImplementations.ConcatenarReportes(reporteConcatenado, bytesLocal);
                            break;
                        }
                    }
                }
                byte[] resultBytes = null;
                if (reporteConcatenado != null)
                {
                    resultBytes = reporteConcatenado;
                }
                if (resultBytes != null)
                {
                    result.Datos = PersonalizaReporte.MostrarMarcaAgua ? clsImplementations.AgregarMarcaAgua(resultBytes, PersonalizaReporte.TextoMarcaAgua) : resultBytes;
                }
            }
            catch (Exception ex)
            { throw ex; }

            return(result);
        }