- unificación de función para generar QR SAT
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user