- Se puso geocerca en almacen 32 y 33

- Se completo el codigo de las encuestas, ya se descarga el historico y si ya se contesto la encuesta, ya no la vuelve a mostrar.
This commit is contained in:
2024-04-16 16:22:18 -06:00
parent a073c2e8a4
commit bf8dab1993
7 changed files with 85 additions and 44 deletions

View File

@@ -401,6 +401,7 @@ Sub Class_Globals
Private l_txtEncuesta As Label
Private l_titEncuesta As Label
Private ImageView11 As ImageView
Dim distance As Long
End Sub
'You can add more parameters here.
@@ -506,7 +507,7 @@ Sub B4XPage_Appear
If c.GetString("CAT_CL_NUM_SERIEFISICO") = "0" Then
L_QR.TEXT = "SIN CODIGO"
L_QR.TextColor = Colors.Red
gest.VISIBLE = True
If ALMACEN <> "32" And ALMACEN <> "33" And ALMACEN <> 6 Then gest.VISIBLE = True
BT_QR.Visible = True
Else
L_QR.TEXT = c.GetString("CAT_CL_NUM_SERIEFISICO")
@@ -639,41 +640,57 @@ Sub B4XPage_Appear
Else If c.RowCount = 0 Then
B_IMP.Visible = False
End If
' Log(distance)
If (ALMACEN = "32" Or ALMACEN = "33" Or ALMACEN = "6") And distance > 100 Then
gest.Visible = False
' ToastMessageShow("aaa", False)
End If
End Sub
Sub GPS_LocationChanged (Location1 As Location)
' LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps)
End If
Dim l1, l2 As Location
l1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)
If m_lat.Length > 0 And B4XPages.MainPage.lat_gps <> "0" Then
Dim l1, l2 As Location
l1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)
' Log($"Coordenadas de la tienda - lat:${m_lat}, lon:${m_lon}"$)
l2.Initialize2(m_lat, m_lon)
l2.Initialize2(m_lat, m_lon)
BT_QR.Enabled = True
LA_GPS.TextColor = Colors.Blue
LA_GPS.Text = "CON UBICACION GPS"
B_GPS.Enabled = True
'now we need the distance between our location and the target location
Dim distance As Long
distance = l1.DistanceTo(l2) 'the result is in meter
gest.Visible = True
If distance < 100 Then
LA_GEO.TextColor = Colors.Blue
Tels.Visible = True
gest.Visible = True
Else
LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
BT_QR.Enabled = True
LA_GPS.TextColor = Colors.Blue
LA_GPS.Text = "CON UBICACION GPS"
B_GPS.Enabled = True
'now we need the distance between our location and the target location
Dim distance As Long
distance = l1.DistanceTo(l2) 'the result is in meter
If ALMACEN <> "32" And ALMACEN <> "33" And ALMACEN <> 6 Then gest.Visible = True
If ALMACEN = "32" Or ALMACEN = "33" Or ALMACEN = "6" Then
If distance < 100 Then
LA_GEO.TextColor = Colors.Blue
Tels.Visible = True
gest.Visible = True
ToastMessageShow("DENTRO de rango GPS", False)
Else
LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
End If
End If
End If
End If
LA_GEO.Text= $"$1.2{distance/1000} kms"$
' 19.4846431, -99.1458691 -> Keymon
If LA_GEO.IsInitialized Then LA_GEO.Text= $"$1.2{distance/1000} kms"$
If distance > 100 Then ToastMessageShow("Fuera de rango GPS", False)
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_GPS")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
CallSubDelayed(Tracker, "CreateLocationRequest")
@@ -1960,7 +1977,7 @@ Sub b_like_Click
b_like.Visible = False
Tar.Visible = False
Tels.Visible = False
gest.Visible = False
gest.Visible = False ' : ToastMessageShow("bbbb", False)
b_venta.Visible = False
Guardar.Visible = False
End Sub
@@ -2788,14 +2805,12 @@ Private Sub B_GALLINA_Click
b_like.Visible = False
Tar.Visible = False
Tels.Visible = False
gest.Visible = False
gest.Visible = False ': ToastMessageShow("ccc", False)
b_venta.Visible = False
Guardar.Visible = False
HIST.Visible = False
End Sub
' P5 M1
Private Sub p6_TextChanged (Old As String, New As String)
If p6.Text.Length > 2 Then
@@ -3478,6 +3493,7 @@ Sub Cuestionario
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
Private fecha As String = $"${DateTime.Date(DateTime.Now)} ${DateTime.Time(DateTime.Now)}"$
CUANTOS = 0
' indicePregunta = 0
Log($"Tomar_Foto = ${TOMAR_FOTO}"$)
@@ -3491,6 +3507,7 @@ Sub Cuestionario
CUANTOS2 = s.GetString("CUANTOS2")
If logger Then LogColor($"Hist:encuesta=${CUANTOS}, hist_encuesta2 = ${CUANTOS2}"$, Colors.Magenta)
End If
Log(CUANTOS & "|" & CUANTOS2)
If CUANTOS = 0 And CUANTOS2 = 0 Then
Private enc As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_EP_ID, CAT_EP_IDTIPOPREGUNTA, CAT_CE_DESCRIPCION, CAT_EP_PREGUNTA, CAT_EP_RES1_PRED, CAT_EP_RES2_PRED, CAT_EP_RES3_PRED, CAT_EP_ORDEN_PREGUNTA FROM CAT_ENCUESTA_PREGUNTA ORDER BY CAT_CE_DESCRIPCION, CAST(CAT_EP_ORDEN_PREGUNTA AS DECIMAL)")
If enc.RowCount > 0 Then
@@ -3547,7 +3564,7 @@ Sub Cuestionario
Do Until botonPresionado = 1 'Esperamos que respondan la pregunta
Sleep(0)
Loop
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes,sDate & sTime,enc.GetString("CAT_EP_ID")))
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes, fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
ocultaPanelEncuesta
ELSE IF enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 4 Then
Log("Pregunta tipo 4")
@@ -3563,12 +3580,12 @@ Sub Cuestionario
Loop
Log("encuestaRes: " & encuestaRes)
If encuestaRes = "SI" Then
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "SI", sDate & sTime, enc.GetString("CAT_EP_ID")))
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, "SI", fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
indicePregunta = listaPreguntas.IndexOf(enc.GetString("CAT_EP_RES1_PRED")) 'Nos movemos a la posicion especificada por la respuesta, en las preguntas de tipo desicion, la respuesta nos indica a que pregunta movernos.
Log($"IndicePreg = ${indicePregunta}"$)
i = indicePregunta
else if encuestaRes = "NO" Then
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "NO", sDate & sTime, enc.GetString("CAT_EP_ID")))
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, "NO", fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
indicePregunta = listaPreguntas.IndexOf(enc.GetString("CAT_EP_RES2_PRED")) 'Nos movemos a la posicion especificada por la respuesta, en las preguntas de tipo desicion, la respuesta nos indica a que pregunta movernos.
Log($"IndicePreg = ${indicePregunta}"$)
i = indicePregunta
@@ -3590,7 +3607,7 @@ Sub Cuestionario
Sleep(0)
Loop
Log($"Guardamos tipo 2 : ${encuestaRes}"$)
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes, sDate & sTime, enc.GetString("CAT_EP_ID")))
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes, fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
ocultaPanelEncuesta
ELSE If enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 6 Then
Log("Pregunta tipo 6")
@@ -3625,7 +3642,7 @@ Sub Cuestionario
Do Until botonPresionado = 1 'Esperamos que respondan la pregunta
Sleep(0)
Loop
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes,sDate & sTime,enc.GetString("CAT_EP_ID")))
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes, fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
ocultaPanelEncuesta
Else
' Starter.tipov = "VENTA"