--Enviar mensaje de bienvenida whatsapp

This commit is contained in:
2024-10-09 19:15:00 -07:00
parent 8500107a31
commit 0a7ca48dc4
5 changed files with 194 additions and 18 deletions

View File

@@ -2,6 +2,7 @@
Option Strict On
Imports System.Data
Imports System.Net.Http
Imports Extensiones
Imports Microsoft.Reporting.WebForms
@@ -611,6 +612,7 @@ Partial Class Sistemas_UsuarioDetalle
TxtPorcentajeMaximoAutorizacion.Text = ObjUsuario.DtResultados.Rows(0)("PorcentajeMaximoAutorizacion").ToString().ToDecimal().FormatoNumero(2)
TxtDiasVencidos.Text = ObjUsuario.DtResultados.Rows(0)("DiasMaximoAutorizacion").ToString()
TxtTelefono.Text = ObjUsuario.DtResultados.Rows(0)("Celular").ToString()
Else
Alert("El Usuario Solicitado no existe, Revise su búsqueda.", TipoMensaje.MsgAdvertencia)
BtnGuardar.Enabled = False
@@ -858,7 +860,7 @@ Partial Class Sistemas_UsuarioDetalle
'REGISTRA O ACTUALIZA LOS DATOS GENERALES DEL USUARIO
If CveUsuario = -1 Then
CveUsuario = ObjUsuarios.AddUsuario(TxtUsuario.Text.Trim, Encripta(ContraseñaPredeterminada), TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, UsuarioActual.CveUsuario, DdlEmpresa.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, CveAlmacenAsignado:=DdlAlmacenGeneral.SelectedValue.ToEntero, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble, CodigoAcceso:=CodigoAcceso, LimiteCreditoAutorizado:=TxtLimiteAutorizado.Text.ToDecimal(), PorcentajeMaximoAutorizacion:=TxtPorcentajeMaximoAutorizacion.Text.ToDecimal(), DiasMaximoAutorizacion:=TxtDiasVencidos.Text.ToEntero())
CveUsuario = ObjUsuarios.AddUsuario(TxtUsuario.Text.Trim, Encripta(ContraseñaPredeterminada), TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, UsuarioActual.CveUsuario, DdlEmpresa.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, CveAlmacenAsignado:=DdlAlmacenGeneral.SelectedValue.ToEntero, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble, CodigoAcceso:=CodigoAcceso, LimiteCreditoAutorizado:=TxtLimiteAutorizado.Text.ToDecimal(), PorcentajeMaximoAutorizacion:=TxtPorcentajeMaximoAutorizacion.Text.ToDecimal(), DiasMaximoAutorizacion:=TxtDiasVencidos.Text.ToEntero(), Celular:=TxtTelefono.Text.Trim())
EsNuevoUsuario = True
If CveUsuario = -1 Then
TieneError = True
@@ -870,7 +872,7 @@ Partial Class Sistemas_UsuarioDetalle
End If
Next
Else
If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble, CodigoAcceso:=CodigoAcceso, LimiteCreditoAutorizado:=TxtLimiteAutorizado.Text.ToDecimal(), PorcentajeMaximoAutorizacion:=TxtPorcentajeMaximoAutorizacion.Text.ToDecimal(), DiasMaximoAutorizacion:=TxtDiasVencidos.Text.ToEntero()) Then
If Not ObjUsuarios.UpdateUsuario(TxtUsuario.Text.Trim, TxtNombre.Text.Trim, DdlRol.SelectedValue.ToEntero, TxtCorreo.Text.Trim, DdlPersonal.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, ChkCambiarContraseña.Checked, ChkEstatus.Checked, DdlEmpresa.SelectedValue.ToEntero, CveUsuario, DdlAlmacenGeneral.SelectedValue.ToEntero, DdlSubProyectos.SelectedValue.ToEntero, UsuarioActual.CveUsuario, AsignarSubProyecto:=ChkAsignarSubProyecto.Checked, AsignarOC:=ChkAsignarOC.Checked, DescuentoAutorizado:=TxtDescuentoAutorizado.Text.ToDouble, CodigoAcceso:=CodigoAcceso, LimiteCreditoAutorizado:=TxtLimiteAutorizado.Text.ToDecimal(), PorcentajeMaximoAutorizacion:=TxtPorcentajeMaximoAutorizacion.Text.ToDecimal(), DiasMaximoAutorizacion:=TxtDiasVencidos.Text.ToEntero(), Celular:=TxtTelefono.Text.Trim()) Then
TieneError = True
End If
@@ -5013,4 +5015,82 @@ Partial Class Sistemas_UsuarioDetalle
params.Add(New ReportParameter("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
ImprimirPDF("Empresas/Grales/Formatos/BitacoraLogin.rdlc", DtDatos, params, String.Format("BitacoraRegistro-{0}", NowADS().ToDateTime.ToShortDateString))
End Sub
Protected Sub BtnEnviarMensaje_Click(sender As Object, e As EventArgs)
EnviarNotificacionBienvendiaWhatsApp($"52{TxtTelefono.Text}", TxtNombre.Text, "\nFavor de responder el mensaje")
Alert("El mensaje se envio correctamente")
End Sub
'Public Function EnviarNotificacionBienvendiaWhatsApp(NumeroTelefono As String, NombreUsuario As String, Mensaje As String) As Boolean
' Dim RetornoObj As String = "{}"
' Dim Retorno As Boolean = False
' Try
' Dim TokenAutorizacion As String = $"Bearer {WhatsAppToken}"
' Using httpClient = New HttpClient()
' Using request = New HttpRequestMessage(HttpMethod.Post, New Uri("https://graph.facebook.com/v20.0/425866980604901/messages"))
' request.Headers.Add("Authorization", TokenAutorizacion)
' Dim json = New Newtonsoft.Json.Linq.JObject()
' json.Add(New Newtonsoft.Json.Linq.JProperty("messaging_product", "whatsapp"))
' json.Add(New Newtonsoft.Json.Linq.JProperty("to", NumeroTelefono))
' json.Add(New Newtonsoft.Json.Linq.JProperty("type", "template"))
' Dim plantilla As New Newtonsoft.Json.Linq.JObject(
' New Newtonsoft.Json.Linq.JProperty("name", "bienvenida"),
' New Newtonsoft.Json.Linq.JProperty("language",
' New Newtonsoft.Json.Linq.JObject(
' New Newtonsoft.Json.Linq.JProperty("code", "es_MX")
' )
' ),
' New Newtonsoft.Json.Linq.JProperty("components",
' New Newtonsoft.Json.Linq.JArray(
' New Newtonsoft.Json.Linq.JObject(
' New Newtonsoft.Json.Linq.JProperty("type", "header"),
' New Newtonsoft.Json.Linq.JProperty("parameters",
' New Newtonsoft.Json.Linq.JArray(
' New Newtonsoft.Json.Linq.JObject(
' New Newtonsoft.Json.Linq.JProperty("type", "text"),
' New Newtonsoft.Json.Linq.JProperty("text", NombreUsuario)
' )
' )
' )
' ),
' New Newtonsoft.Json.Linq.JObject(
' New Newtonsoft.Json.Linq.JProperty("type", "body"),
' New Newtonsoft.Json.Linq.JProperty("parameters",
' New Newtonsoft.Json.Linq.JArray(
' New Newtonsoft.Json.Linq.JObject(
' New Newtonsoft.Json.Linq.JProperty("type", "text"),
' New Newtonsoft.Json.Linq.JProperty("text", Mensaje)
' )
' )
' )
' )
' )
' )
' )
' json.Add(New Newtonsoft.Json.Linq.JProperty("template", plantilla))
' Using content = New StringContent(json.ToString, Encoding.UTF8, "application/json")
' request.Content = content
' Dim response = httpClient.SendAsync(request, HttpCompletionOption.ResponseHeadersRead).Result
' If response.StatusCode = Net.HttpStatusCode.OK Then
' RetornoObj = response.Content.ReadAsStringAsync().Result
' Retorno = True
' End If
' End Using
' End Using
' End Using
' Catch ex As Exception
' RetornoObj = New Newtonsoft.Json.Linq.JObject(New Newtonsoft.Json.Linq.JProperty("Error", ex.ToString())).ToString()
' GuardaLog("Ocurrió un error al enviar la informacion por whatsapp" & ex.Message)
' End Try
' Return Retorno
'End Function
End Class