Exemple #1
0
        /// <summary>
        /// Obtiene el formato de la solicitud para que el derechohabiente la firme
        /// </summary>
        /// <param name="header">Encabezado del reporte</param>
        /// <param name="bodyPackage">Cuerpo del formato para paquetes turísticos</param>
        /// <param name="bodyLodgment">Cuerpo del formato para paquetes de hospedaje</param>
        /// <param name="bodyTransportation">Cuerpo del formato para paquetes de transporte</param>
        /// <returns>Arreglo de bytes con el reporte generado</returns>
        public byte[] GetTurissteFormatStream(Header header,
                                              BodyPackage bodyPackage,
                                              BodyLodgment bodyLodgment,
                                              BodyTransportation bodyTransportation)
        {
            ReportClass report;

            if (header.BodyType.ToString().ToLower().Equals(ReportValues.PackgeTypeFormat))
            {
                report = BuildTurisssteFormatPackage(header, bodyPackage);
            }
            else if (header.BodyType.ToString().ToLower().Equals(ReportValues.LodgmentTypeFormat))
            {
                report = BuildTurisssteFormatLodgment(header, bodyLodgment);
            }
            else
            {
                report = BuildTurisssteFormatTransportation(header, bodyTransportation);
            }

            var turisssteFormat = report.ExportToStream(ExportFormatType.PortableDocFormat);

            using (MemoryStream ms = new MemoryStream())
            {
                turisssteFormat.CopyTo(ms);
                return(ms.ToArray());
            }
        }
        /// <summary>
        /// Creates the rollbar package.
        /// </summary>
        /// <returns>IRollbarPackage.</returns>
        private IRollbarPackage?CreateRollbarPackage(object?payloadObject)
        {
            IRollbarPackage?package = null;

            switch (payloadObject)
            {
            case IRollbarPackage packageObject:
                package = packageObject;
                package = ApplyCustomKeyValueDecorator(package);
                return(package);

            case Data dataObject:
                package = new DataPackage(dataObject);
                package = ApplyCustomKeyValueDecorator(package);
                return(package);

            case Body bodyObject:
                package = new BodyPackage(this._rollbarLogger?.Config, bodyObject, this._custom);
                return(package);

            case System.Exception exceptionObject:
                package = new ExceptionPackage(exceptionObject);
                package = ApplyCustomKeyValueDecorator(package);
                return(package);

            case string messageObject:
                package = new MessagePackage(messageObject, this._custom);
                return(package);

            case ITraceable traceable:
                package = new MessagePackage(traceable.TraceAsString(), this._custom);
                return(package);

            default:
                package = new MessagePackage(payloadObject?.ToString(), this._custom);
                return(package);
            }
        }
Exemple #3
0
        /// <summary>
        /// Construye el reporte de indicadores en formato pdf o excel
        /// </summary>
        /// <param name="header">Encabezado del reporte</param>
        /// <param name="bodyPackage">Cuerpo del formato para paquetes turísticos</param>
        /// <returns>Arreglo de bytes con el reporte generado</returns>
        private TurIsssteFormatServicePackage BuildTurisssteFormatPackage(Header header, BodyPackage bodyPackage)
        {
            TurIsssteFormatServicePackage formatServicePackage = new TurIsssteFormatServicePackage();

            formatServicePackage.Subreports[ReportValues.NameSubreportHeader].SetDataSource(new List <Entitle>()
            {
                header.Entitle
            });

            formatServicePackage.Subreports[ReportValues.NameSubreportPackgeData].SetDataSource(new List <BodyPackage>()
            {
                bodyPackage
            });

            formatServicePackage.Subreports[ReportValues.NameSubreportPackgePerson].SetDataSource(bodyPackage.PackagePersons);

            return(formatServicePackage);
        }