mirror of
https://github.com/KeymonSoft/Mariana.git
synced 2026-04-17 21:06:16 +00:00
7/9/20 - Promos, prods fijos y variables
Corrige el error de que, si el producto fijo en una promo también esta en los variables, el variable tomaba el precio del fijo.
This commit is contained in:
@@ -110,6 +110,7 @@ Sub muestraPromo(promo As String, cliente As String)
|
||||
'Ponemos el texto en las etiquetas de la cantidad de productos.
|
||||
' Dim pf As List = mp.Get("prodsFijos")
|
||||
Dim pv As List = mp.Get("prodsVariables")
|
||||
Private listaPreciosPV As List = mp.Get("prodsVariablesPrecios")
|
||||
If thisLog Then Log(mp)
|
||||
tpf = 0
|
||||
For Each pfp As Int In mp.Get("prodsFijosPiezas").As(List)
|
||||
@@ -154,9 +155,11 @@ Sub muestraPromo(promo As String, cliente As String)
|
||||
' jpeg = c2.GetBlob("CAT_GP_IMG")
|
||||
' ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length)
|
||||
' bmp.Initialize2(ins)
|
||||
Private indicePV = pv.IndexOf(p)
|
||||
Private estePrecio = listaPreciosPV.Get(indicePV)
|
||||
Private thisProd As Map = prodsPromo.Get(p)
|
||||
If thisLog Then Log(thisProd)
|
||||
clv_prodsVariabes.Add(CreateListItem(Subs.traeProdNombre(p)&CRLF&"Hay " & invDispPromo.Get(p) & " $" & thisProd.Get("precio"), thisProd.Get("precio"), invDispPromo.Get(p), clv_prodsVariabes.AsView.Width, 50dip, Null, p), p)
|
||||
clv_prodsVariabes.Add(CreateListItem(Subs.traeProdNombre(p)&CRLF&"Hay " & invDispPromo.Get(p) & " $" & estePrecio, estePrecio, invDispPromo.Get(p), clv_prodsVariabes.AsView.Width, 50dip, Null, p), p)
|
||||
End If
|
||||
Next
|
||||
b_terminar1.Visible = False
|
||||
|
||||
@@ -749,7 +749,7 @@ Module9=C_NoVenta
|
||||
NumberOfFiles=347
|
||||
NumberOfLibraries=29
|
||||
NumberOfModules=22
|
||||
Version=12.5
|
||||
Version=12.2
|
||||
@EndOfDesignText@
|
||||
#Region Project Attributes
|
||||
#ApplicationLabel: Mariana
|
||||
|
||||
@@ -828,12 +828,13 @@ Sub traePromo(promo As String, cliente As String) As Map
|
||||
Private c As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select * from promos_comp where cat_pa_id = '"& promo&"'") 'Obtenemos las el maximo de promocioones a otorgar.
|
||||
Private siHistorico As String = 0
|
||||
Private promoMap As Map
|
||||
Private prodsFijos, prodsFijosPrecios, prodsFijosPiezas, prodsVariables As List
|
||||
Private prodsFijos, prodsFijosPrecios, prodsFijosPiezas, prodsVariables, prodsVariablesPrecios As List
|
||||
promoMap.Initialize
|
||||
prodsFijos.Initialize
|
||||
prodsFijosPrecios.Initialize
|
||||
prodsFijosPiezas.Initialize
|
||||
prodsVariables.Initialize
|
||||
prodsVariablesPrecios.Initialize
|
||||
c.Position = 0
|
||||
If c.RowCount > 0 Then promoMap = CreateMap("id":promo, "maxXcliente":c.GetString("CAT_PA_MAXPROMCLIE"), "maxRecurrente":c.GetString("CAT_PA_MAXPROMREC"), "maxPromos":c.GetString("CAT_PA_MAXPROM"))
|
||||
c = B4XPages.MainPage.skmt.ExecQuery("Select count(*) as hist from HIST_PROMOS where HP_CLIENTE = '"& cliente & "' and HP_CODIGO_PROMOCION = '" & promo & "'") 'Revisamos si hay historico de la promoción.
|
||||
@@ -855,7 +856,10 @@ Sub traePromo(promo As String, cliente As String) As Map
|
||||
prodsFijosPrecios.Add(c.GetString("CAT_DP_PRECIO"))
|
||||
prodsFijosPiezas.Add(c.GetString("CAT_DP_PZAS"))
|
||||
End If
|
||||
If c.GetString("CAT_DP_TIPO") = "1" Then prodsVariables.Add(c.GetString("CAT_DP_IDPROD"))
|
||||
If c.GetString("CAT_DP_TIPO") = "1" Then
|
||||
prodsVariables.Add(c.GetString("CAT_DP_IDPROD"))
|
||||
prodsVariablesPrecios.Add(c.GetString("CAT_DP_PRECIO"))
|
||||
End If
|
||||
' Log($"id:${c.GetString("CAT_DP_IDPROD")}, tipo:${c.GetString("CAT_DP_TIPO")}"$)
|
||||
Next
|
||||
promoMap.Put("productos", prods) 'Mapa con los productos de la promocion (id, precio, almacen, tipo, piezas, etc.)
|
||||
@@ -866,6 +870,7 @@ Sub traePromo(promo As String, cliente As String) As Map
|
||||
promoMap.Put("prodsFijosPrecios", prodsFijosPrecios)
|
||||
promoMap.Put("prodsFijosPiezas", prodsFijosPiezas)
|
||||
promoMap.Put("prodsVariablesCant", prodsVariables.Size)
|
||||
promoMap.Put("prodsVariablesPrecios", prodsVariablesPrecios)
|
||||
promoMap.Put("resultado", "ok")
|
||||
Else
|
||||
promoMap.Put("resultado", "No hay datos de la promoción.")
|
||||
|
||||
Reference in New Issue
Block a user