mirror of
https://github.com/KeymonSoft/Kelloggs_v4.git
synced 2026-04-20 19:49:12 +00:00
3/10/23 - Se agregó el respaldo diario y intercepción de notificaciones.
- Se agregó el código para el respaldo diario de 4 tablas. - Se agregóel codigo para interceptar notificacines y cambiar el servidor de DBRequest.
This commit is contained in:
@@ -9,6 +9,8 @@ Sub Class_Globals
|
||||
Private Root As B4XView 'ignore
|
||||
Private xui As XUI 'ignore
|
||||
Dim reqManager As DBRequestManager
|
||||
Dim device As Phone
|
||||
Dim kh As kms_helperSubs
|
||||
Dim rp As RuntimePermissions
|
||||
Dim t1 As Timer
|
||||
Dim t2 As Timer
|
||||
@@ -58,7 +60,7 @@ Sub Class_Globals
|
||||
Dim Listo4 As String
|
||||
Dim Listo5 As String
|
||||
Dim EJECUTANDO As String
|
||||
Dim res As String
|
||||
' Dim res As String
|
||||
Dim inve As String
|
||||
Dim cuantos_pedidosc As String
|
||||
Dim cuantos_pedido As String
|
||||
@@ -182,10 +184,14 @@ Sub Class_Globals
|
||||
Private l_porcentaje As Label
|
||||
Private detenerLoop As Boolean = False
|
||||
Dim logger As Boolean = True
|
||||
Private admin As BluetoothAdmin
|
||||
Public BluetoothState, ConnectionState As Boolean
|
||||
Private ion As Object
|
||||
End Sub
|
||||
|
||||
'You can add more parameters here.
|
||||
Public Sub Initialize As Object
|
||||
admin.Initialize("admin")
|
||||
Return Me
|
||||
End Sub
|
||||
|
||||
@@ -203,7 +209,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
||||
fecha=DateTime.Date(DateTime.Now)
|
||||
c=Starter.db.ExecQuery2("select CAT_CO_CONFIGURACION from CAT_CODIGOS where CAT_CO_PONDERACION =1 AND CAT_CO_ACCION = ?", Array As String("SERVER"))
|
||||
c.Position =0
|
||||
Starter.server = c.GetString("CAT_CO_CONFIGURACION")
|
||||
Starter.DBReqServer = c.GetString("CAT_CO_CONFIGURACION")
|
||||
c.Close
|
||||
b=Starter.db.ExecQuery("Select count(*) as CUANTOS from pedido_cliente")
|
||||
b.Position=0
|
||||
@@ -252,33 +258,97 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
||||
l_ctast.Text = d.GetString("TOTAL_VISITAR")
|
||||
'l_porvisitar.Text = e.GetString("POR_VISITAR")
|
||||
End If
|
||||
' Log("Permisos BT: " & rp.Check("android.permission.BLUETOOTH_CONNECT"))
|
||||
Log("XXXXXXXXXXXXXXXXXXXXXXXXX REVISAMOS PERMISOS DE BT")
|
||||
rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
|
||||
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
||||
If Result Then Log("Tenemos permisos de bluetooth.")
|
||||
kh.Initialize(Me, "kh")
|
||||
kh.RD_Init
|
||||
Log("XXXXXXXXXXXXXXXXXXXXXXXXX REVISAMOS PERMISOS DE BT - APPEAR -")
|
||||
StartBluetooth
|
||||
Log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
|
||||
' Log("Check phone state: " & rp.Check(rp.PERMISSION_READ_PHONE_STATE))
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub StartBluetooth
|
||||
If admin.IsEnabled = False Then
|
||||
Wait For (EnableBluetooth) Complete (Success As Boolean)
|
||||
If Success = False Then
|
||||
ToastMessageShow("Failed to enable bluetooth", True)
|
||||
End If
|
||||
End If
|
||||
BluetoothState = admin.IsEnabled
|
||||
StateChanged
|
||||
End Sub
|
||||
|
||||
Private Sub StateChanged
|
||||
' btnSearchForDevices.Enabled = BluetoothState
|
||||
' btnAllowConnection.Enabled = BluetoothState
|
||||
' ChatPage1.btnSend.Enabled = ConnectionState
|
||||
End Sub
|
||||
|
||||
Private Sub EnableBluetooth As ResumableSub
|
||||
ToastMessageShow("Enabling Bluetooth adapter...", False)
|
||||
Dim ph As Phone
|
||||
If ph.SdkVersion >= 31 Then
|
||||
Log(31)
|
||||
rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
|
||||
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
||||
Log(Result)
|
||||
If Result = False Then Return False
|
||||
If ph.SdkVersion >= 33 Then
|
||||
Log(33)
|
||||
Dim in As Intent
|
||||
in.Initialize("android.bluetooth.adapter.action.REQUEST_ENABLE", "")
|
||||
StartActivityForResult(in)
|
||||
Wait For ion_Event (MethodName As String, Args() As Object)
|
||||
Return admin.IsEnabled
|
||||
End If
|
||||
End If
|
||||
Return admin.Enable
|
||||
End Sub
|
||||
|
||||
Private Sub StartActivityForResult(i As Intent)
|
||||
Dim jo As JavaObject = GetBA
|
||||
ion = jo.CreateEvent("anywheresoftware.b4a.IOnActivityResult", "ion", Null)
|
||||
jo.RunMethod("startActivityForResult", Array As Object(ion, i))
|
||||
End Sub
|
||||
|
||||
Sub GetBA As Object
|
||||
Dim jo As JavaObject = Me
|
||||
Return jo.RunMethod("getBA", Null)
|
||||
End Sub
|
||||
|
||||
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
|
||||
|
||||
Sub B4XPage_Appear
|
||||
If Not(kh.CheckNotificationAccess) Then
|
||||
Msgbox2Async($"Se necesita acceso a las notificaciones, haga clic en "Aceptar" y en la siguiente pantalla permita el acceso a la aplicación "${Application.LabelName}"."$, "Permisos necesarios", "Aceptar", "Cancelar", "", Null, True)
|
||||
Wait For Msgbox_Result (resultado As Int)
|
||||
If resultado = DialogResponse.POSITIVE Then
|
||||
Dim In As Intent
|
||||
In.Initialize("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS", "")
|
||||
StartActivity(In)
|
||||
End If
|
||||
End If
|
||||
If Subs.traeUltimaActividadBD <> "principal" Then Subs.iniciaActividad(Subs.traeUltimaActividadBD)
|
||||
reqManager.Initialize(Me, Starter.server)
|
||||
Starter.btAdmin.Initialize("btAdmin")
|
||||
Log("BTADMIN INICIALIZADO: "&Starter.btAdmin.IsEnabled)
|
||||
If Not(Starter.btAdmin.IsEnabled) Then Starter.btAdmin.Enable 'Si no esta prendido el BT, lo prendemos.
|
||||
reqManager.Initialize(Me, Starter.DBReqServer)
|
||||
' If Not(btAdmin.IsEnabled) Then btAdmin.Enable 'Si no esta prendido el BT, lo prendemos.
|
||||
If kh.RD_Init_IsInitialized Then
|
||||
kh.RD_respalda_cat_detalle_paq
|
||||
kh.RD_respalda_cat_gunaprod
|
||||
kh.RD_respalda_cat_gunaprod2
|
||||
kh.RD_respalda_kmt_info
|
||||
kh.RD_respalda_pedido
|
||||
Else
|
||||
Log("****** RD NO INICIALIZADO ********")
|
||||
End If
|
||||
e_ruta.Enabled = True
|
||||
Starter.rutaV = l_ruta.Text
|
||||
c=Starter.db.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER"))
|
||||
c.Position =0
|
||||
If c.GetString("CUANTOS") = 0 Then
|
||||
Starter.db.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER", Starter.server))
|
||||
Starter.db.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER", Starter.DBReqServer))
|
||||
Else
|
||||
c=Starter.db.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER"))
|
||||
c.Position =0
|
||||
Starter.server = c.GetString("CAT_VA_VALOR")
|
||||
Starter.DBReqServer = c.GetString("CAT_VA_VALOR")
|
||||
End If
|
||||
c=Starter.db.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FECHA"))
|
||||
If c.RowCount > 0 Then
|
||||
@@ -350,10 +420,10 @@ Sub B4XPage_Appear
|
||||
Not(File.Exists(File.DirInternal,"FOTO2.jpg")) Or _
|
||||
Not(File.Exists(File.DirInternal,"FOTO3.jpg")) Or _
|
||||
Not(File.Exists(File.DirInternal,"FOTO4.jpg")) Then
|
||||
If Not(File.Exists(File.DirInternal,"FOTO1.jpg")) Then Log("Falta foto1")
|
||||
If Not(File.Exists(File.DirInternal,"FOTO2.jpg")) Then Log("Falta foto2")
|
||||
If Not(File.Exists(File.DirInternal,"FOTO3.jpg")) Then Log("Falta foto3")
|
||||
If Not(File.Exists(File.DirInternal,"FOTO4.jpg")) Then Log("Falta foto4")
|
||||
' If Not(File.Exists(File.DirInternal,"FOTO1.jpg")) Then Log("Falta foto1")
|
||||
' If Not(File.Exists(File.DirInternal,"FOTO2.jpg")) Then Log("Falta foto2")
|
||||
' If Not(File.Exists(File.DirInternal,"FOTO3.jpg")) Then Log("Falta foto3")
|
||||
' If Not(File.Exists(File.DirInternal,"FOTO4.jpg")) Then Log("Falta foto4")
|
||||
Cedis_Check = 0
|
||||
End If
|
||||
If Cedis_Check = 0 And l_ruta.Text <> 0 Then
|
||||
@@ -380,17 +450,17 @@ Sub B4XPage_Appear
|
||||
' Subs.guardaUltimaActividadBD("principal")
|
||||
|
||||
|
||||
Log("Check phone state: " & rp.Check(rp.PERMISSION_READ_PHONE_STATE))
|
||||
Log("Pedimos permisos de estado del cel")
|
||||
' Log("Check phone state: " & rp.Check(rp.PERMISSION_READ_PHONE_STATE))
|
||||
' Log("Pedimos permisos de estado del cel")
|
||||
rp.CheckAndRequest(rp.PERMISSION_READ_PHONE_STATE)
|
||||
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
||||
If Result Then
|
||||
Dim Phn As PhoneId
|
||||
' IMEN.Text = "" 'Phn.GetDeviceId
|
||||
imei ="" ' Phn.GetDeviceId
|
||||
If logger Then LogColor($"////////////////// IMEI: ${imei} ////////////////// "$, Colors.Blue)
|
||||
' If logger Then LogColor($"////////////////// IMEI: ${imei} ////////////////// "$, Colors.Blue)
|
||||
End If
|
||||
Log("Permisos cel terminados")
|
||||
' Log("Permisos cel terminados")
|
||||
|
||||
' Log("Permisos BT: " & rp.Check("android.permission.BLUETOOTH_CONNECT"))
|
||||
' Log("REVISAMOS PERMISOS DE BT")
|
||||
@@ -2881,7 +2951,7 @@ Sub descargaCartaPorte
|
||||
' Log(cartaPortePDF)
|
||||
'Para el servidor
|
||||
Private pdfServer As String = "keymon.lat"
|
||||
If Starter.server.IndexOf("10.0.0.205") > -1 Then pdfServer = "10.0.0.205"
|
||||
If Starter.DBReqServer.IndexOf("10.0.0.205") > -1 Then pdfServer = "10.0.0.205"
|
||||
' Log(pdfServer)
|
||||
pdfURL = $"https://${pdfServer}/CartaPorteKelloggs/CartaPorteMovil${DateTime.Date(DateTime.now)}/${cartaPortePDF}"$
|
||||
LogColor(pdfURL,Colors.Red)
|
||||
|
||||
Reference in New Issue
Block a user