public byte[] Handle(CertificadoQuery request) { var cliente = canalDb.Obtener(request.Rut); var cuenta = canalDb.ObtenerCuenta(request.Rut); var fechasData = iffService.ObtenerInformacionFinanciera(request.Rut, request.Canal); var pagoDd = unicardService.ObtenerPrepagoData(request.Rut); var data = new CertificadoData { Rut = $"{request.Rut}-{RutHelper.Dv(request.Rut)}", Nombre = $"{cliente.NombreCliente} {cliente.ApPeterno} {cliente.ApMaterno}", NumeroOperacion = atencionClienteDb.ObtenerNumeroCertificado().ToString(), TipoPago = request.TipoPago, FechaAperturaContrato = cuenta.FecApertura.ToString("dd-MM-yyyy"), FechaUltimaFacturacion = FechasHelper.Formatear(fechasData.fechaFacturacion), FechaUltimoVencimiento = FechasHelper.Formatear(fechasData.fechaVencimiento), ComisionPorPagoAnticipado = pagoDd.comis_prepago.ToString(), DeudaAlDiaEmision = pagoDd.dtotal1.ToString(), ProyeccionInteres = pagoDd.intere1.ToString(), ProyeccionDeudaPeriodoActualHasta = pagoDd.dcuper1.ToString(), MontoTotalPagarFechaProyeccion = pagoDd.salact1.ToString() }; return(pdfService.GenerarPdf(data)); }
public byte[] GenerarPdf(CertificadoData data) { var client = new RestClient(ConfigurationManager.AppSettings["GeneradorPdf.Api.Url"]); var pdfRequest = new RestRequest("/HTMLToPDF/html/html-to-pdf"); pdfRequest.RequestFormat = DataFormat.Json; pdfRequest.AddBody(new { base64 = true, includeWatermark = false, body = BindearTemplate(data), pdfBase64 = true }); var tokenResponse = client.Post(pdfRequest); return(Convert.FromBase64String(tokenResponse.Content)); }
public string BindearTemplate(CertificadoData data) { var template = this.HtmlTemplate; template = template.Replace("#Nombre#", data.Nombre); template = template.Replace("#NumeroOperacion#", data.NumeroOperacion); template = template.Replace("#TipoPago#", data.TipoPago); template = template.Replace("#FechaAperturaContrato#", data.FechaAperturaContrato); template = template.Replace("#FechaUltimaFacturacion#", data.FechaUltimaFacturacion); template = template.Replace("#FechaUltimoVencimiento#", data.FechaUltimoVencimiento); template = template.Replace("#FechaProximaFacturacion#", data.FechaProximaFacturacion); template = template.Replace("#TasaInteresMensual#", data.TasaInteresMensual); template = template.Replace("#ComisionPorPagoAnticipado#", data.ComisionPorPagoAnticipado); template = template.Replace("#DeudaAlDiaEmision#", data.DeudaAlDiaEmision); template = template.Replace("#ProyeccionInteres#", data.ProyeccionInteres); template = template.Replace("#GastoAdministracionProyectado#", data.GastoAdministracionProyectado); template = template.Replace("#ProyeccionDeudaPeriodoActualHasta#", data.ProyeccionDeudaPeriodoActualHasta); template = template.Replace("#MontoTotalPagarFechaProyeccion#", data.MontoTotalPagarFechaProyeccion); return(template); }