mirror of
https://github.com/KeymonSoft/Guna_Reparto_Imp.git
synced 2026-04-20 14:19:34 +00:00
VERSION 6.01.11
- Se agrego el mandaPendientes para los abonos. - Se agrego que solo se pueda hacer solo una vez FIN DIA y despues de eso se necesita una contraseña (FD + dia + hora)
This commit is contained in:
@@ -137,6 +137,7 @@ Sub Class_Globals
|
||||
Private l_carga2 As Label
|
||||
'fin carga
|
||||
Private b_impresion_rec As Button
|
||||
Dim linker As C_deviceLinker
|
||||
End Sub
|
||||
|
||||
'You can add more parameters here.
|
||||
@@ -211,7 +212,7 @@ End Sub
|
||||
|
||||
Sub B4XPage_Appear
|
||||
reqManager.Initialize(Me, B4XPages.MainPage.server)
|
||||
|
||||
linker.Initialize(Me, "Linker", True)
|
||||
p_principal.Width = Root.Width
|
||||
p_principal.Height = Root.Height *.80
|
||||
Private c As Cursor = Starter.skmt.ExecQuery("SELECT * FROM NOVENTA")
|
||||
@@ -403,6 +404,12 @@ Sub B4XPage_Appear
|
||||
B4XPages.MainPage.rutaPreventa = RUTA_T
|
||||
c.Close
|
||||
reqs.Initialize
|
||||
|
||||
c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FECHA"))
|
||||
If c.RowCount > 0 Then
|
||||
c.Position = 0
|
||||
Starter.FECHA_HOY = c.GetString("CAT_VA_VALOR")
|
||||
End If
|
||||
|
||||
Private rc As Cursor = Starter.skmt.ExecQuery($"select * from REPARTO where REP_RECHAZO = "1" and REP_CANT > 0"$)
|
||||
' Log($"RECHAZOS=${rc.RowCount}"$)
|
||||
@@ -1124,7 +1131,16 @@ Sub cargar_Click
|
||||
cmd.Name = "insert_drop_rep_GUNA_VN"
|
||||
cmd.Parameters = Array As Object(Subs.dameUsuarioDeDB, l_ruta.Text, ALMACEN, l_ctast.text, Subs.traeEntregados, Subs.traeRechazados, "CARGA")
|
||||
reqManager.ExecuteCommand(cmd , "inst_drop")
|
||||
' reqs.Add("inst_noventa")
|
||||
' reqs.Add("inst_noventa")
|
||||
|
||||
cmd.Initialize 'Para traer la contraseña del candado de "FIN DIA"
|
||||
cmd.Name = "SELECT_PASS_FIN_DIA"
|
||||
reqManager.ExecuteQuery(cmd , 0, "pass_fin_dia")
|
||||
|
||||
cmd.Initialize
|
||||
cmd.Name = "select_fecha"
|
||||
' cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
||||
reqManager.ExecuteQuery(cmd , 0, "fecha")
|
||||
|
||||
Starter.skmt.ExecNonQuery("delete from kmt_info")
|
||||
Starter.skmt.ExecNonQuery("delete from cod_result")
|
||||
@@ -1880,6 +1896,23 @@ Sub JobDone(Job As HttpJob)
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If result.Tag = "fecha" Then 'query tag
|
||||
For Each records() As Object In result.Rows
|
||||
Starter.FECHA_HOY = records(result.Columns.Get("FECHA"))
|
||||
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA"))
|
||||
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",Starter.FECHA_HOY))
|
||||
Next
|
||||
End If
|
||||
|
||||
' Candado Fin Dia
|
||||
If result.Tag = "pass_fin_dia" Then 'query tag
|
||||
For Each records() As Object In result.Rows
|
||||
Dim nuevaContrasena As String = records(result.Columns.Get("CAR_VA_VALOR3"))
|
||||
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_PASS"))
|
||||
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FINDIA_PASS", nuevaContrasena))
|
||||
Next
|
||||
End If
|
||||
|
||||
Job.Release
|
||||
End If
|
||||
@@ -1972,6 +2005,11 @@ End Sub
|
||||
Sub connecta_Click
|
||||
LogColor($"ReqServer = ${B4XPages.MainPage.server}"$, Colors.red)
|
||||
If Not(IsConnectedToInternet) Then MsgboxAsync("No hay conexión a conexión a Internet", "Revisa tu conexión")
|
||||
|
||||
' EL EVENTO DE CONECTAR AHORA SE DISPARA DESPUES DE REVISAR SI LA RUTA ESTA LIGADA O NO AL DISPOSITIVO (verifyDevice).
|
||||
' REVISAR EL SUB "Linker_Response"
|
||||
linker.verifyDevice(Subs.traeAlmacen, e_ruta.text)
|
||||
|
||||
If e_ruta.Text <> "" Then
|
||||
imei = "" 'p.GetDeviceId
|
||||
conn = "1"
|
||||
@@ -2013,7 +2051,19 @@ Sub b_mapa_Click
|
||||
End Sub
|
||||
|
||||
Sub e_ruta_EnterPressed
|
||||
If e_ruta.Text = "FIN DIA" Then
|
||||
Private adelanteFinDia As Boolean = True
|
||||
c=Starter.skmt.ExecQuery("select ifnull(CAT_VA_VALOR,0) as CAT_VA_VALOR from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'FINDIA_FECHA'") 'Buscamos "FIN DIA" anterior
|
||||
If c.RowCount > 0 Then
|
||||
c.Position = 0
|
||||
Private FINDIA_FECHA As String = 0
|
||||
If c.GetString("CAT_VA_VALOR").Length > 4 Then FINDIA_FECHA = c.GetString("CAT_VA_VALOR")
|
||||
Log(FINDIA_FECHA&"|"&Starter.FECHA_HOY)
|
||||
If Not(FINDIA_FECHA < Starter.FECHA_HOY) Then 'Si el "FIN DIA" guardado NO es de ayer o anterior ...
|
||||
adelanteFinDia = False
|
||||
End If
|
||||
c.Close
|
||||
End If
|
||||
If e_ruta.Text = "FIN DIA" And adelanteFinDia Then
|
||||
RES = Msgbox2("Seguro que desea hacer el cierre todos los datos se borraran?","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
|
||||
If RES = DialogResponse.POSITIVE Then
|
||||
e_ruta.Text = ""
|
||||
@@ -2040,6 +2090,8 @@ Sub e_ruta_EnterPressed
|
||||
Starter.skmt.ExecNonQuery("DELETE FROM ABONOSP")
|
||||
Starter.skmt.ExecNonQuery("DELETE FROM ABONOS")
|
||||
Starter.skmt.ExecNonQuery("DELETE FROM BLOCKENVIO")
|
||||
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_FECHA"))
|
||||
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object("FINDIA_FECHA", Starter.FECHA_HOY))
|
||||
b_multiAlmacen.Visible = False
|
||||
p_multiAlmacen.Visible = False
|
||||
s_almacen2.SelectedIndex = 0
|
||||
@@ -2048,6 +2100,8 @@ Sub e_ruta_EnterPressed
|
||||
End If
|
||||
' Starter.waypointsOrdered.Clear
|
||||
Starter.skmt.ExecNonQuery("delete from waypoints")
|
||||
Else if e_ruta.Text = "FIN DIA" Then
|
||||
Msgbox("Ya se hizo FIN DIA hoy, solo se puede hacer un FIN DIA cada día, por favor comuniquese con un supervisor.", "LIMITE DIARIO SUPERADO") 'ignore
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -3229,4 +3283,48 @@ End Sub
|
||||
|
||||
Private Sub connecta_LongClick
|
||||
imp_LIQUIDACION
|
||||
End Sub
|
||||
|
||||
Sub Linker_Response(Status As String) ' << AÑADE ESTE SUB [New Query]
|
||||
If Starter.Logger Then LogColor($"Respuesta de DeviceLinker para la verificación del dispositivo: ${Status}"$, Colors.Magenta) '
|
||||
Select Status
|
||||
Case "UUID_ERROR"
|
||||
Log("Error interno al obtener el identificador único del dispositivo.")
|
||||
ToastMessageShow("Error interno al obtener el identificador único del dispositivo.", True)
|
||||
Case "HTTP_ERROR"
|
||||
LogColor("Error HTTP al verificar el dispositivo: " & linker.lastJobDoneError, Colors.Red)
|
||||
ToastMessageShow("Error de conexión al servidor durante la verificación del dispositivo.", True)
|
||||
Case "SERVER_LOGIC_ERROR"
|
||||
Log("El servidor no proporcionó un estado de verificación válido. Contacte a soporte.")
|
||||
ToastMessageShow("El servidor no proporcionó un estado de verificación válido. Contacte a soporte.", True)
|
||||
Case "OK"
|
||||
Log("########################################################")
|
||||
Log("Dispositivo vinculado y verificado exitosamente.")
|
||||
ToastMessageShow("Dispositivo verificado y vinculado correctamente.", False)
|
||||
' Aquí puedes añadir lógica adicional si la verificación es exitosa, por ejemplo, habilitar ciertos botones o continuar con el flujo normal.
|
||||
' connecta2
|
||||
Case "REGISTRO_COMPLETO"
|
||||
Log("########################################################")
|
||||
Log("¡Registro completo!")
|
||||
ToastMessageShow("¡Registro completo!", False)
|
||||
' connecta2
|
||||
Case "SIN_REGISTRO"
|
||||
Log("########################################################")
|
||||
Log("Sin registro")
|
||||
ToastMessageShow("¡Dispositivo sin registro!", False)
|
||||
linker.linkDevice(Subs.traeAlmacen, e_ruta.text)
|
||||
Case "REGISTRANDO"
|
||||
Log("¡Registro en proceso!")
|
||||
ToastMessageShow("¡Registro en proceso!", True)
|
||||
Case "YA_REGISTRADO"
|
||||
Log("########################################################")
|
||||
Log("¡El dispositivo ya esta registrado con otra ruta!")
|
||||
ToastMessageShow("¡¡El dispositivo ya esta registrado con otra ruta!!", True)
|
||||
Msgbox2("Esa ruta ya esta registrada en otro dispositivo", "RUTA INCORRECTA","Aceptar", "", "",Null) 'ignore
|
||||
Case Else ' Otros estados que tu servidor pueda devolver (ej. "UNAUTHORIZED", "PENDING_APPROVAL")
|
||||
Log("########################################################")
|
||||
Log($"Estado de verificación del dispositivo: ${Status}"$)
|
||||
ToastMessageShow($"Verificación del dispositivo: ${Status}"$, True)
|
||||
' Puedes decidir si bloquear la funcionalidad o mostrar un mensaje específico según el estado.
|
||||
End Select
|
||||
End Sub
|
||||
Reference in New Issue
Block a user