mirror of
https://github.com/KeymonSoft/Mazapa.git
synced 2026-04-19 13:49:21 +00:00
Version: 4.12.15
Se agrego la geocerca a 50 mts Se agregaron validaciones para tomar promociones aprovadas.
This commit is contained in:
@@ -266,6 +266,11 @@ Sub B4XPage_Appear
|
||||
LA_GPS.TextColor = Colors.Red
|
||||
LA_GPS.Text = "SIN UBICACION GPS"
|
||||
cercavalor = 0
|
||||
Tels.Visible = False
|
||||
gest.Visible = False
|
||||
bitacora.p_transparenteInicioFin2.Visible = False
|
||||
bitacora.b_Inicio_Fin_venta2.Visible = False
|
||||
b_ventaabordo.Enabled = False
|
||||
|
||||
If Subs.hayPedido Then 'Si hay pedido, deshabilitamos el boton de "No Venta"
|
||||
Log(">>>>> HAY PEDIDO")
|
||||
@@ -392,14 +397,7 @@ Sub B4XPage_Appear
|
||||
Tels.Visible = True
|
||||
gest.Visible = True
|
||||
End If
|
||||
CallSubDelayed(Tracker, "Track")
|
||||
CallSubDelayed(Tracker, "StartFLPSmall")
|
||||
If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
|
||||
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
|
||||
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
|
||||
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
||||
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
||||
End If
|
||||
|
||||
Tels.Visible = True
|
||||
gest.Visible = True
|
||||
|
||||
@@ -489,13 +487,29 @@ Sub B4XPage_Appear
|
||||
gest.Text = "Recarga"
|
||||
B4XPages.MainPage.recarga = "1"
|
||||
Else
|
||||
gest.Text = "Pre-venta"
|
||||
gest.Text = "PREVENTA 24HRS"
|
||||
B4XPages.MainPage.recarga = "0"
|
||||
End If
|
||||
' LogColor(B4XPages.MainPage.recarga,Colors.Blue)
|
||||
' If banderaimp = 1 Then
|
||||
' Guardar_Click
|
||||
' End If
|
||||
|
||||
Tels.Visible = False
|
||||
gest.Visible = False
|
||||
bitacora.p_transparenteInicioFin2.Visible = False
|
||||
bitacora.b_Inicio_Fin_venta2.Visible = False
|
||||
b_ventaabordo.Visible = False
|
||||
|
||||
CallSubDelayed(Tracker, "Track")
|
||||
CallSubDelayed(Tracker, "StartFLPSmall")
|
||||
If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
|
||||
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
|
||||
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
|
||||
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
||||
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Sub GPS_LocationChanged (Location1 As Location)
|
||||
@@ -503,7 +517,7 @@ Sub GPS_LocationChanged (Location1 As Location)
|
||||
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)
|
||||
Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps)
|
||||
End If
|
||||
|
||||
Dim l1, l2 As Location
|
||||
@@ -518,13 +532,21 @@ Sub GPS_LocationChanged (Location1 As Location)
|
||||
'now we need the distance between our location and the target location
|
||||
distance = l1.DistanceTo(l2) 'the result is in meter
|
||||
gest.Visible = True
|
||||
' If distance < 100 Then
|
||||
If distance < 50 Then
|
||||
LA_GEO.TextColor = Colors.Blue
|
||||
Tels.Visible = True
|
||||
gest.Visible = True
|
||||
' Else
|
||||
' LA_GEO.TextColor = Colors.Red
|
||||
' End If
|
||||
bitacora.p_transparenteInicioFin2.Visible = True
|
||||
bitacora.b_Inicio_Fin_venta2.Visible = True
|
||||
b_ventaabordo.Visible = True
|
||||
Else
|
||||
Tels.Visible = False
|
||||
gest.Visible = False
|
||||
bitacora.p_transparenteInicioFin2.Visible = False
|
||||
bitacora.b_Inicio_Fin_venta2.Visible = False
|
||||
b_ventaabordo.Visible = False
|
||||
LA_GEO.TextColor = Colors.Red
|
||||
End If
|
||||
LA_GEO.Text= $"$1.2{distance/1000} kms"$
|
||||
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))
|
||||
@@ -536,6 +558,8 @@ Sub ListView1_ItemLongClick (Position As Int, Value As Object)
|
||||
End Sub
|
||||
|
||||
Sub gest_Click
|
||||
Starter.BanderaActualizar = "1"
|
||||
Log("---------> Estoy en boton 24HRS:"&Starter.BanderaActualizar)
|
||||
If la_cuenta.Text = "0" Then
|
||||
B4XPages.MainPage.tipo_venta = "ABORDO"
|
||||
Else If la_cuenta.Text = "1" Then
|
||||
@@ -543,7 +567,7 @@ Sub gest_Click
|
||||
Else
|
||||
B4XPages.MainPage.tipo_venta = "PREVENTA_24"
|
||||
End If
|
||||
|
||||
' c = B4XPages.MainPage.skmt.ExecQuery($"SELECT * FROM "$)
|
||||
'Buscamos en el historial de cuestionarios si el cliente ya tiene cuestionario contestado.
|
||||
' Private hc As Cursor = Starter.skmt.ExecQuery($"select count(HC_CLIENTE) as cuantos from HIST_CUESTIONARIO where HC_CLIENTE = '${Subs.traeCliente}'"$)
|
||||
' hc.Position = 0
|
||||
@@ -1052,6 +1076,18 @@ Sub imprime_preventa
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
c.Close
|
||||
|
||||
Dim tel As String = ""
|
||||
Dim t As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'TELEFONO'")
|
||||
If t.RowCount > 0 Then
|
||||
t.Position = 0
|
||||
tel = t.GetString("CAT_VA_VALOR")
|
||||
End If
|
||||
t.Close
|
||||
|
||||
Dim IMEI_BASE As String = Starter.IMEI_BASE
|
||||
Log("IMEI_BASE desde otra clase: " & IMEI_BASE)
|
||||
|
||||
ProgressDialogShow("Imprimiendo, un momento ...")
|
||||
Printer1.DisConnect
|
||||
If Not(Printer1.IsConnected) Then
|
||||
@@ -1083,10 +1119,11 @@ Sub imprime_preventa
|
||||
TAMANO = 0
|
||||
ESPACIO = 22
|
||||
BLANCO = " "
|
||||
Printer1.WriteString("mazapa Distribuciones" & CRLF)
|
||||
Printer1.WriteString("Compania Logistica Mazapa." & CRLF)
|
||||
Printer1.WriteString(sDate & CRLF)
|
||||
Printer1.WriteString(sTime & CRLF)
|
||||
Printer1.WriteString("Vendedor:" & usuario & CRLF)
|
||||
Printer1.WriteString("Tel vendedor:" & tel & CRLF)
|
||||
Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF)
|
||||
Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF)
|
||||
Printer1.WriteString("Calle: " & la_Calle.Text & CRLF)
|
||||
@@ -1098,7 +1135,7 @@ Sub imprime_preventa
|
||||
Printer1.WriteString("------PREVENTA A CREDITO------" & CRLF)
|
||||
End If
|
||||
If c.RowCount > 0 Then
|
||||
Printer1.WriteString("-----------PREVENTA-----------" & CRLF)
|
||||
Printer1.WriteString("--------PREVENTA_24--------" & CRLF)
|
||||
Printer1.WriteString("Cant. Precio Importe" & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
s=skmt.ExecQuery2("select PE_BCAJAS,PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_FOLIO = ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("PREVENTA_24"))
|
||||
@@ -1228,6 +1265,9 @@ Sub imprime_preventa
|
||||
Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF)
|
||||
Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
|
||||
Printer1.WriteString("--------INFORMATIVO-----------" & CRLF)
|
||||
Printer1.WriteString("-POR FAVOR REVISE SU PEDIDO,--" & CRLF)
|
||||
Printer1.WriteString("-UNA VEZ REALIZADA LA ENTREGA-" & CRLF)
|
||||
Printer1.WriteString("NO HAY CAMBIOS NI DEVOLUCIONES" & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
@@ -1252,6 +1292,15 @@ Sub imprime_venta
|
||||
sDate=DateTime.Date(DateTime.Now)
|
||||
sTime=DateTime.Time(DateTime.Now)
|
||||
c.Close
|
||||
|
||||
Dim tel As String = ""
|
||||
Dim t As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'TELEFONO'")
|
||||
If t.RowCount > 0 Then
|
||||
t.Position = 0
|
||||
tel = t.GetString("CAT_VA_VALOR")
|
||||
End If
|
||||
t.Close
|
||||
|
||||
' c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION =?", Array As String ("SUCURSAL"))
|
||||
' c.Position = 0
|
||||
' sucursal = c.GetString("CAT_VA_VALOR")
|
||||
@@ -1306,11 +1355,12 @@ Sub imprime_venta
|
||||
' Printer1.Justify = 1
|
||||
'printer.Initialize(cmp20.OutputStream)
|
||||
' Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF)
|
||||
Printer1.WriteString("mazapa Distribuciones" & CRLF)
|
||||
Printer1.WriteString("Compania Logistica Mazapa." & CRLF)
|
||||
' Printer1.WriteString(sucursal & CRLF)
|
||||
Printer1.WriteString(sDate & CRLF)
|
||||
Printer1.WriteString(sTime & CRLF)
|
||||
Printer1.WriteString("Vendedor:" & usuario & CRLF)
|
||||
Printer1.WriteString("Tel vendedor:" & tel & CRLF)
|
||||
Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF)
|
||||
Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF)
|
||||
Printer1.WriteString("Calle: " & la_Calle.Text & CRLF)
|
||||
@@ -1321,7 +1371,7 @@ Sub imprime_venta
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
c = skmt.ExecQuery2("SELECT * FROM PEDIDO WHERE PE_FOLIO = ?",Array As String("PREVENTA_48"))
|
||||
If c.RowCount > 0 Then
|
||||
Printer1.WriteString("-----------VENTA-----------" & CRLF)
|
||||
Printer1.WriteString("--------PREVENTA_48--------" & CRLF)
|
||||
|
||||
' Printer1.WriteString("--------------------------------" & CRLF)
|
||||
Printer1.WriteString("Cant. Precio Importe" & CRLF)
|
||||
@@ -1543,18 +1593,38 @@ Sub imprime_venta
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
End If
|
||||
s.Close
|
||||
' Printer1.Justify = 0
|
||||
s=skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_FOLIO = ?", Array As String("PREVENTA_48"))
|
||||
s.Position =0
|
||||
' If s.GetString("TOTAL") - s.GetString("TOTAL2") <> 0 Then
|
||||
' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL")))
|
||||
' End If
|
||||
Printer1.WriteString("Total venta: $" & NumberFormat( s.GetString("TOTAL"),0,2) & CRLF)
|
||||
|
||||
s = skmt.ExecQuery($"SELECT SUM(CAT_GP_PRECIO * PE_CANT) As SUBTOTAL FROM PEDIDO P INNER JOIN CAT_GUNAPROD C ON P.PE_PROID = C.CAT_GP_ID And P.PE_CEDIS = P.PE_PROID WHERE PE_CLIENTE IN (Select cuenta FROM CUENTAA) And PE_FOLIO = 'PREVENTA_48'"$)
|
||||
Dim subtotal As Double
|
||||
s.Position = 0
|
||||
subtotal = s.GetDouble("SUBTOTAL")
|
||||
s.Close
|
||||
c= skmt.ExecQuery2("select sum(PE_CANT) as PC_NOART from PEDIDO where PE_CLIENTE in (Select CUENTA from cuentaa) AND PE_PROID NOT IN (SELECT CAT_PA_ID FROM PROMOS_COMP ) AND PE_FOLIO = ?", Array As String("PREVENTA_48"))
|
||||
C.Position=0
|
||||
Printer1.WriteString("Total art. venta: " &NumberFormat( c.GetString("PC_NOART"),0,0) & CRLF)
|
||||
|
||||
Dim subtot As Cursor = skmt.ExecQuery("SELECT SUM(P.PE_COSTO_TOT) As TOTAL_SIN_PROMO FROM PEDIDO P INNER JOIN CAT_GUNAPROD C ON P.PE_PROID = C.CAT_GP_ID WHERE P.PE_CLIENTE IN (Select cuenta FROM CUENTAA) And P.PE_FOLIO = 'PREVENTA_48' And PE_CEDIS Not IN (Select DISTINCT PE_PROID FROM PEDIDO)")
|
||||
subtot.Position = 0
|
||||
subtotal = subtotal + subtot.GetDouble("TOTAL_SIN_PROMO")
|
||||
subtot.Close
|
||||
|
||||
subtotal = Round2(subtotal, 2)
|
||||
Printer1.WriteString("Subtotal: $" & NumberFormat(subtotal, 0, 2) & CRLF)
|
||||
|
||||
' Calcular el descuento
|
||||
Dim descuento As Double
|
||||
s = skmt.ExecQuery2("SELECT SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_FOLIO = ?", Array As String("PREVENTA_48"))
|
||||
s.Position = 0
|
||||
Dim total As Double = s.GetDouble("TOTAL")
|
||||
descuento = subtotal - total
|
||||
descuento = Round2(descuento, 2) ' Redondear descuento con precisión de 2 decimales
|
||||
s.Close
|
||||
|
||||
Printer1.WriteString("Descuento: $" & NumberFormat(descuento, 0, 2) & CRLF)
|
||||
|
||||
' Mostrar el total de la preventa
|
||||
Printer1.WriteString("Total preventa: $" & NumberFormat(total, 0, 2) & CRLF)
|
||||
|
||||
' Contar los artículos en preventa
|
||||
Dim c As Cursor = skmt.ExecQuery2("SELECT SUM(PE_CANT) AS PC_NOART FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) AND PE_PROID NOT IN (SELECT CAT_PA_ID FROM PROMOS_COMP) AND PE_FOLIO = ?", Array As String("PREVENTA_48"))
|
||||
c.Position = 0
|
||||
Printer1.WriteString("Total art. preventa: " & NumberFormat(c.GetDouble("PC_NOART"), 0, 0) & CRLF)
|
||||
c.Close
|
||||
|
||||
' Printer1.WriteString(" " & CRLF)
|
||||
@@ -1583,6 +1653,9 @@ Sub imprime_venta
|
||||
Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF)
|
||||
Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
|
||||
Printer1.WriteString("--------INFORMATIVO-----------" & CRLF)
|
||||
Printer1.WriteString("-POR FAVOR REVISE SU PEDIDO,--" & CRLF)
|
||||
Printer1.WriteString("-UNA VEZ REALIZADA LA ENTREGA-" & CRLF)
|
||||
Printer1.WriteString("NO HAY CAMBIOS NI DEVOLUCIONES" & CRLF)
|
||||
Printer1.WriteString("------------------------------" & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
Printer1.WriteString(" " & CRLF)
|
||||
@@ -1985,7 +2058,7 @@ Sub mandapiezas
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Sub JobDone(Job As HttpJob)
|
||||
Sub JobDone(Job As HttpJob)
|
||||
' Log(Job.Success)
|
||||
If Job.Success = False Then
|
||||
' ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
||||
@@ -2346,8 +2419,6 @@ Private Sub b_ventaabordo_Click
|
||||
c=B4XPages.MainPage.skmt.ExecQuery2("Select * From CAT_GUNAPROD2 where cat_gp_tipo <> ? " , Array As String ("PROMOS"))
|
||||
If c.RowCount > 0 Then
|
||||
|
||||
|
||||
|
||||
B4XPages.MainPage.tipo_venta = "PREVENTA_48"
|
||||
' If B4XPages.MainPage.productos.clv_prods_ll.Size = 0 Then
|
||||
' B4XPages.MainPage.productos.LlenaProdsLL(Null)
|
||||
|
||||
Reference in New Issue
Block a user