-- mejoras notificaciones

This commit is contained in:
2024-10-12 15:50:32 -07:00
parent f3408e4b60
commit 393542e925
2 changed files with 46 additions and 25 deletions

View File

@@ -11055,10 +11055,19 @@ Public Class ClsPaginas
Public Shared Sub EnviaNotificacionSMS(Tipo As Integer, tEmpresa As Empresa, CveOS As Integer, Folio As String, FechaCirugía As DateTime, Hospital As String, Medico As String, Procedimiento As String, Tecnico As String, Vendedor As String, Remision As String, ListaPS As List(Of GenericaCantidadProducto), CorreoDestino As String)
Dim ObjMail As New ClsSisMail()
Dim Asunto As String = ""
Dim OpcionNegritas As String = ""
Dim TextoFinal As String = ""
Dim Contenido As New StringBuilder
Contenido.Append("<html>")
Contenido.Append("<head>")
Contenido.Append("<meta charset='UTF-8'>")
Contenido.Append(" <style type=""text/css""> ")
Contenido.Append(" .Negritas ")
Contenido.Append(" { ")
Contenido.Append(" font-weight:bold; ")
Contenido.Append(" font-size:19px; ")
Contenido.Append(" } ")
Contenido.Append(" </style> ")
Contenido.Append("</head>")
Contenido.Append(" <body style='width:800px'>")
'Contenido.Append("<div>")
@@ -11068,58 +11077,68 @@ Public Class ClsPaginas
Case 3
Asunto = $"Nuevo Pedido:{FechaCirugía.ToString("dd/MM/yyyy HH:mm")}"
Contenido.AppendFormat("Pedido: <a href='https://sms.adssistemas.mx/Ventas/Ventas.aspx?CveVenta={0}'>{1}</a><br/>", CveOS, Folio)
OpcionNegritas = "H"
Case 4
Asunto = $"Nuevo Pedido:{Remision}"
Contenido.AppendFormat("Pedido: <a href='https://sms.adssistemas.mx/Ventas/Vetas.aspx?CveVenta={0}'>{1}</a><br/>", CveOS, Folio)
OpcionNegritas = "H"
Case 5
Asunto = "Cirugía de Urgencia"
Contenido.AppendFormat("Pedido: <a href='https://sms.adssistemas.mx/Ventas/Ventas.aspx?CveVenta={0}'>{1}</a><br/>", CveOS, Folio)
OpcionNegritas = "H"
Case 6
Asunto = "Tu pedido ha sido entregado"
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
OpcionNegritas = "Mat"
Case 7
Asunto = $"Se te ha asignado una CX:{FechaCirugía.ToString("dd/MM/yyyy HH:mm")}"
Contenido.AppendFormat(" <p style='width:100%;text-align:center;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
OpcionNegritas = "H"
Case 8
Asunto = "Tu CX ha sido asignada"
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
OpcionNegritas = "T"
Case 9
Asunto = "Material Utilizado en tu CX"
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
OpcionNegritas = "Mat"
Case 10
Asunto = "Material por recolectar; Remisión: " & Remision
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
Case 11
Asunto = "Sin material por recolectar ; Remisión " & Remision
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
Case 12
Asunto = "Remisión por facturar:" & Folio
Contenido.AppendFormat("Remisión: <a href='https://sms.adssistemas.mx/Ventas/Ventas.aspx?CveVenta={0}'>{1}</a><br/>", CveOS, Folio)
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <b>Remisión: <a href='https://sms.adssistemas.mx/Ventas/Ventas.aspx?CveVenta={0}'>{1}</a></b><br/>", CveOS, Folio)
Case 13
Asunto = "Cirugía Cancelada"
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
OpcionNegritas = "F"
Case 14
Asunto = "Cirugía Cancelada; Remisión " & Remision
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
OpcionNegritas = "Mat"
TextoFinal = "<b>CANCELADA</b>"
Case 15
Asunto = "Cirugía Cancelada; OS " & Folio
Contenido.AppendFormat(" <p style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></p>", CveOS, Folio)
Contenido.AppendFormat(" <span style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:12pt'>OS: <a href='https://sms.adssistemas.mx/OS/OrdenesServicios.aspx?CveOS={0}'>{1}</a><br/></span>", CveOS, Folio)
TextoFinal = "<b>CANCELADA</b>"
End Select
Contenido.AppendFormat("Fecha y hora de cx: {0}<br/>", FechaCirugía.ToString("dd/MM/yyyy HH:mm"))
Contenido.AppendFormat("<span style='{1}'>Fecha y hora de cx: {0}</span><br/>", FechaCirugía.ToString("dd/MM/yyyy HH:mm"), If(OpcionNegritas = "T", "Negritas", ""))
Contenido.AppendFormat("Hospital: {0}<br/>", Hospital)
If Medico <> "" Then Contenido.AppendFormat("Médico: {0}<br/>", Medico)
If Procedimiento <> "" Then Contenido.AppendFormat("Procedimiento: {0}<br/>", Procedimiento)
If Tecnico <> "" Then Contenido.AppendFormat("Técnico: {0}<br/>", Tecnico)
If Tecnico <> "" Then Contenido.AppendFormat("Técnico: {0}<br/>", If(OpcionNegritas = "T", $"<b>{Tecnico}</b>", Tecnico))
If Vendedor <> "" Then Contenido.AppendFormat("Vendedor: {0}<br/>", Vendedor)
If Remision <> "" Then Contenido.AppendFormat("Remisión: {0}<br/>", Remision)
If ListaPS IsNot Nothing Then
If ListaPS.Count > 0 Then
Contenido.Append(" <div style='width:100%;text-align:left'>")
Contenido.Append(" <table style='width:100%;font-family:Segoe UI Semibold;font-size:12pt'>")
Contenido.AppendFormat("<b>Productos.</b><br/>", Remision)
Contenido.Append(" <div style='width:100%;text-align:left;font-family:Segoe UI Semibold;font-size:10pt''>")
Contenido.AppendFormat("<span>Productos.</span><br/>", Remision)
Contenido.Append(" <table style='width:100%;'>")
For Each ps As GenericaCantidadProducto In ListaPS
Contenido.AppendFormat("<tr><td style='width:25%'>{0}</td><td style='width:75%'>{1}</td></tr>", ps.Cantidad.FormatoNumero(0), ps.Producto)
Next
@@ -11129,6 +11148,7 @@ Public Class ClsPaginas
Contenido.AppendFormat("<b>Sin material sobrante.</b><br/>", Remision)
End If
End If
Contenido.AppendFormat("<br/> {0}<br/>", TextoFinal)
Contenido.AppendFormat("<br/>CorreoDestino: {0}<br/>", CorreoDestino)
Contenido.Append(" </body>")

View File

@@ -3404,19 +3404,20 @@ Partial Class OS_OrdenesServicios
RegistraScript("$('#DivModalMaterialUtilizado').modal('hide');")
CargaEventoBitacora()
Dim CorreoDestino As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Correo", $"CveVendedor ={ CveVendedor }")
Dim NombreVendedor As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Vendedor", $"CveVendedor ={ CveVendedor }")
If ListMaterialesUtil.Count > 0 Then 'notif a almacen de mat utilizado
EnviaNotificacionSMS(9, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlTecnico.SelectedItem.Text, "vendedor", TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
EnviaNotificacionSMS(9, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
End If
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("Almacén")
'genera notificación almacen
If AplicaDevolucion Then 'notif a almacen de devolución
EnviaNotificacionSMS(10, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlTecnico.SelectedItem.Text, "vendedor", TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
EnviaNotificacionSMS(10, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
Else
EnviaNotificacionSMS(11, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlTecnico.SelectedItem.Text, "vendedor", TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
EnviaNotificacionSMS(11, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesDev, CorreoDestino)
End If
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("Facturación")
If Respuesta IsNot Nothing Then 'notif de remisión generada
EnviaNotificacionSMS(12, UsuarioActual.Empresa, Respuesta.CveVenta, Respuesta.SerieFolio, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlTecnico.SelectedItem.Text, "vendedor", TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
If Respuesta IsNot Nothing AndAlso Respuesta.CveVenta > 0 Then 'notif de remisión generada
EnviaNotificacionSMS(12, UsuarioActual.Empresa, Respuesta.CveVenta, Respuesta.SerieFolio, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, NombreVendedor, TxtFolioRemisionModal.Text, ListMaterialesUtil, CorreoDestino)
End If
Else
ObjV.RollBack()
@@ -3730,7 +3731,7 @@ Partial Class OS_OrdenesServicios
If resp.HuboError Then
Alert($"Se presento un error al cancelar la orden de servicio, {resp.Mensaje}".ToString(), TipoMensaje.MsgError)
Else
Alert($"la orden de servicio se cancelada correctamente, {resp.Mensaje}", resp.TipoMensaje, " location.reload(true); ")
Alert($"La orden de servicio se cancelada correctamente, {resp.Mensaje}", resp.TipoMensaje, " location.reload(true); ")
Dim objGeneral As New ClsGenerales
objGeneral.AddHistorialBitacora(256, -1, -1, -1, CveOS, -1, -1, -1, "Cancelada", DdlEstatusOS.SelectedItem.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 0, "", "", "")
objGeneral.Dispose()
@@ -3750,16 +3751,16 @@ Partial Class OS_OrdenesServicios
Dim CorreoVendedor As String = GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Correo", $"CveVendedor ={ CveVendedor }")
'vendedor
EnviaNotificacionSMS(13, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlTecnico.SelectedItem.Text, Vendedor, TxtFolioRemisionModal.Text, Nothing, CorreoVendedor)
EnviaNotificacionSMS(13, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoVendedor)
Dim CorreoDestino As String = ""
'almacen
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("Almacén")
EnviaNotificacionSMS(14, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlTecnico.SelectedItem.Text, Vendedor, TxtFolioRemisionModal.Text, Nothing, CorreoDestino)
EnviaNotificacionSMS(14, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoDestino)
If DdlTecnico.SelectedValue.ToEntero > 0 Then
'jefe de técnicos
CorreoDestino = UsuarioActual.Empresa.Funcionalidad(199).ListaBusquedaValor("JefeTécnicos")
EnviaNotificacionSMS(15, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlTecnico.SelectedItem.Text, Vendedor, TxtFolioRemisionModal.Text, Nothing, CorreoDestino)
EnviaNotificacionSMS(15, UsuarioActual.Empresa, CveOS, LblFolio.Text, TxtFechaCita.Text.ToDateTime, If(DdlSucursalCliente.Visible, DdlSucursalCliente.SelectedItem.Text, LblCliente.Text), DdlMedico.SelectedItem.Text, DdlProcedimiento.SelectedItem.Text, DdlUsuarioAtendio.SelectedItem.Text, Vendedor, TxtFolioAdicional.Text, ListMateriales, CorreoDestino)
End If
End If
End If