From 83fb1741683c7d97b309feaeddaa8289a81bdd03 Mon Sep 17 00:00:00 2001 From: rrene Date: Sat, 16 Mar 2024 06:57:23 -0700 Subject: [PATCH] =?UTF-8?q?-=20unificaci=C3=B3n=20de=20funci=C3=B3n=20para?= =?UTF-8?q?=20generar=20QR=20SAT?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App_Code/ClsPaginas.vb | 44 +++++++++++++++++------------------------- 1 file changed, 18 insertions(+), 26 deletions(-) diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index c19234354..7e31f8a07 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -19,6 +19,8 @@ Imports Newtonsoft.Json.Linq Public Class ClsPaginas Inherits System.Web.UI.Page Public Const CveUsuarioAsistencia As Integer = 100 + Public Const LigaVerificacionSAT As String = "https://verificacfdi.facturaelectronica.sat.gob.mx/default.aspx" + Public Const LigaVerificacionSATCCP As String = "https://verificacfdi.facturaelectronica.sat.gob.mx/verificaccp/default.aspx" Public Const ContraseñaPredeterminada As String = "-acceso-" Public Const ContraseñaPredeterminadaEncriptada As String = "aQDyjiv2NgoTct4c84VnLQ==" ' "-acceso-" Private Shared EncryptKey() As Byte = {} @@ -111,6 +113,18 @@ Public Class ClsPaginas Return If(tHora <> 0, Now.ToUniversalTime.AddMinutes(tHora), Now) End Function + Public Shared Function GeneraQRSAT(RFCEmisor As String, RFCReceptor As String, Total As Decimal, UUID As String, Optional Sellocfdi As String = "", Optional RutaGuardado As String = "") As Byte() + + 'Dim RutaCBB As String = $"{UsuarioActual.Empresa.Ruta}CBB\{ObjCFDITimbre.Comprobante.SerieFolio}.jpg" + Dim qrCode As New GoFac.QrCode() + Dim Cadena As String = $"{LigaVerificacionSAT}?re={RFCEmisor}&rr={RFCReceptor}&tt={String.Format("{0,12:F6}", Total).Trim()}&id={UUID}" + If Sellocfdi <> "" Then Cadena = Cadena & $"&fe={Sellocfdi.Substring(Sellocfdi.Length - 8, 8)}" + Dim bCBB As Byte() = qrCode.GenerarQrCode(Cadena) + If RutaGuardado <> "" Then File.WriteAllBytes(RutaGuardado, bCBB) + Return bCBB + End Function + + #End Region @@ -6300,31 +6314,15 @@ Public Class ClsPaginas CadenaOriginal = "||1.0|" + FolioFiscal + "|" + FechaCertificacion.ToString("yyyy-MM-dd") + "T" + FechaCertificacion.ToString("HH:mm:ss") + "|" + SelloCFDi + "|" + NoSerieCertificado + "||" End If - If Not ImagenCBB.Exists Then - Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() - CBB.GenerarCBB(UsuarioActual.Empresa.RFC, ClienteRFC, Total, FolioFiscal, RutaCBB) - End If - - + If Not ImagenCBB.Exists Then GeneraQRSAT(UsuarioActual.Empresa.RFC, ClienteRFC, Total, FolioFiscal, RutaGuardado:=RutaCBB) ImagenCBB = New System.IO.FileInfo(RutaCBB) - If ImagenCBB.Exists Then ImgCBB = String.Format("file://{0}", ImagenCBB.FullName) Else ImgCBB = "" End If - - - 'FIXME OICCHECAR DESPUES DE SINCRONIZAR TIMBRADO - 'If Not ImagenCCP.Exists Then - ' Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() - ' CBB.GenerarCBB(UsuarioActual.Empresa.RFC, ClienteRFC, Total, FolioFiscal, RutaCBB) - 'End If - - ImagenCCP = New System.IO.FileInfo(RutaCCP) - If ImagenCCP.Exists Then ImgCCP = String.Format("file://{0}", ImagenCCP.FullName) Else @@ -6751,9 +6749,6 @@ Public Class ClsPaginas End If 'Si no tiene CBB, SE GENERA If (Not ImagenCBB.Exists OrElse RegenerarQR) AndAlso Vta.FolioFiscal <> "" Then - 'Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() - 'CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total, Vta.FolioFiscal, RutaCBB) - Dim LigaVerificacionSAT As String = "https://verificacfdi.facturaelectronica.sat.gob.mx/default.aspx" Try Dim qrCode As New GoFac.QrCode() Dim bCBB As Byte() = qrCode.GenerarQrCode($"{LigaVerificacionSAT}?re={UsuarioActual.Empresa.RFC}&rr={RFCReceptor}&tt={String.Format("{0,12:F6}", Vta.Total).Trim()}&id={Vta.FolioFiscal}&fe={Vta.SelloCFDi.Substring(Vta.SelloCFDi.Length - 8, 8)}") @@ -8245,9 +8240,8 @@ Public Class ClsPaginas End If 'Si no tiene CBB, SE GENERA If Not ImagenCBB.Exists Then - Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() If ObjPersonal.GetPersonal(CvePersonal, CveEmpresa) Then - CBB.GenerarCBB(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString.ToDecimal, FolioFiscal, RutaCBB) + GeneraQRSAT(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString.ToDecimal, FolioFiscal, RutaGuardado:=RutaCBB) End If End If ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/Nomina/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, ObjNomina.SerieFolio) @@ -8329,10 +8323,9 @@ Public Class ClsPaginas RptParametro.Add(New ReportParameter("Unidad", "ACT")) RptParametro.Add(New ReportParameter("Descripcion", "PAGO DE NÓMINA")) RptParametro.Add(New ReportParameter("Total", If(indemnizacion, ajusteindemnizacion, ObjNomina.Total - ajusteindemnizacion).ToString())) - Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() - cQr = CBB.GenerarCBBBytes(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString().ToDecimal(), FolioFiscal) RptParametro.Add(New ReportParameter("ImporteLetra", ObjNomina.Total.ToString.ToDecimal.Texto2Letras)) RptParametro.Add(New ReportParameter("Clave", "84111505")) + cQr = GeneraQRSAT(UsuarioActual.Empresa.RFC, ObjPersonal.RFC, ObjNomina.Total.ToString().ToDecimal(), FolioFiscal) Else TieneError = True End If @@ -8739,8 +8732,7 @@ Public Class ClsPaginas End If Dim CadenaOriginal As String = $"||1.0| {FolioFiscal} | {FechaCertificacion.ToDate.ToShortDateString} T {FechaCertificacion.ToDateTime.ToShortTimeString} | {SelloCFDi} | {NoSerieCertificado} ||" If Not File.Exists(ImagenCBB) AndAlso FolioFiscal <> "" Then - Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() - CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCOrdenante, 1, FolioFiscal, ImagenCBB) + GeneraQRSAT(UsuarioActual.Empresa.RFC, RFCOrdenante, 1, FolioFiscal, RutaGuardado:=ImagenCBB) End If ' PARAMETROS DEL REPORTE