--Procesamiento de gzip, solicitudes de descarga en eFacturas

This commit is contained in:
2024-09-28 14:56:17 -07:00
parent 91ccf85697
commit 77f3069be8

View File

@@ -1506,6 +1506,57 @@ Partial Class Compras_eFacturas
' Exit Sub
'End If
Dim ListComprimidos As New List(Of String)
Dim ListXML As New List(Of String)
Dim ListPDF As New List(Of String)
Dim FileExtension As String = "-1"
Dim filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
Dim filemove As String = ""
For Each fileItem As Archivo In filesgral
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
filemove = fileItem.filename
If filemove <> "" Then
filemove.FilesMove("", String.Format("{0}Temp\Facturas", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase:=False, Sobreescribir:=True)
If FileExtension.ToUpper = "RAR" Or FileExtension.ToUpper = "ZIP" Then
ListComprimidos.Add(String.Format("{0}Temp\Facturas\{1}", UsuarioActual.Empresa.Ruta, filemove))
End If
End If
Next
For Each fileItem As Archivo In filesgral
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
filemove = fileItem.filename
If filemove <> "" AndAlso (FileExtension.ToUpper() <> "ZIP" And FileExtension.ToUpper() <> "RAR") Then
'filemove.FilesMove("", String.Format("{0}Temp\Facturas", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase:=False, Sobreescribir:=True)
If FileExtension.ToUpper = "XML" Then
ListXML.Add(String.Format("{0}Temp\Facturas\{1}", UsuarioActual.Empresa.Ruta, filemove))
End If
If FileExtension.ToUpper = "PDF" Then
ListPDF.Add(String.Format("{0}Temp\Facturas\{1}", UsuarioActual.Empresa.Ruta, filemove))
End If
End If
Next
SubirFacturas(ListComprimidos, ListXML, ListPDF)
RegistraScript(String.Format("$('#{0}').modal('hide');", "ModalFacturas"))
RegistraScript("$('#ModalBitacoraEfacturas').modal()")
End Sub
Private Sub SubirFacturas(ByRef ListComprimidos As List(Of String), ByRef ListXML As List(Of String), ByRef ListPDF As List(Of String))
Dim DTLOG As New DataTable
DTLOG.Columns.Add("Serie", GetType(String))
DTLOG.Columns.Add("Folio", GetType(String))
@@ -1526,30 +1577,6 @@ Partial Class Compras_eFacturas
sw.Start()
Dim FileExtension As String = "-1"
Dim filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
Dim filemove As String = ""
Dim ListXML As New List(Of String)
Dim ListPDF As New List(Of String)
Dim ListComprimidos As New List(Of String)
Dim ListDirectorios As New List(Of String)
Dim ListFacturas As New List(Of Factura)
For Each fileItem As Archivo In filesgral
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
filemove = fileItem.filename
If filemove <> "" Then
filemove.FilesMove("", String.Format("{0}Temp\Facturas", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase:=False, Sobreescribir:=True)
If FileExtension.ToUpper = "RAR" Or FileExtension.ToUpper = "ZIP" Then
ListComprimidos.Add(String.Format("{0}Temp\Facturas\{1}", UsuarioActual.Empresa.Ruta, filemove))
End If
End If
Next
For Each comprmido As String In ListComprimidos
@@ -1611,26 +1638,6 @@ Partial Class Compras_eFacturas
Next
For Each fileItem As Archivo In filesgral
FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
filemove = fileItem.filename
If filemove <> "" AndAlso (FileExtension.ToUpper() <> "ZIP" And FileExtension.ToUpper() <> "RAR") Then
'filemove.FilesMove("", String.Format("{0}Temp\Facturas", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase:=False, Sobreescribir:=True)
If FileExtension.ToUpper = "XML" Then
ListXML.Add(String.Format("{0}Temp\Facturas\{1}", UsuarioActual.Empresa.Ruta, filemove))
End If
If FileExtension.ToUpper = "PDF" Then
ListPDF.Add(String.Format("{0}Temp\Facturas\{1}", UsuarioActual.Empresa.Ruta, filemove))
End If
End If
Next
'Dim fileEntries As String() = Directory.GetFiles(String.Format("{0}Temp\Facturas", UsuarioActual.Empresa.Ruta))
'Dim ListaDirectoriosTemporales As New List(Of String)
@@ -1890,11 +1897,6 @@ Partial Class Compras_eFacturas
'End If
RegistraScript(String.Format("$('#{0}').modal('hide');", "ModalFacturas"))
RegistraScript("$('#ModalBitacoraEfacturas').modal()")
mesajeFaturasSubidas(DTLOG)
@@ -1903,7 +1905,6 @@ Partial Class Compras_eFacturas
'Alert(String.Format("Se cargaron {0} Facturas", Arreglo.Count), TipoMensaje.MsgInformacion)
End Sub
Private Sub mesajeFaturasSubidas(DTLOG As DataTable)
@@ -2708,17 +2709,31 @@ Partial Class Compras_eFacturas
Using nom As ClsNominas = New ClsNominas()
If nom.SolicitudesGet(-1, UsuarioActual.CveEmpresa, CveTipoSolicitud:=2, Estatus:=0, Top:=50) Then
GVSolicitudesPendientes.DataSource = nom.DtResultados
'PRUEBAS
If UsuarioActual.CveRol = 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
If nom.SolicitudesGet(1589, UsuarioActual.CveEmpresa, CveTipoSolicitud:=2, Estatus:=-1, Top:=1) Then
GVSolicitudesPendientes.DataSource = nom.DtResultados
If nom.DtResultados.Rows.Count > 0 Then
LnkverificarSolicitudes.Visible = True
If nom.DtResultados.Rows.Count > 0 Then
LnkverificarSolicitudes.Visible = True
End If
GVSolicitudesPendientes.DataBind()
End If
Else
If nom.SolicitudesGet(-1, UsuarioActual.CveEmpresa, CveTipoSolicitud:=2, Estatus:=0, Top:=50) Then
GVSolicitudesPendientes.DataSource = nom.DtResultados
GVSolicitudesPendientes.DataBind()
If nom.DtResultados.Rows.Count > 0 Then
LnkverificarSolicitudes.Visible = True
End If
GVSolicitudesPendientes.DataBind()
End If
End If
If nom.SolicitudesGet(-1, UsuarioActual.CveEmpresa, CveTipoSolicitud:=2, Estatus:=1, Top:=50) Then
If nom.SolicitudesGet(-1, UsuarioActual.CveEmpresa, CveTipoSolicitud:=2, Estatus:=1, Top:=1) Then
GVSolicitudesNominas.DataSource = nom.DtResultados
GVSolicitudesNominas.DataBind()
End If
@@ -2996,11 +3011,17 @@ Partial Class Compras_eFacturas
Dim sbResultado As StringBuilder = New StringBuilder()
Dim TipoMensaje As ModExtensiones.TipoMensaje = ModExtensiones.TipoMensaje.MsgInformacion
Dim ListComprimidos As New List(Of String)
Dim ListXML As New List(Of String)
Dim ListPDF As New List(Of String)
For Each GvRow As GridViewRow In GVSolicitudesPendientes.Rows
Dim CveSolicitudActual As Integer = GvRow.DataKey("CveSolicitud").ToEntero()
Dim idSolicitud As String = GvRow.DataKey("idSolicitud").Trim()
Dim CveTipoSolicitud As Integer = GvRow.DataKey("CveTipoSolicitud").ToEntero()
Dim Folio As Integer = GvRow.DataKey("Folio").ToEntero()
Dim CveSolicitudDetalle As Integer = GvRow.DataKey("CveSolicitudDetalle").ToEntero()
Dim resultSolicitud As List(Of String) = New List(Of String)()
Dim resultVerificacion As List(Of String) = New List(Of String)()
Dim ResultadoVerificaionOK As Boolean = False
@@ -3046,25 +3067,47 @@ Partial Class Compras_eFacturas
End If
If ResultadoSolicitudOK And Verificar Then
Dim ObjApiVerificacion As JToken = CType(api.VerificaSolicitudesNominas(UsuarioActual.CveEmpresa, CveTipoSolicitud, CveSolicitudActual), JToken)
If Not (ObjApiVerificacion Is Nothing) Then
resultVerificacion = ObjApiVerificacion.[Select](Function(token) token.Values().Aggregate(Function(i, j) $"{i}|{j}").Value(Of String)()).ToList()
'Dim ObjApiVerificacion As JToken = CType(api.VerificaSolicitudesNominas(UsuarioActual.CveEmpresa, CveTipoSolicitud, CveSolicitudActual), JToken)
'If UsuarioActual.CveRol = 1 Then
' Dim respesta = New StringBuilder
' For Each s As String In resultVerificacion
' respesta.AppendLine($"{s} - ")
' Next
'If Not (ObjApiVerificacion Is Nothing) Then
' resultVerificacion = ObjApiVerificacion.[Select](Function(token) token.Values().Aggregate(Function(i, j) $"{i}|{j}").Value(Of String)()).ToList()
' Alert(respesta.ToString)
'End If
' If UsuarioActual.CveRol = 1 Then
' Dim respesta = New StringBuilder
' For Each s As String In resultVerificacion
' respesta.AppendLine($"{s} - ")
' Next
' Alert(respesta.ToString)
' End If
' ResultadoVerificaionOK = Boolean.Parse(resultVerificacion(0))
' SeVerifico = True
'Else
' TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia
'End If
Dim Archivo = New FileInfo(String.Format("{0}DescargasSATXML\Compras\{1}.gzip", UsuarioActual.Empresa.Ruta, CveSolicitudDetalle))
Dim fileName = Archivo.Name
Dim filemove = Archivo.FullName
If Archivo.Exists Then
Try
'COPIAR ARCHIVO A LA CARPETA DE PROCESAMIENTO DE FACTURAS, SE ELIMINARAN ESOS ARCHIVOS TEMPORALES
Dim destFile = String.Format("{0}Temp\Facturas\{1}", UsuarioActual.Empresa.Ruta, fileName)
File.Copy(filemove, destFile, overwrite:=True)
ListComprimidos.Add(destFile)
ResultadoVerificaionOK = True
SeVerifico = True
Catch ex As Exception
ex.ToString().GuardaLog()
End Try
ResultadoVerificaionOK = Boolean.Parse(resultVerificacion(0))
SeVerifico = True
Else
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia
End If
Else
If resultSolicitud.Count >= 4 Then
@@ -3076,10 +3119,14 @@ Partial Class Compras_eFacturas
TipoMensaje = ModExtensiones.TipoMensaje.MsgAdvertencia
End If
If SeVerifico AndAlso UsuarioActual.CveRol = 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
SubirFacturas(ListComprimidos, ListXML, ListPDF)
End If
'If UsuarioActual.CveRol = 1 Then
' Alert($"SeVerifico {SeVerifico.ToString} resultVerificacion.Count {resultVerificacion.Count }")
'End If
If Verificar Then
If SeVerifico AndAlso resultVerificacion.Count >= 4 Then
@@ -3096,7 +3143,6 @@ Partial Class Compras_eFacturas
End If
Next
Alert(sbResultado.ToString(), TipoMensaje)