diff --git a/Ventas/RepCancelacionesPorRespuesta.aspx.cs b/Ventas/RepCancelacionesPorRespuesta.aspx.cs index b8dfdb1f9..00e1a8ba3 100644 --- a/Ventas/RepCancelacionesPorRespuesta.aspx.cs +++ b/Ventas/RepCancelacionesPorRespuesta.aspx.cs @@ -11,6 +11,7 @@ using System.Web.UI.WebControls; using Extensiones; using static Extensiones.ModExtensiones; using Microsoft.Reporting.WebForms; +using System.Net.Http; public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas { @@ -483,6 +484,32 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas Alert("No se encontro la factura para enviar el acuse", TipoMensaje.MsgAdvertencia); } } + private byte[] DescargarPDF(string Parametros) + { + var Url = new Uri(string.Format("{0}Compras/PopUpVerFactura.aspx?P={1}", ClsPaginas.UrlSitio, Parametros)); + byte[] File = null; + try + { + using (var httpClient = new HttpClient()) + { + httpClient.Timeout = new TimeSpan(0, 15, 0); + using (var request = new HttpRequestMessage(HttpMethod.Get, Url)) + { + request.Headers.Add("ADSToken", Encripta(string.Format("CVEEMPRESA={0}&TICKS={1}&CVEUSUARIO={2}", UsuarioActual.CveEmpresa, DateTime.UtcNow.Ticks, UsuarioActual.CveUsuario))); + var response = httpClient.SendAsync(request).Result; + if (response.StatusCode == System.Net.HttpStatusCode.OK) + File = response.Content.ReadAsByteArrayAsync().Result; + } + } + } + catch (Exception ex) + { + File = null; + this.OnError("Ocurrió un error al descargar la factura", ex); + } + + return File; + } public void ImprimeCancelacion(int CveVenta) { @@ -491,32 +518,34 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas { var ObjFactura = new Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa); - string SelloCancelacion = ""; - string FechaCancelacion = ""; - DataTable DtDatos = null; + //string SelloCancelacion = ""; + //string FechaCancelacion = ""; + //DataTable DtDatos = null; - using (ClsVentas ObjVentas = new ClsVentas()) - { - if (ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa)) - { - DtDatos = ObjVentas.DtResultados.Copy(); + //using (ClsVentas ObjVentas = new ClsVentas()) + //{ + // if (ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa)) + // { + // DtDatos = ObjVentas.DtResultados.Copy(); - DataRow drv = DtDatos.Rows[0]; - SelloCancelacion = drv["SelloCancelacion"].ToString(); - FechaCancelacion = drv["FechaCancelacion"].ToString().ToDateTime().ToString("dd/MM/yyyy HH:mm:ss"); - } - } + // DataRow drv = DtDatos.Rows[0]; + // SelloCancelacion = drv["SelloCancelacion"].ToString(); + // FechaCancelacion = drv["FechaCancelacion"].ToString().ToDateTime().ToString("dd/MM/yyyy HH:mm:ss"); + // } + //} - List parametros = new List(); - parametros.Add(new ReportParameter("FechaCancelacion", FechaCancelacion.ToString())); - parametros.Add(new ReportParameter("FolioFiscal", ObjFactura.FolioFiscal)); - parametros.Add(new ReportParameter("RFCEmisor", UsuarioActual.Empresa.RFC)); - parametros.Add(new ReportParameter("SelloCancelacion", SelloCancelacion)); + //List parametros = new List(); + //parametros.Add(new ReportParameter("FechaCancelacion", FechaCancelacion.ToString())); + //parametros.Add(new ReportParameter("FolioFiscal", ObjFactura.FolioFiscal)); + //parametros.Add(new ReportParameter("RFCEmisor", UsuarioActual.Empresa.RFC)); + //parametros.Add(new ReportParameter("SelloCancelacion", SelloCancelacion)); - byte[] ObjetoPDF = StreamPDF(@"Empresas\Grales\Formatos\AcuseCancelacion.rdlc", DtDatos, parametros, "AcuseCancelacion" + CveVenta); + //byte[] ObjetoPDF = StreamPDF(@"Empresas\Grales\Formatos\AcuseCancelacion.rdlc", DtDatos, parametros, "AcuseCancelacion" + CveVenta); + + byte[] ObjetoPDF = DescargarPDF(Encripta(String.Format("OP=CAN&CVEVTA={0}", CveVenta))); - List LSRutasMail = new List(); + List LSRutasMail = new List(); string Asunto = string.Empty; string Cuerpo = string.Empty;