mirror of
https://github.com/KeymonSoft/Gabinete-Roit.git
synced 2026-04-21 21:29:26 +00:00
Commit inicial
This commit is contained in:
395
B4A/login.bas
Normal file
395
B4A/login.bas
Normal file
@@ -0,0 +1,395 @@
|
||||
B4A=true
|
||||
Group=Default Group
|
||||
ModulesStructureVersion=1
|
||||
Type=Class
|
||||
Version=11.8
|
||||
@EndOfDesignText@
|
||||
Sub Class_Globals
|
||||
Public Root As B4XView 'ignore
|
||||
Private xui As XUI 'ignore
|
||||
|
||||
' Base de datos
|
||||
Dim reqManager As DBRequestManager
|
||||
Dim user As String
|
||||
Dim perfil As String
|
||||
Dim ID_EMP As String
|
||||
Dim formato_suc As String
|
||||
Dim nombre As String
|
||||
Dim lat_suc As String
|
||||
Dim long_suc As String
|
||||
' Elementos
|
||||
Private b_inicio As Button
|
||||
Private et_user As EditText
|
||||
Private et_pass As EditText
|
||||
Dim sucursal As String
|
||||
Dim suc_nom As String
|
||||
Dim nom_proyec As String
|
||||
Private ImageView5 As ImageView
|
||||
Private b_regresa As Button
|
||||
Private b_actualizar_app As Button
|
||||
Private b_enviarbd As Button
|
||||
Private b_guarda_server As Button
|
||||
Private et_server As EditText
|
||||
Private lv_server As ListView
|
||||
Private p_configuracion As Panel
|
||||
Public Provider As FileProvider
|
||||
Dim horain As String
|
||||
Dim horaout As String
|
||||
Dim horacomin As String
|
||||
Dim horacomout As String
|
||||
Private p_adorno As Panel
|
||||
Private l_version As Label
|
||||
|
||||
End Sub
|
||||
|
||||
'You can add more parameters here.
|
||||
Public Sub Initialize As Object
|
||||
Return Me
|
||||
End Sub
|
||||
|
||||
'This event will be called once, before the page becomes visible.
|
||||
Private Sub B4XPage_Created (Root1 As B4XView)
|
||||
Root = Root1
|
||||
Root1.LoadLayout("login")
|
||||
reqManager.Initialize(Me, Starter.DBReqServer)
|
||||
|
||||
Provider.Initialize
|
||||
l_version.Text = Application.VersionName
|
||||
End Sub
|
||||
|
||||
Sub B4XPage_Appear
|
||||
|
||||
If Starter.muestraProgreso = 1 Then
|
||||
muestraProgreso("Descargando actualización")
|
||||
Starter.muestraProgreso = 0
|
||||
End If
|
||||
p_configuracion.Width = Root.Width
|
||||
p_configuracion.Height = Root.Height
|
||||
p_configuracion.Visible = False
|
||||
p_adorno.Width = Root.Width * 0.85
|
||||
p_adorno.Height = Root.Height * 0.80
|
||||
Log("inicio1")
|
||||
StartService(Tracker)
|
||||
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
|
||||
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
||||
If Result Then
|
||||
StartService(Tracker)
|
||||
Log("Start Tracker")
|
||||
Else
|
||||
ToastMessageShow("Sin permisos para GPS", True)
|
||||
End If
|
||||
Log(Result)
|
||||
|
||||
' Dim p As Period
|
||||
' p.Days = 0
|
||||
' p.Hours = 0
|
||||
' p.Minutes = 0
|
||||
' Dim newDate As Long = DateUtils.AddPeriod(DateTime.Now, p)
|
||||
' Log(newDate)
|
||||
'
|
||||
' ' Verificar si hoy es lunes
|
||||
' If EsLunes(newDate) Then
|
||||
' Log("¡Hoy es lunes!")
|
||||
' Else If EsMartes(newDate) Then
|
||||
' Log("¡Hoy es Martes!")
|
||||
' Else If EsMiercoles(newDate) Then
|
||||
' Log("¡Hoy es Miercoles!")
|
||||
' Else If Esjueves(newDate) Then
|
||||
' Log("¡Hoy es jueves!")
|
||||
' Else If Esviernes(newDate) Then
|
||||
' Log("¡Hoy es Viernes!")
|
||||
' Else If Essabado(newDate) Then
|
||||
' Log("¡Hoy es Sabado!")
|
||||
' Else If EsDomingo(newDate) Then
|
||||
' Log("¡Hoy es Domingo!")
|
||||
' End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub b_inicio_Click
|
||||
If et_user.Text <> "" Then
|
||||
Dim cmd As DBCommand
|
||||
cmd.Initialize
|
||||
cmd.Name = "select_usuario_GABICO"
|
||||
cmd.Parameters = Array As Object(et_user.Text, et_pass.Text)
|
||||
reqManager.ExecuteQuery(cmd , 0, "usuario")
|
||||
user = et_user.Text
|
||||
End If
|
||||
Log(Starter.latitud)
|
||||
Log(Starter.longitud)
|
||||
|
||||
' B4XPages.ShowPage ("Principal")
|
||||
End Sub
|
||||
|
||||
Sub JobDone (Job As HttpJob)
|
||||
If Job.Success = False Then
|
||||
ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
||||
Else
|
||||
LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green)
|
||||
|
||||
If Job.JobName = "DBRequest" Then
|
||||
Dim result As DBResult = reqManager.HandleJob(Job)
|
||||
If result.Tag = "usuario" Then 'query tag
|
||||
For Each records() As Object In result.Rows
|
||||
For Each k As String In result.Columns.Keys
|
||||
Log(result.Tag & ": " & k & ": " & records(result.Columns.Get(k)))
|
||||
Next
|
||||
If records(result.Columns.Get ("USUARIO")) = "OKActivo" Then
|
||||
Starter.almacen = records(result.Columns.Get ("CAT_LO_AGENCIA"))
|
||||
nom_proyec = records(result.Columns.Get ("PRO_NOM"))
|
||||
perfil = records(result.Columns.Get ("CAT_LO_PERFIL"))
|
||||
sucursal = records(result.Columns.Get ("CAT_EMP_SUCURSAL"))
|
||||
suc_nom = records(result.Columns.Get ("SUC_NOMBRE"))
|
||||
ID_EMP = records(result.Columns.Get ("CAT_LO_ID"))
|
||||
formato_suc = records(result.Columns.Get ("CAT_SUC_FORMATO"))
|
||||
nombre = records(result.Columns.Get ("CAT_LO_NOMBRE"))
|
||||
lat_suc = records(result.Columns.Get ("CAT_SUC_LATITUD"))
|
||||
long_suc = records(result.Columns.Get ("CAT_SUC_LONGITUD"))
|
||||
user = et_user.Text
|
||||
horain = records(result.Columns.Get ("CAT_EMP_HORA_ENTRA"))
|
||||
horaout = records(result.Columns.Get ("CAT_EMP_HORA_SALE"))
|
||||
horacomin = records(result.Columns.Get ("CAT_EMP_COMIDA_ENTRA"))
|
||||
horacomout = records(result.Columns.Get ("CAT_EMP_COMIDA_SALE"))
|
||||
|
||||
Dim cmd As DBCommand
|
||||
cmd.Initialize
|
||||
cmd.Name = "select_sitrabaja_GABICO"
|
||||
cmd.Parameters = Array As Object(et_user.Text)
|
||||
reqManager.ExecuteQuery(cmd , 0, "diatraba")
|
||||
Else
|
||||
ToastMessageShow ("Datos incorrectos",True)
|
||||
End If
|
||||
Next
|
||||
If result.Rows.Size = 0 Then
|
||||
ToastMessageShow ("Datos incorrectos",True)
|
||||
End If
|
||||
End If
|
||||
|
||||
If result.Tag = "diatraba" Then 'query tag
|
||||
For Each records() As Object In result.Rows
|
||||
Starter.trabaja = records(result.Columns.Get("TRABAJA"))
|
||||
Log(Starter.trabaja)
|
||||
If Starter.trabaja = 1 Then
|
||||
If perfil = 3 Then
|
||||
CallSubDelayed(Starter,"ENVIA_ULTIMA_GPS")
|
||||
B4XPages.ShowPage("Principal")
|
||||
Log("AQUI ANDO")
|
||||
Else If perfil = 2 Then
|
||||
CallSubDelayed(Starter,"ENVIA_ULTIMA_GPS")
|
||||
Log("AQUI ACA")
|
||||
B4XPages.ShowPage("Supervisor")
|
||||
End If
|
||||
Else If Starter.trabaja = 0 Then
|
||||
MsgboxAsync("Hoy es día de descanso","Atención")
|
||||
End If
|
||||
Next
|
||||
' ToastMessageShow(" Historico Clientes Promociones Actualizado." , True)
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub B4XPage_CloseRequest As ResumableSub
|
||||
If p_configuracion.Visible = True Then
|
||||
p_configuracion.Visible = False
|
||||
Else
|
||||
B4XPages.ShowPage("login")
|
||||
End If
|
||||
|
||||
' Return True
|
||||
Return False
|
||||
End Sub
|
||||
|
||||
Private Sub ImageView5_Click
|
||||
p_configuracion.Visible = True
|
||||
lv_server.Clear
|
||||
lv_server.AddSingleLine("http://keymon.lat:1783")
|
||||
If et_user.Text = "KMTS1" Then lv_server.AddSingleLine("http://11.0.0.196:1783")
|
||||
' l_server.Text = Starter.server
|
||||
et_server.Text = Starter.DBReqServer
|
||||
End Sub
|
||||
|
||||
Private Sub p_configuracion_Click
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub lv_server_ItemClick (Position As Int, Value As Object)
|
||||
Starter.DBReqServer = Value
|
||||
' l_server.Text = Value
|
||||
et_server.Text = Value
|
||||
Starter.reqManager.Initialize(Me, Value)
|
||||
Log(Value)
|
||||
ToastMessageShow("Servidor modificado", False)
|
||||
End Sub
|
||||
|
||||
Private Sub b_guarda_server_Click
|
||||
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER"))
|
||||
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",et_server.text))
|
||||
Starter.DBReqServer = et_server.text
|
||||
Log("Inicializamos reqManager con " & Starter.DBReqServer)
|
||||
reqManager.Initialize(Me, Starter.DBReqServer)
|
||||
CallSubDelayed(Starter, "reinicializaReqManager")
|
||||
p_configuracion.Visible= False
|
||||
End Sub
|
||||
|
||||
Private Sub b_regresa_Click
|
||||
p_configuracion.Visible = False
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub b_enviarbd_Click
|
||||
' copiaDB
|
||||
' Sleep(1000)
|
||||
Dim FileName As String = "kmt.db"
|
||||
'copy the shared file to the shared folder
|
||||
Log("xxxxxx:"&Provider.SharedFolder)
|
||||
Sleep(1000)
|
||||
File.Copy(File.DirInternal, FileName, Provider.SharedFolder, FileName)
|
||||
Dim email As Email
|
||||
email.To.Add("soporte@keymonsoft.com")
|
||||
email.Subject = "Envio Base de dados Gabinete"
|
||||
email.Attachments.Add(Provider.GetFileUri(FileName))
|
||||
' email.Attachments.Add(Provider.GetFileUri(FileName)) 'second attachment
|
||||
Dim in As Intent = email.GetIntent
|
||||
in.Flags = 1 'FLAG_GRANT_READ_URI_PERMISSION
|
||||
StartActivity(in)
|
||||
End Sub
|
||||
|
||||
Private Sub b_actualizar_app_Click
|
||||
StartService(appUpdater)
|
||||
End Sub
|
||||
|
||||
' appUpdater - Mostramos el anuncio de que se esta descargando el nuevo apk
|
||||
Sub muestraProgreso(mensaje As String)
|
||||
ProgressDialogShow(mensaje)
|
||||
End Sub
|
||||
'
|
||||
' appUpdater - Ocultamos el anuncio de que se esta descargando el nuevo apk
|
||||
Sub ocultaProgreso
|
||||
ProgressDialogHide
|
||||
End Sub
|
||||
|
||||
Sub notiLowReturn(title As String, Body As String, id As Int) As Notification 'ignore
|
||||
Private notification As Notification
|
||||
notification.Initialize2(notification.IMPORTANCE_LOW)
|
||||
Log("notiLowReturn: "&title)
|
||||
notification.Icon = "icon"
|
||||
notification.Sound = False
|
||||
notification.Vibrate = False
|
||||
notification.SetInfo(title, Body, Main)
|
||||
notification.Notify(id)
|
||||
' Log("notiLowReturn SetInfo")
|
||||
Return notification
|
||||
End Sub
|
||||
|
||||
'' Función para verificar si la fecha actual es un lunes
|
||||
'Sub EsLunes(fecha As Long) As Boolean
|
||||
' ' Crear un objeto Calendar
|
||||
' Dim cal As JavaObject
|
||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
||||
'
|
||||
' ' Establecer la fecha actual en el objeto Calendar
|
||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
||||
'
|
||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
||||
'
|
||||
' ' Verificar si es lunes (día de la semana = 2)
|
||||
' Return diaSemana = 2
|
||||
'End Sub
|
||||
'
|
||||
'Sub EsMartes(fecha As Long) As Boolean
|
||||
' ' Crear un objeto Calendar
|
||||
' Dim cal As JavaObject
|
||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
||||
'
|
||||
' ' Establecer la fecha actual en el objeto Calendar
|
||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
||||
'
|
||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
||||
'
|
||||
' ' Verificar si es lunes (día de la semana = 2)
|
||||
' Return diaSemana = 3
|
||||
'End Sub
|
||||
'
|
||||
'Sub EsMiercoles(fecha As Long) As Boolean
|
||||
' ' Crear un objeto Calendar
|
||||
' Dim cal As JavaObject
|
||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
||||
'
|
||||
' ' Establecer la fecha actual en el objeto Calendar
|
||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
||||
'
|
||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
||||
'
|
||||
' ' Verificar si es lunes (día de la semana = 2)
|
||||
' Return diaSemana = 4
|
||||
'End Sub
|
||||
'
|
||||
'Sub Esjueves(fecha As Long) As Boolean
|
||||
' ' Crear un objeto Calendar
|
||||
' Dim cal As JavaObject
|
||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
||||
'
|
||||
' ' Establecer la fecha actual en el objeto Calendar
|
||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
||||
'
|
||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
||||
'
|
||||
' ' Verificar si es lunes (día de la semana = 2)
|
||||
' Return diaSemana = 5
|
||||
'End Sub
|
||||
'
|
||||
'Sub Esviernes(fecha As Long) As Boolean
|
||||
' ' Crear un objeto Calendar
|
||||
' Dim cal As JavaObject
|
||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
||||
'
|
||||
' ' Establecer la fecha actual en el objeto Calendar
|
||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
||||
'
|
||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
||||
'
|
||||
' ' Verificar si es lunes (día de la semana = 2)
|
||||
' Return diaSemana = 6
|
||||
'End Sub
|
||||
'
|
||||
'Sub Essabado(fecha As Long) As Boolean
|
||||
' ' Crear un objeto Calendar
|
||||
' Dim cal As JavaObject
|
||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
||||
'
|
||||
' ' Establecer la fecha actual en el objeto Calendar
|
||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
||||
'
|
||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
||||
'
|
||||
' ' Verificar si es lunes (día de la semana = 2)
|
||||
' Return diaSemana = 7
|
||||
'End Sub
|
||||
'
|
||||
'Sub EsDomingo(fecha As Long) As Boolean
|
||||
' ' Crear un objeto Calendar
|
||||
' Dim cal As JavaObject
|
||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
||||
'
|
||||
' ' Establecer la fecha actual en el objeto Calendar
|
||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
||||
'
|
||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
||||
'
|
||||
' ' Verificar si es lunes (día de la semana = 2)
|
||||
' Return diaSemana = 1
|
||||
'End Sub
|
||||
Reference in New Issue
Block a user