v: 5.10.24

Se hicieron invisibles normales de la venta, se agregaron 2 botones mas, uno indica que tieene venta y el otro que no tiene, tambien al boton que indica que tiene venta se le agrega una pequeña ventana para agregar la venta que se le indique.
This commit is contained in:
IsR0d
2024-10-07 10:14:24 -06:00
parent 7fe1d3059d
commit 65319638b4
1220 changed files with 160744 additions and 132 deletions

View File

@@ -149,6 +149,13 @@ Sub Class_Globals
Dim usuario As String = ""
Dim Id_Almacen As String
Dim ruta_tienda As String
Private b_clinteSinVenta As Button
Private b_clienteVenta As Button
Private p_monto_venta As Panel
Private et_monto_venta As EditText
Private b_can_monto_venta As Button
Private b_gu_monto_venta As Button
End Sub
'You can add more parameters here.
@@ -200,6 +207,10 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
b_clinteSinVenta.Enabled = False
b_clienteVenta.Enabled = False
' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
' Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
@@ -314,8 +325,8 @@ Sub B4XPage_Appear
' b_like.Visible = False
End If
If ALMACEN = "16" Or ALMACEN = "13" Then
Tels.Visible = True
gest.Visible = True
Tels.Visible = False
gest.Visible = False
End If
CallSubDelayed(Tracker, "Track")
@@ -333,8 +344,8 @@ Sub B4XPage_Appear
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
End If
Tels.Visible = True
gest.Visible = True
Tels.Visible = False
gest.Visible = False
'Si el cliente es nuevo, no aparece el boton de venta
If la_cuenta.text.SubString2(0,1) = "N" Then gest.Visible = False
@@ -368,15 +379,17 @@ Sub GPS_LocationChanged (Location1 As Location)
BT_QR.Enabled = True
LA_GPS.TextColor = Colors.Blue
LA_GPS.Text = "CON UBICACION GPS"
b_clinteSinVenta.Enabled = True
b_clienteVenta.Enabled = True
' 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
gest.Visible = False
' If distance < 100 Then
LA_GEO.TextColor = Colors.Blue
Tels.Visible = True
gest.Visible = True
Tels.Visible = False
gest.Visible = False
' Else
' LA_GEO.TextColor = Colors.Red
' End If
@@ -401,14 +414,14 @@ End Sub
Sub gest_Click
B4XPages.MainPage.tipo_venta = "PREVENTA"
'Si hay mapa de productos es que hay venta en proceso, entonces borramos la actual para meter la nueva.
' If B4XPages.MainPage.productos.prodsMap.IsInitialized And B4XPages.MainPage.productos.prodsMap.Size > 0 Then Subs.borraPedidoClienteActual
B4XPages.ShowPage("productos")
End Sub
Sub Tels_Click
Sub Tels_Click
B4XPages.ShowPage("NoVenta")
End Sub
@@ -457,75 +470,75 @@ End Sub
Sub Guardar2_Click
' Log("GuardarVentaOriginal")
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
c=B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
c.Position=0
clie_id = c.GetString("CUENTA")
c.Close
c=B4XPages.MainPage.skmt.ExecQuery("select USUARIO from usuarioa")
c.Position=0
usuario = c.GetString("USUARIO")
c.Close
c=B4XPages.MainPage.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
c.Position=0
If c.GetString("CUANTOS") > 0 Then
Private cbFactura As Int = 0
If cb_factura.Checked Then cbFactura = 1
B4XPages.MainPage.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ENVIO_OK, PC_FACTURA) VALUES (?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps,0, cbFactura))
B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
End If
c.Close
DateTime.TimeFormat = "HHmmss"
sTime=DateTime.Time(DateTime.Now)
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_OUT = ? where HSS_OUT = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
' B4XPages.MainPage.skmt.ExecNonQuery("UPDATE HIST_STAY_STORE set HSS_TOT = HSS_OUT - HSS_IN where HSS_CODIGO In (select cuenta from cuentaa)")
Try
c=B4XPages.MainPage.skmt.ExecQuery(" Select (substr(HSS_OUT,1,2) - substr(HSS_IN,1,2)) - Case when (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) < 0 Then 1 Else 0 end HORAS_TOTALES, " & _
"Case when (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) < 0 Then (substr(HSS_OUT,3,2) + 60 - substr(HSS_IN,3,2)) " & _
" Else (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) End - Case when (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) < 0 Then 1 Else 0 end MINUTOS_TOTALES, " & _
"Case when (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) < 0 Then (substr(HSS_OUT,5,2) + 60 - substr(HSS_IN,5,2)) " & _
" Else (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) end SEGUNDOS_TOTALES " & _
" from HIST_STAY_STORE where HSS_CODIGO In (Select cuenta from cuentaa) ")
c.Position = 0
stay_hh = c.GetString("HORAS_TOTALES") * 60 * 60
stay_mi = c.GetString("MINUTOS_TOTALES") * 60
stay_ss = c.GetString("SEGUNDOS_TOTALES")
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_TOT = ? where HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(stay_hh + stay_mi + stay_ss))
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(sTime))
c.Close
Catch
ToastMessageShow(".",True)
End Try
skmt.ExecNonQuery2("update PEDIDO_INICIO_FINAL set PIF_HORA_FINAL = ? where PIF_CLIENTE = ? and PIF_HORA_FINAL = 0", Array As Object (DateTime.Now, la_cuenta.Text))
' LogColor($"actualizamos "${la_cuenta.text}, hora_final=${DateTime.now}"$,Colors.Red)
Subs.actualizaTET(la_cuenta.text)
DateTime.TimeFormat = "HH:mm:ss"
mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!!
B4XPages.MainPage.productos.reiniciarlistaProds = True
B4XPages.MainPage.productos.prodsMap.Initialize
B4XPages.MainPage.promos.promosMap.Initialize
B4XPages.ShowPage("Principal")
' DateTime.DateFormat = "MM/dd/yyyy"
' sDate=DateTime.Date(DateTime.Now)
' sTime=DateTime.Time(DateTime.Now)
' c=B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
' c.Position=0
' clie_id = c.GetString("CUENTA")
' c.Close
' c=B4XPages.MainPage.skmt.ExecQuery("select USUARIO from usuarioa")
' c.Position=0
' usuario = c.GetString("USUARIO")
' c.Close
' c=B4XPages.MainPage.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
' c.Position=0
' If c.GetString("CUANTOS") > 0 Then
' Private cbFactura As Int = 0
' If cb_factura.Checked Then cbFactura = 1
' B4XPages.MainPage.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
' B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
' B4XPages.MainPage.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ENVIO_OK, PC_FACTURA) VALUES (?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps,0, cbFactura))
' B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
' End If
' c.Close
' DateTime.TimeFormat = "HHmmss"
' sTime=DateTime.Time(DateTime.Now)
' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_OUT = ? where HSS_OUT = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
' ' B4XPages.MainPage.skmt.ExecNonQuery("UPDATE HIST_STAY_STORE set HSS_TOT = HSS_OUT - HSS_IN where HSS_CODIGO In (select cuenta from cuentaa)")
' Try
' c=B4XPages.MainPage.skmt.ExecQuery(" Select (substr(HSS_OUT,1,2) - substr(HSS_IN,1,2)) - Case when (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) < 0 Then 1 Else 0 end HORAS_TOTALES, " & _
' "Case when (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) < 0 Then (substr(HSS_OUT,3,2) + 60 - substr(HSS_IN,3,2)) " & _
' " Else (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) End - Case when (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) < 0 Then 1 Else 0 end MINUTOS_TOTALES, " & _
' "Case when (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) < 0 Then (substr(HSS_OUT,5,2) + 60 - substr(HSS_IN,5,2)) " & _
' " Else (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) end SEGUNDOS_TOTALES " & _
' " from HIST_STAY_STORE where HSS_CODIGO In (Select cuenta from cuentaa) ")
' c.Position = 0
' stay_hh = c.GetString("HORAS_TOTALES") * 60 * 60
' stay_mi = c.GetString("MINUTOS_TOTALES") * 60
' stay_ss = c.GetString("SEGUNDOS_TOTALES")
' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_TOT = ? where HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(stay_hh + stay_mi + stay_ss))
' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(sTime))
' c.Close
' Catch
' ToastMessageShow(".",True)
' End Try
'
' skmt.ExecNonQuery2("update PEDIDO_INICIO_FINAL set PIF_HORA_FINAL = ? where PIF_CLIENTE = ? and PIF_HORA_FINAL = 0", Array As Object (DateTime.Now, la_cuenta.Text))
'' LogColor($"actualizamos "${la_cuenta.text}, hora_final=${DateTime.now}"$,Colors.Red)
' Subs.actualizaTET(la_cuenta.text)
' DateTime.TimeFormat = "HH:mm:ss"
'
' mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!!
'
' B4XPages.MainPage.productos.reiniciarlistaProds = True
' B4XPages.MainPage.productos.prodsMap.Initialize
' B4XPages.MainPage.promos.promosMap.Initialize
' B4XPages.ShowPage("Principal")
Guardar.SendToBack
b_inicioFinVenta.Text = "TERMINAR VENTA"
' Log("RESPALDO")
If la_cuenta.Text <> "0" Then 'Si es ABORDO, no mostramos el boton b_inicioFinVenta y regresamos a Principal.
b_inicioFinVenta.Visible = True
Else
' b_inicioFinVenta.Visible = False
Starter.enVenta = False
LogColor(">>>>>> ABORDO: " & Starter.enVenta, Colors.red)
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Id_Almacen, ruta_tienda, "Venta Abordo", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
Subs.iniciaActividad("principal")
B4XPages.ShowPageAndRemovePreviousPages("Principal")
End If
' Guardar.SendToBack
' b_inicioFinVenta.Text = "TERMINAR VENTA"
'' Log("RESPALDO")
' If la_cuenta.Text <> "0" Then 'Si es ABORDO, no mostramos el boton b_inicioFinVenta y regresamos a Principal.
' b_inicioFinVenta.Visible = True
' Else
'' b_inicioFinVenta.Visible = False
' Starter.enVenta = False
' LogColor(">>>>>> ABORDO: " & Starter.enVenta, Colors.red)
' Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Id_Almacen, ruta_tienda, "Venta Abordo", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
' Subs.iniciaActividad("principal")
' B4XPages.ShowPageAndRemovePreviousPages("Principal")
' End If
End Sub
@@ -707,9 +720,9 @@ Sub B_GUARDA_C_Click
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_FACE(HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN) VALUES (?,?,?,?) ", Array As Object(la_cuenta.Text, I_COMPRA.Text,LA_RUTA,ALMACEN))
Panel1.Visible = False
' b_like.Visible = True
Tar.Visible = True
Tels.Visible = True
gest.Visible = True
Tar.Visible = False
Tels.Visible = False
gest.Visible = False
' b_like.Visible = False
Guardar.Visible = True
End Sub
@@ -938,6 +951,12 @@ Sub JobDone(Job As HttpJob)
Log("mandaBitacora")
End If
End If
If Job.JobName = "DBRequest" Then
Dim resultado As DBResult = reqManager.HandleJob(Job)
If resultado.Tag= "ventaNoVenta" Then
Log("ventaNoVenta")
End If
End If
Job.Release
End If
@@ -1004,4 +1023,77 @@ Private Sub b_inicioFinVenta_Click
c.Close
End Sub
Private Sub b_clienteVenta_Click
et_monto_venta.Text = ""
p_monto_venta.Visible = True
End Sub
Private Sub b_clinteSinVenta_Click
Guardar_Click
et_monto_venta.Text = "0"
Subs.ventaNoVenta(usuario, Id_Almacen, ruta_tienda, "SinVenta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, et_monto_venta.Text)
Try
c = B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
c.Position = 0
clie_id = c.GetString("CUENTA")
c.Close
B4XPages.MainPage.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_OUT = ? where HSS_OUT = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(DateTime.Time(DateTime.Now)))
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(DateTime.Time(DateTime.Now)))
ToastMessageShow("Cliente con venta eliminado correctamente.", False)
Catch
ToastMessageShow("Error eliminando cliente con venta.", True)
End Try
End Sub
Private Sub b_gu_monto_venta_Click
If et_monto_venta.Text = "" Or et_monto_venta.Text = "0" Then
ToastMessageShow("El monto de venta no puede ser vacío o 0.", True)
Else
Guardar_Click
Subs.ventaNoVenta(usuario, Id_Almacen, ruta_tienda, "ConVenta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, et_monto_venta.Text)
Try
c = B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
c.Position = 0
clie_id = c.GetString("CUENTA")
c.Close
B4XPages.MainPage.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_OUT = ? where HSS_OUT = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(DateTime.Time(DateTime.Now)))
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(DateTime.Time(DateTime.Now)))
ToastMessageShow("Cliente con venta eliminado correctamente.", False)
Catch
ToastMessageShow("Error eliminando cliente con venta.", True)
End Try
p_monto_venta.Visible = False
End If
End Sub
Private Sub b_can_monto_venta_Click
p_monto_venta.Visible = False
End Sub