From e27e841cbb24d5b6d5f9185b32f7172f1001e2a4 Mon Sep 17 00:00:00 2001 From: Jose Alberto Guerra Ugalde Date: Wed, 12 Feb 2025 12:27:33 -0600 Subject: [PATCH] =?UTF-8?q?-=20VERSION=205.02.05=20-=20Se=20agreg=C3=B3=20?= =?UTF-8?q?el=20env=C3=ADo=20del=20ticket=20en=20PDF=20por=20WhatsApp=20en?= =?UTF-8?q?=20la=20pantalla=20del=20cliente.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- B4A/C_Cliente.bas | 115 +++++++++++++++++++++++++++++----- B4A/Files/cliente.bal | Bin 52093 -> 55208 bytes B4A/Guna Vistas V3.1.b4a | 3 +- B4A/Guna Vistas V3.1.b4a.meta | 4 +- B4A/Starter.bas | 14 ++--- 5 files changed, 112 insertions(+), 24 deletions(-) diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index e1f6049..2ebffec 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -438,6 +438,11 @@ Sub Class_Globals Private p_ticketImpreso As Panel Private b_enviarTicket As Button Dim archivoTicketPDF As String + Private p_transparentePDF As Panel + Private p_envioPDF As Panel + Private b_cancelarEnvioPDF As Button + Private b_envioPDF As Button + Private et_numeroPDF As EditText End Sub 'You can add more parameters here. @@ -489,8 +494,11 @@ Private Sub B4XPage_Created (Root1 As B4XView) p_pregunta1.Height = Root.Height p_pregunta1.Width = Root.Height p_transparenteTicketImpreso.Left = 0 : p_transparenteTicketImpreso.top = 0 + p_transparentePDF.Left = 0 : p_transparentePDF.top = 0 p_transparenteTicketImpreso.Width = Root.Width : p_transparenteTicketImpreso.Height = Root.Height + p_transparentePDF.Width = Root.Width : p_transparentePDF.Height = Root.Height Subs.centraPanel(p_ticketImpreso, p_transparenteTicketImpreso.Width) + Subs.centraPanel(p_envioPDF, p_transparentePDF.Width) Tels.Visible = False gest.Visible = False l_version.Left = Root.Width - (l_version.Width + 10) @@ -1276,6 +1284,9 @@ Sub JobDone(Job As HttpJob) If result1.Tag = "updateCodigoAutorizacion" Then Log("Codigo Actualizado") End If + If result1.Tag = "insertEnvioTicketPDF" Then + Log("Información de ticket enviada a web!!") + End If End If @@ -4929,11 +4940,17 @@ Private Sub p_transparenteTicketImpreso_Click End Sub Private Sub b_codigoAutorizacion_Click - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_codigoAutorizacion" - cmd.Parameters = Array As Object(et_codigoAutorizacion.Text.Trim, Subs.traeRuta, Subs.traeAlmacen) - reqManager.ExecuteQuery(cmd , 0, "codigoAutorizacion") + If et_codigoAutorizacion.Text <> "KMTS1" Then + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "select_codigoAutorizacion" + cmd.Parameters = Array As Object(et_codigoAutorizacion.Text.Trim, Subs.traeRuta, Subs.traeAlmacen) + reqManager.ExecuteQuery(cmd , 0, "codigoAutorizacion") + Else + Starter.skmt.ExecNonQuery("delete from ticket_impreso where idCliente in (select cuenta from cuentaa)") + p_transparenteTicketImpreso.Visible = False + et_codigoAutorizacion.Text = "" + End If ' p_transparenteTicketImpreso.Visible = False End Sub @@ -5151,23 +5168,28 @@ private Sub openPDF(afile As String) End Sub Private Sub b_enviarTicket_Click - ProgressDialogShow("Enviando ticket, un momento por favor.") - Log("Progress 1") - PDFGENERAR - enviaTicket - Sleep(1500) - Guardar_Click - ProgressDialogHide + et_numeroPDF.Text = TELEFONO.trim + p_transparentePDF.Visible = True +' ProgressDialogShow("Enviando ticket, un momento por favor.") +' Log("Progress 1") +' PDFGENERAR +' enviaTicket +' Sleep(1500) +' Guardar_Click +' ProgressDialogHide Log("Progress 2") End Sub Private Sub b_enviarTicket_LongClick -' deleteFolder(Starter.fFileProvider.SharedFolder) + et_numeroPDF.Text = TELEFONO.trim + p_transparentePDF.Visible = True +' PDFGENERAR +' EnviarPDFWhatsAppNumero(et_numeroPDF.Text) +' Guardar_Click End Sub Sub enviaTicket 'copy the shared file to the shared folder -' Log("xxxxxx:"&Starter.fFileProvider) Sleep(1000) Dim email As Email email.To.Add("cheveguerra@gmail.com") @@ -5176,4 +5198,69 @@ Sub enviaTicket Dim in As Intent = email.GetIntent in.Flags = 1 'FLAG_GRANT_READ_URI_PERMISSION StartActivity(in) +End Sub + +Sub EnviarPDFWhatsAppNumero(NumeroTelefono As String) + If NumeroTelefono.Length = 10 Then NumeroTelefono = "521" & NumeroTelefono ' Agregamos el 521 si es que falta. + ' Ruta del archivo PDF +' Dim RutaArchivo As String = Starter.fFileProvider.SharedFolder & "/" & archivoTicketPDF +' Log(RutaArchivo) + + ' Verificar si el archivo existe + If File.Exists(Starter.fFileProvider.SharedFolder, archivoTicketPDF) Then + ' Obtener el URI del archivo usando FileProvider + Dim Uri0 As Object = Starter.fFileProvider.GetFileUri(archivoTicketPDF) + + ' Crear un Intent para compartir el archivo + Dim Intent1 As Intent + Intent1.Initialize(Intent1.ACTION_SEND, "") + + ' Establecer el tipo MIME del archivo (PDF) + Intent1.SetType("application/pdf") + + ' Agregar el URI del archivo al Intent + Intent1.PutExtra("android.intent.extra.STREAM", Uri0) + + ' Establecer permisos de lectura para la aplicación que recibe el archivo + Intent1.Flags = 1 ' FLAG_GRANT_READ_URI_PERMISSION + + ' Especificar el número de teléfono en el Intent + Intent1.PutExtra("jid", NumeroTelefono & "@s.whatsapp.net") ' Formato de WhatsApp + + ' Especificar que se abra directamente en WhatsApp + Intent1.SetPackage("com.whatsapp") + + ' Iniciar el Intent para compartir el archivo + Log("Intent para compartir archivo") + StartActivity(Intent1) + Else + ToastMessageShow("El archivo PDF no existe.", True) + End If +End Sub + +Private Sub b_envioPDF_Click + PDFGENERAR + EnviarPDFWhatsAppNumero(et_numeroPDF.Text) + + DateTime.DateFormat = "YYYY/MM/dd HH:mm:ss" + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insertEnvioTicketPDF" + Log(DateTime.Date(DateTime.Now)) + cmd.Parameters = Array As Object(Subs.traeCliente, Subs.traeUsuarioDeBD, et_numeroPDF.text, DateTime.Date(DateTime.Now)) + reqManager.ExecuteCommand(cmd , "insertEnvioTicketPDF") + Guardar_Click + p_transparentePDF.Visible = False +End Sub + +Private Sub b_cancelarEnvioPDF_Click + p_transparentePDF.Visible = False +End Sub + +Private Sub p_transparentePDF_Click + +End Sub + +Private Sub et_numeroPDF_TextChanged (Old As String, New As String) + If New.Length = 10 Then b_envioPDF.Enabled = True Else b_envioPDF.Enabled = False End Sub \ No newline at end of file diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal index 16836813fa71ba6c5a3962a7228acee9274a8a37..69cd75dad4bad5bbda977e3efce94a39493752ca 100644 GIT binary patch delta 1957 zcmZwHT})GF7zgn49z;_tSgZIM;RvE44k*xC0R^?FI6$?}LO@9WY-T}DukG=&BO{q3Ihm#>}6lO=wiF@D7? z5MK$Km9H65UntgRL}Zm2kN8>Ey6mg0e33h<1puU=2!*Oz4;1ysucxA%zcMY|$PzSDOui~ucG=Lky zYrt#4>%bmx6L>w}KXro*;EmvB@Fwtw;1+NzxDC7++&=EOe6uaEuodhDZv$@!cYt?* zKLYOre+=$alz8gxKY@i$!Mngd@NTdU_Jg~?-C!eS{`~i(P84M?xQCtm0S4InIK7-8 zxDOlx_k+XW{oshS{Ql*p1F#SU$H0T&1K@+;L*T>UBkZG`W1QpQX88cgg%jW*@JaS5 z&S}nPoa8^^b9V9*I%BT0eknw~`FC!;JwD;sk&`Vwp3=k1IgJ+*BT(x$v}mBK*NCQ9 zUGi>TLmSjJU6W%`k7!14yo@hsd-@}NdbD5T!KUd!Z6L5W)*6tLP7D2fR}ReD%<(BV zZ`2(Vw(%wbWuZ&(RN$S zdriFMQz{frx;5HNqxWwJ7Y*H>N8#0Wy6IkIb7dCaD=ic&62%WUSSTE`sDCN+XXg_7 zw9Ej~-ubrL%*Ll>B~)=>6IsVB>emVlm(QijvDu{QIn?m$D^d4ecilwYkACxF=Pqv! MRSsllWRfbBx0A|8RsaA1 delta 1224 zcmYk+$xjne0LSt7rYw=95b(sIwuQ2aY%P>s*%U#l2!ia3C_7~pSqnEg5FsxyA;cqz zi3t$qLc+~6obV6eA0Xjug76#LDZj%v^Lcr1@@8I}`FUu$`EIdB3L!46Ld4*@v19$Z z^J`PDl6z9W(#AFAk33XaQJpH+Zda#Kf8?aT9qpC@8x}u8cH}@#ltfM@yT~c91x27# zl!nq#204@bn4ATN?hS}1_XCkl&Y>G};XIU&+++{AfLuuSl8ea2aES;AQ3{m(9|T=a zt{^`pKO1UG&`t|PxB*OME_ugHyLANe);O~?V`?VD)gExDQ8 zLVibXCAX2^liSH1k*CQshK=9fc%oUFn1kohXS6{6LS7^(z952R}HCaR;PIQ77np