Beispiel #1
0
        public void Enviar()
        {
            try
            {
                EnviarEmailParalela enviarEmail = new EnviarEmailParalela();

                Regional reg = new Regional();
                List <EstruturaRegionalEmail> listaRegional = reg.CarregarListaEmail();

                foreach (EstruturaRegionalEmail regEmail in listaRegional.Where(c => !string.IsNullOrEmpty(c.Email)))
                {
                    if (lista.Count == 0)
                    {
                        break;
                    }

                    enviarEmail.EnviarAlerta(this.lista.Where(c => c.Horario.Subtract(DateTime.Now).TotalHours <= 24 && c.Regional == regEmail.Regional).ToList(), 1, regEmail.Email, regEmail.Regional);
                    enviarEmail.EnviarAlerta(this.lista.Where(c => c.Horario.Subtract(DateTime.Now).TotalHours > 24 && c.Regional == regEmail.Regional).ToList(), 2, regEmail.Email, regEmail.Regional);
                    this.lista.RemoveAll(c => c.Regional == regEmail.Regional);
                }

                enviarEmail.EnviarAlerta(this.lista.Where(c => c.Horario.Subtract(DateTime.Now).TotalHours <= 24).ToList(), 1);
                enviarEmail.EnviarAlerta(this.lista.Where(c => c.Horario.Subtract(DateTime.Now).TotalHours > 24).ToList(), 2);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public void Enviar(string EmailsAlertaPeanut)
        {
            try
            {
                if (quantidadeCompras > 0)
                {
                    EnviarEmailParalela enviarEmail = new EnviarEmailParalela();

                    enviarEmail.AlertaDeComprasComPrioridadeDeAtendimento(quantidadeCompras, quantidadeDias, EmailsAlertaPeanut);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Beispiel #3
0
        public void EncaminhaFeedback(List <EstruturaFeedback> lista, int respiro, int quantidade)
        {
            BD bd = new BD();

            try
            {
                EstruturaFeedback   feedBack    = null;
                EnviarEmailParalela enviarEmail = new EnviarEmailParalela();
                string     corpoEmail           = new StreamReader(ConfigurationManager.AppSettings["CaminhoFisicoHTMLFeedBack"] + "\\Feedback.htm").ReadToEnd();
                List <int> vendabilheterias     = new List <int>();

                while (lista.Count > 0)
                {
                    for (int i = 0; i < quantidade; i++)
                    {
                        feedBack = lista.FirstOrDefault();
                        if (feedBack == null)
                        {
                            break;
                        }
                        enviarEmail.EnviarFeedback(corpoEmail, feedBack);
                        vendabilheterias.Add(feedBack.VendaBilheteriaID);
                        lista.Remove(feedBack);
                    }
                    Thread.Sleep(respiro);
                }

                bd.BulkInsert(vendabilheterias, "#VendasEnviadas", false, true);
                bd.Executar(
                    @"
						UPDATE vb SET vb.EmailEnviado = 'T'
						FROM tVendaBilheteria vb
						INNER JOIN #VendasEnviadas ON vb.ID = #VendasEnviadas.ID
					"                    );
            }
            finally
            {
                bd.Fechar();
            }
        }