diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index 4f13402..c22df1e 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -18,6 +18,9 @@ Version=9.85 '###################### PUSH TORTOISE GIT ######################################################### 'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=TortoiseGitProc&Args=/command:commit&Args=/path:"./../../"&Args=/closeonend:2 '########################################################################################################### + '###################### PUSH TORTOISE GIT CON TAG ################################################## + 'Ctrl + clic para Git: ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=-ExecutionPolicy&Args=Bypass&Args=-File&Args=..\_git_tag.ps1&Args=%22%PROJECT%%22&Args=%22%PROJECT_NAME%%22 + '########################################################################################################### #End Region 'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=github&Args=..\..\ diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index 111af2b..f46fb4b 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -531,29 +531,27 @@ Sub GPS_LocationChanged (Location1 As Location) If m_lat.Length < 5 Then Else - + 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) - 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) - - 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 - distance = l1.DistanceTo(l2) 'the result is in meter - gest.Visible = True - If distance < 500000000000000000000000000000000000000000000000000 Then - LA_GEO.TextColor = Colors.Blue - Tels.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 + distance = l1.DistanceTo(l2) 'the result is in meter gest.Visible = True - bitacora.inicioFin + If distance < 50 Then + LA_GEO.TextColor = Colors.Blue + Tels.Visible = True + gest.Visible = True + bitacora.inicioFin ' bitacora.p_transparenteInicioFin2.Visible = True ' bitacora.b_Inicio_Fin_venta2.Visible = True - b_ventaabordo.Visible = True - Else + b_ventaabordo.Visible = True + Else Tels.Visible = False gest.Visible = False bitacora.p_transparenteInicioFin2.Visible = False diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index e8aca0f..365159e 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -1049,8 +1049,8 @@ Sub cargar_Click reqManager.ExecuteQuery(cmd , 0, "detallepaq") cmd.Initialize - cmd.Name = "select_cat_clientes_mazapa" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) + cmd.Name = "select_cat_clientes_mazapa2" + cmd.Parameters = Array As Object(e_ruta.text,e_ruta.text, ALMACEN,e_ruta.text,e_ruta.text) reqManager.ExecuteQuery(cmd , 0, "kmt_datos") cmd.Initialize diff --git a/B4A/MAZAPA.b4a b/B4A/MAZAPA.b4a index 5918dae..1fb8f0c 100644 --- a/B4A/MAZAPA.b4a +++ b/B4A/MAZAPA.b4a @@ -211,7 +211,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Mazapa #VersionCode: 1 - #VersionName: 5.07.25 S/G + #VersionName: 6.01.06 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: portrait #CanInstallToExternalStorage: False diff --git a/B4A/MAZAPA.b4a.meta b/B4A/MAZAPA.b4a.meta index bdbf672..cdcf198 100644 --- a/B4A/MAZAPA.b4a.meta +++ b/B4A/MAZAPA.b4a.meta @@ -94,6 +94,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=Subs,traeMaxPromos,1147,0,C_Principal,connecta_Click,2192,0,C_Principal,cargar_Click,1031,0,B4XMainPage,B4XPage_Created,234,0,C_Productos,Class_Globals,1,0,C_Productos,B4XPage_Appear,179,2,Subs,traePromosVendidas,1174,0,Subs,procesaPromocion,1197,1,C_Principal,JobDone,2101,1,C_Cliente,GPS_LocationChanged,541,0,Main,Activity_KeyPress,40,0 +NavigationStack=C_Productos,B4XPage_Appear,188,0,C_Productos,PCLV_AddProds,274,0,C_Productos,lv_catalogos_ItemClick,282,6,C_Productos,LlenaProdsLL,1287,0,C_Productos,Busca_TextChanged,1287,0,C_Principal,Class_Globals,0,0,C_Principal,Subir_Click,844,0,C_Principal,cargar_Click,1050,0,C_Principal,JobDone,1296,0,C_Cliente,GPS_LocationChanged,539,0 SelectedBuild=0 -VisibleModules=29,2,14,5,6,18,4,21,15,10 +VisibleModules=29,2,14,5,6,18,4,21,15 diff --git a/B4A/_git_tag.ps1 b/B4A/_git_tag.ps1 new file mode 100644 index 0000000..89e7105 --- /dev/null +++ b/B4A/_git_tag.ps1 @@ -0,0 +1,110 @@ +# --- SCRIPT DE AUTODESCUBRIMIENTO CON GUI MEJORADA --- + +# Cargar librería visual +Add-Type -AssemblyName System.Windows.Forms +Add-Type -AssemblyName System.Drawing + +# 1. AUTODESCUBRIMIENTO +$projectPath = $PSScriptRoot +Write-Host "Ruta: $projectPath" + +$b4aFileItem = Get-ChildItem -Path $projectPath -Filter "*.b4a" | Select-Object -First 1 + +if (-Not $b4aFileItem) { + [System.Windows.Forms.MessageBox]::Show("No hay archivo .b4a en esta carpeta.", "Error", "OK", "Error") + return +} + +$b4aFile = $b4aFileItem.FullName +$projectName = $b4aFileItem.BaseName +Write-Host "Proyecto: $projectName" + +# 2. LIMPIEZA +# $objectsPath = Join-Path $projectPath "Objects" +# if (Test-Path $objectsPath) { + # Write-Host "Limpiando Objects..." + # Remove-Item -Path "$objectsPath\*" -Recurse -Force -ErrorAction SilentlyContinue +# } + +# 3. LEER VERSIÓN +$versionLine = Get-Content $b4aFile | Select-String "#VersionName:" +if (-Not $versionLine) { Write-Error "Falta #VersionName"; return } +$version = ($versionLine -split ":")[1].Trim() +$tagName = "v$version" + +Set-Location $projectPath + +# 4. COMMIT +$oldCommit = git rev-parse HEAD + +Write-Host "----------------------------------------" +Write-Host "Versión: $version" +Write-Host "Abriendo TortoiseGit..." + +# Argumentos limpios +$pathArg = '/path:"{0}"' -f $projectPath +$msgArg = '/logmsg:"VERSION {0}"' -f $version +$cmdArg = "/command:commit" + +$process = Start-Process "TortoiseGitProc.exe" -ArgumentList $cmdArg, $pathArg, $msgArg -Wait -PassThru + +$newCommit = git rev-parse HEAD + +# 5. VALIDACIÓN +if ($oldCommit -eq $newCommit) { + Write-Warning "Commit cancelado." + git tag -d $tagName 2>$null # Borra tag local previo si existe para actualizarlo al nuevo commit + return +} + +Write-Host ">> Commit detectado." + +# 6. GESTIÓN DE TAGS (VISUAL TOPMOST) +Write-Host "git ls-remote --tags origin $tagName" +$remoteTagInfo = git ls-remote --tags origin $tagName + +if ($remoteTagInfo) { + # --- TRUCO PARA QUE LA VENTANA SALGA AL FRENTE --- + # Creamos un formulario invisible que esté "Siempre Visible" (TopMost) + Write-Host "Recibimos remoteTagInfo" + $topForm = New-Object System.Windows.Forms.Form + $topForm.TopMost = $true + $topForm.Opacity = 0 # Invisible + $topForm.ShowInTaskbar = $false + $topForm.StartPosition = "CenterScreen" + $topForm.Show() + $topForm.Activate() + + [System.Console]::Beep(1000, 200) + [System.Console]::Beep(1000, 200) + + $msgBody = "El tag '$tagName' YA EXISTE en GitHub.`n`nDeseas SOBRESCRIBIRLO?`n`nSi = Borrar anterior y actualizar (Force Push).`nNo = Subir solo codigo (mantener tag viejo)." + $msgTitle = "⚠️ Conflicto de Versiones - $projectName" + + # El mensaje ahora es "hijo" del formulario invisible, heredando su propiedad TopMost + Write-Host "Preguntamos que hacer con el tag" + $respuesta = [System.Windows.Forms.MessageBox]::Show($topForm, $msgBody, $msgTitle, "YesNo", "Warning") + + $topForm.Dispose() # Limpiamos el formulario invisible + + if ($respuesta -eq "Yes") { + Write-Host "Sobrescribiendo..." + git tag -d $tagName 2>$null + git tag -a $tagName -m "Release version $version (Updated)" + + git push origin + git push origin $tagName --force + Write-Host ">> Tag actualizado (Force Push)." + } else { + Write-Host "Conservando tag anterior..." + git push origin + Write-Host ">> Código subido." + } +} else { + # Tag Nuevo + git tag -a $tagName -m "Release version $version" + git push origin --follow-tags + Write-Host ">> Versión publicada." +} + +Write-Host "----------------------------------------" \ No newline at end of file diff --git a/B4A/_juntaBas.ps1 b/B4A/_juntaBas.ps1 new file mode 100644 index 0000000..2fd691d --- /dev/null +++ b/B4A/_juntaBas.ps1 @@ -0,0 +1,28 @@ +# SCRIPT: _juntaBas.ps1 - Versión Saneada y Optimizada para LLM +$OutputFile="_CODIGO_COMPLETO_PARA_LLM.txt" + +# Eliminar el archivo anterior si existe (IMPORTANTE) +Remove-Item -Path $OutputFile -ErrorAction SilentlyContinue + +Write-Host "Iniciando fusion para LLM..." + +# Itera sobre los archivos .bas, .b4a, .b4j +Get-ChildItem -Path ".\*" -Include @("*.bas", "*.b4a", "*.b4j") | ForEach-Object { + $currentFile = $_.Name + Write-Host "Procesando: $currentFile" + + # --- ENCABEZADO ESTRUCTURADO Y COMENTADO EN B4X (Agregado al archivo) --- + Add-Content -Path $OutputFile -Value "`n'======================================================================================" + Add-Content -Path $OutputFile -Value $"// ARCHIVO_INICIO: ${currentFile}" + Add-Content -Path $OutputFile -Value "'======================================================================================`n" + + # Vuelca el contenido del archivo + Get-Content -Encoding UTF8 -Path $_.FullName -Raw | Add-Content -Path $OutputFile + + # --- DELIMITADOR DE FIN DE ARCHIVO (Agregado al archivo) --- + Add-Content -Path $OutputFile -Value "`n'======================================================================================" + Add-Content -Path $OutputFile -Value $"// ARCHIVO_FIN: ${currentFile}" + Add-Content -Path $OutputFile -Value "'======================================================================================`n" +} + +Write-Host "`nProceso terminado. Se ha creado el archivo: $OutputFile" \ No newline at end of file