From 3974b4e821c65db7e708e102172a50466a5277e4 Mon Sep 17 00:00:00 2001 From: Rakcsle Supertramp Date: Fri, 19 Jun 2020 13:08:26 -0700 Subject: [PATCH] Pago electronico grupos revicion envio de correos archivos adjuntos y CIE --- App_Code/ClsSisMail.vb | 17 ++++++++++++++++- Bancos/PagoElectronicoGrupos.aspx.vb | 21 +++++++++++++++++---- 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/App_Code/ClsSisMail.vb b/App_Code/ClsSisMail.vb index 25d14fd9e..232d38e36 100644 --- a/App_Code/ClsSisMail.vb +++ b/App_Code/ClsSisMail.vb @@ -1,7 +1,22 @@ Imports System.IO Imports Extensiones -Public Class ClsSisMail +Public Class ClsSisMail + + Public Shared Function IsMailShared(ByVal Mail As String) As Boolean + Dim Resultado As Boolean = False + 'cambio para que acepte multiples correos, separados por ; + Dim RegularExpression As String = "(([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)(\s*;\s*|\s*$))+" ' "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}" & "\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\" & ".)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$" + Dim RegExp As New Regex(RegularExpression) + + If RegExp.IsMatch(Mail) Then + Resultado = True + Else + Resultado = False + End If + + Return Resultado + End Function Private Function IsMail(ByVal Mail As String) As Boolean Dim Resultado As Boolean = False diff --git a/Bancos/PagoElectronicoGrupos.aspx.vb b/Bancos/PagoElectronicoGrupos.aspx.vb index 9013449c5..625754b4d 100644 --- a/Bancos/PagoElectronicoGrupos.aspx.vb +++ b/Bancos/PagoElectronicoGrupos.aspx.vb @@ -2996,9 +2996,6 @@ Partial Class Bancos_PagoElectronicoGrupos If Comprobante <> "-1" And Not ErrorProceso Then Try - - - If File.Exists(FDestino) Then File.Delete(FDestino) End If @@ -3362,7 +3359,20 @@ Partial Class Bancos_PagoElectronicoGrupos ListaArchivos.Add(New ClsSisMail.ArchivoMail With {.ArchivoBinario = File, .NombreArchivo = "EstadoCuentaCxP.pdf"}) End If - If Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body, Archivos:=ListaArchivos) Then + Dim separador As Char() = {";"c, ","c} + Dim strArray As String() = Para.Split(separador) + + Para = "" + + For Each sCorreo As String In strArray + If ClsSisMail.IsMailShared(sCorreo) And sCorreo.Trim.Length > 0 Then + Para = $"{Para}{sCorreo};" + End If + Next + + Para = Para.Substring(0, Para.Length - 1) + + If Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Para, Asunto, Body, Archivos:=ListaArchivos, Displayname:=$"SIG Notificaciones: Pago de {UsuarioActual.Empresa.Empresa}") Then Dim objIE As New ClsBancos objIE.UpdateBancos_IENotificaciones(1, "-1", "-1", CveIE) objIE.Dispose() @@ -3370,6 +3380,9 @@ Partial Class Bancos_PagoElectronicoGrupos End Sub + + + Private Function GeneraCorreo(CveIE As Integer) As String Dim strBody As New StringBuilder