Пример #1
0
        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));
        }
Пример #2
0
        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));
        }
Пример #3
0
        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);
        }