Impresion de acuse en rep cancelaciones por respuesta

This commit is contained in:
2022-01-15 19:49:05 -07:00
parent 53dc47f11e
commit b65a2ef5c1

View File

@@ -11,6 +11,7 @@ using System.Web.UI.WebControls;
using Extensiones; using Extensiones;
using static Extensiones.ModExtensiones; using static Extensiones.ModExtensiones;
using Microsoft.Reporting.WebForms; using Microsoft.Reporting.WebForms;
using System.Net.Http;
public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas 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); 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) public void ImprimeCancelacion(int CveVenta)
{ {
@@ -491,32 +518,34 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
{ {
var ObjFactura = new Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa); var ObjFactura = new Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa);
string SelloCancelacion = ""; //string SelloCancelacion = "";
string FechaCancelacion = ""; //string FechaCancelacion = "";
DataTable DtDatos = null; //DataTable DtDatos = null;
using (ClsVentas ObjVentas = new ClsVentas()) //using (ClsVentas ObjVentas = new ClsVentas())
{ //{
if (ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa)) // if (ObjVentas.GetVenta(CveVenta, UsuarioActual.CveEmpresa))
{ // {
DtDatos = ObjVentas.DtResultados.Copy(); // DtDatos = ObjVentas.DtResultados.Copy();
DataRow drv = DtDatos.Rows[0]; // DataRow drv = DtDatos.Rows[0];
SelloCancelacion = drv["SelloCancelacion"].ToString(); // SelloCancelacion = drv["SelloCancelacion"].ToString();
FechaCancelacion = drv["FechaCancelacion"].ToString().ToDateTime().ToString("dd/MM/yyyy HH:mm:ss"); // FechaCancelacion = drv["FechaCancelacion"].ToString().ToDateTime().ToString("dd/MM/yyyy HH:mm:ss");
} // }
} //}
List<ReportParameter> parametros = new List<ReportParameter>(); //List<ReportParameter> parametros = new List<ReportParameter>();
parametros.Add(new ReportParameter("FechaCancelacion", FechaCancelacion.ToString())); //parametros.Add(new ReportParameter("FechaCancelacion", FechaCancelacion.ToString()));
parametros.Add(new ReportParameter("FolioFiscal", ObjFactura.FolioFiscal)); //parametros.Add(new ReportParameter("FolioFiscal", ObjFactura.FolioFiscal));
parametros.Add(new ReportParameter("RFCEmisor", UsuarioActual.Empresa.RFC)); //parametros.Add(new ReportParameter("RFCEmisor", UsuarioActual.Empresa.RFC));
parametros.Add(new ReportParameter("SelloCancelacion", SelloCancelacion)); //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<ClsSisMail.ArchivoMail> LSRutasMail = new List<ClsSisMail.ArchivoMail>(); List <ClsSisMail.ArchivoMail> LSRutasMail = new List<ClsSisMail.ArchivoMail>();
string Asunto = string.Empty; string Asunto = string.Empty;
string Cuerpo = string.Empty; string Cuerpo = string.Empty;