/// <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); } }
/// <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); }