Пример #1
0
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            if (this.IsEditar)
            {
                if (this.Comprobaciones(out ECorreos eCorreo))
                {
                    string rpta = ECorreos.EditarCorreo(eCorreo, eCorreo.Id_correo);
                    if (rpta.Equals("OK"))
                    {
                        this.IsEditar = false;
                        this.BuscarCorreos();

                        Configuration config1 = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                        config1.AppSettings.Settings["correoTurno"].Value = this.chkCorreoTurno.Checked ? "AUTOMATICO" : "MANUAL";
                        config1.Save(ConfigurationSaveMode.Modified, true);
                        ConfigurationManager.RefreshSection("appSettings");

                        Mensajes.MensajeOkForm("Se guardaron los cambios correctamente");
                        return;
                    }
                    else
                    {
                        Mensajes.MensajeInformacion("Hubo un error al guardar los cambios, detalles: " + rpta, "Entendido");
                        return;
                    }
                }
            }
            else
            {
                this.IsEditar = true;
            }
        }
Пример #2
0
        private void BuscarCorreos()
        {
            DataTable dtCorreos = ECorreos.BuscarCorreos("COMPLETO", "", out string rpta);

            if (dtCorreos != null)
            {
                this.DtCorreos = dtCorreos;

                DataRow[] rows =
                    dtCorreos.Select(string.Format("Tipo_correo = '{0}'", "REPORTES"));
                if (rows.Length > 0)
                {
                    ECorreos eCorreo = new ECorreos(rows[0]);
                    this.ECorreo        = eCorreo;
                    this.rdReportes.Tag = eCorreo;
                }

                rows =
                    dtCorreos.Select(string.Format("Tipo_correo = '{0}'", "ERRORES"));
                if (rows.Length > 0)
                {
                    ECorreos eCorreo = new ECorreos(rows[0]);
                    this.rdErrores.Tag = eCorreo;
                }

                return;
            }
            else
            if (!rpta.Equals("OK"))
            {
                Mensajes.MensajeInformacion("No se pudo recuperar los correos de la base de datos, detalles: " + rpta, "Detalles");
            }
        }
Пример #3
0
        public static string SendEmail(string informacion, ECorreos eCorreo)
        {
            string rpta = "OK";

            try
            {
                //Este codigo pone la plantilla en el string HTMLTemplate

                string HTMLTemplateMail = ""; //utilitiesService.templateEmail();

                //if (HTMLTemplateMail == null)
                //{
                //    throw new Exception("No se envió el correo, no se encontró la plantilla");
                //}

                StringBuilder headerEmail  = new StringBuilder();
                StringBuilder contentEmail = new StringBuilder();

                headerEmail.Append("<h2>");
                headerEmail.Append("Reporte de turno - FECHA: " + DateTime.Now.ToLongDateString() + " HORA: " + DateTime.Now.ToLongTimeString());
                headerEmail.Append("</h2>");

                headerEmail.Append("<h3>");
                headerEmail.Append("Información: ");
                headerEmail.Append("</h3>");

                headerEmail.Append("<p>");
                headerEmail.Append(informacion);
                headerEmail.Append("</p>");

                headerEmail.Append("<br />");
                headerEmail.Append("<br />");

                HTMLTemplateMail = concatTemplateEmailWithHeaderBody(headerEmail.ToString(), contentEmail.ToString());

                MailMessage mail = new MailMessage(eCorreo.Correo_remitente, eCorreo.Correo_destinatario);
                mail.From       = new MailAddress(eCorreo.Correo_remitente, "SISTaxi", System.Text.Encoding.UTF8);
                mail.IsBodyHtml = true;
                string fecha = DateTime.Now.ToString("G");
                mail.Subject = "Reporte de turno SISTaxi" + " - " + fecha;
                mail.Body    = HTMLTemplateMail;
                if (!eCorreo.Correo_copia.Equals(""))
                {
                    //Línea para enviar una copia del correo
                    mail.Bcc.Add(eCorreo.Correo_copia);
                }

                SmtpClient client = new SmtpClient(ConfigurationManager.AppSettings["eMailSMTP"].ToString());
                client.Credentials = new System.Net.NetworkCredential(eCorreo.Correo_remitente, eCorreo.Clave_correo_remitente);
                client.Port        = int.Parse(ConfigurationManager.AppSettings["portEmail"].ToString());
                client.EnableSsl   = true;
                client.Send(mail);
            }
            catch (Exception ex)
            {
                rpta = ex.Message;
            }

            return(rpta);
        }
Пример #4
0
 private void AsignarDatos(ECorreos eCorreo)
 {
     if (eCorreo != null)
     {
         this.txtCorreoEnvio.Text    = eCorreo.Correo_remitente;
         this.txtCorreoReceptor.Text = eCorreo.Correo_destinatario;
         this.txtPass1.Text          = eCorreo.Clave_correo_remitente;
         if (eCorreo.Correo_copia.Equals(""))
         {
             this.chkCopia.Checked = false;
             this.txtCopia.Text    = string.Empty;
             this.gbCopia.Enabled  = false;
         }
         else
         {
             this.chkCopia.Checked = true;
             this.txtCopia.Text    = eCorreo.Correo_copia;
             this.gbCopia.Enabled  = true;
         }
     }
 }
Пример #5
0
        private bool Comprobaciones(out ECorreos eCorreo)
        {
            eCorreo = new ECorreos();
            if (!this.ComprobacionEmail(this.txtCorreoEnvio.Text))
            {
                Mensajes.MensajeInformacion("El correo del remitente no tiene un formato correcto", "Entendido");
                return(false);
            }

            if (!this.ComprobacionEmail(this.txtCorreoReceptor.Text))
            {
                Mensajes.MensajeInformacion("El correo del destinatario no tiene un formato correcto", "Entendido");
                return(false);
            }

            if (this.chkCopia.Checked)
            {
                if (!this.ComprobacionEmail(this.txtCopia.Text))
                {
                    Mensajes.MensajeInformacion("El correo para el envío de copia no tiene un formato correcto", "Entendido");
                    return(false);
                }
                else
                {
                    eCorreo.Correo_copia = this.txtCopia.Text;
                }
            }
            else
            {
                eCorreo.Correo_copia = string.Empty;
            }

            if (this.txtPass1.Text.Equals(""))
            {
                Mensajes.MensajeInformacion("La contraseña del correo de envío es obligatoria", "Entendido");
                return(false);
            }
            else
            {
                eCorreo.Clave_correo_remitente = this.txtPass1.Text;
            }

            eCorreo.Correo_remitente    = this.txtCorreoEnvio.Text;
            eCorreo.Correo_destinatario = this.txtCorreoReceptor.Text;
            eCorreo.Estado_correo       = "ACTIVO";

            if (this.rdErrores.Checked)
            {
                eCorreo.Tipo_correo = "ERRORES";
            }
            else
            {
                eCorreo.Tipo_correo = "REPORTES";
            }

            if (this.ECorreo != null)
            {
                eCorreo.Id_correo = this.ECorreo.Id_correo;
            }
            else
            {
                Mensajes.MensajeInformacion("No se encontró el id del correo ligado", "Entendido");
                return(false);
            }

            return(true);
        }