Exemplo n.º 1
0
        public static void Executar(Filtro_Pesquisa filtro, List <String> documentos_selecionados, String Servidor)
        {
            //Criar Mensagem de email
            MailMessage mail = criar_email(filtro);

            //Percorrer a lista de documentos a serem enviados
            int    contador = 0;
            int    NumeroMaximoDeAnexoNoEmail = 4; // Convert.ToInt32(Consulta_GED_CRM.Properties.Settings.Default.Nr_Maximo_de_Anexos);
            string arquivo_fisico             = "";

            foreach (String DocumentoPDF in documentos_selecionados)
            {
                adicionar_anexo(mail, DocumentoPDF, filtro.IdIdocs, Servidor);

                // quando o contador chegar ao numero NumeroMaximoDeAnexoNoEmail
                contador++;
                if (contador == NumeroMaximoDeAnexoNoEmail)
                {
                    // disparar e-mail
                    disparar_email(mail, filtro);
                    // Criar novo e-mail
                    mail = criar_email(filtro);
                    //zerar contador
                    contador = 0;
                }
            }

            // se o total de documentos nao atingir o NumeroMaximoDeAnexoNoEmail enviar e-mail mesmo assim
            if (contador != 0)
            {
                // disparar e-mail
                disparar_email(mail, filtro);
            }
        }
Exemplo n.º 2
0
        public static List <DocumentoPDF> obter_lista_arquivos_PDF(Filtro_Pesquisa filtro, String Servidor)
        {
            ConsultaExtratoCRMBLL CRMBLL = new ConsultaExtratoCRMBLL();
            List <String>         Lista_conversao_nomes = CRMBLL.Obter_lista_conversao_nomes(filtro);
            String SQL = CRMBLL.Gerar_Comando_Select(ref filtro, Lista_conversao_nomes);
            List <DocumentoPDF> documentos = CRMBLL.executar_comando_Select(SQL, Servidor);

            return(documentos);
        }
Exemplo n.º 3
0
        private static MailMessage criar_email(Filtro_Pesquisa filtro)
        {
            //Criar Mensagem de email
            MailMessage mail = new MailMessage();

            mail.From = new MailAddress("*****@*****.**"); //Consulta_GED_CRM.Properties.Settings.Default.Email_Remetente);
            mail.To.Add(filtro.ParticipanteEmail);
            mail.IsBodyHtml   = true;
            mail.BodyEncoding = System.Text.Encoding.UTF8;
            mail.Subject      = gerar_titulo_email(filtro);
            mail.Body         = gerar_corpo_email(filtro);
            return(mail);
        }
Exemplo n.º 4
0
        protected static void disparar_email(MailMessage mail, Filtro_Pesquisa filtro)
        {
            //Fazer conexao no servidor de e-mail
            //SmtpClient client = new SmtpClient("smtp.funcesp.com.br");
            //SmtpClient client = new SmtpClient(ConfigurationManager.AppSettings["Servidor_Email"]);

            // Somente enviar e-mail externo quando for o ambiente de Producao
            //if (Consulta_GED_CRM.Properties.Settings.Default.Email_Limitar_Envio_Interno != "S")
            //{
            // Passar dados do usuario, passo necessario para envio de email externo ao ambiente
            //String usuario = Consulta_GED_CRM.Properties.Settings.Default.Email_Usuario;
            //String senha = Consulta_GED_CRM.Properties.Settings.Default.Email_Usuario_Senha;
            //String usuario = "atendimento";
            //String senha = "WebCrm#14";
            //NetworkCredential basicCredential = new NetworkCredential(usuario, senha);
            //client.UseDefaultCredentials = true;
            //client.Credentials = basicCredential;
            //}

            // Enviar e-mail
            //client.Send(mail);

            SmtpClient client = new Email().EnviaEmailMensagem(mail);

            //salvar e-mail em disco
            String pastaTemporariaEmail = criar_pasta_temporaria("Email");

            client.DeliveryMethod          = SmtpDeliveryMethod.SpecifiedPickupDirectory;
            client.PickupDirectoryLocation = pastaTemporariaEmail;
            client.Send(mail);

            // Ler o e-mail salvo no passo anterior e renomear
            string[] filePaths            = Directory.GetFiles(pastaTemporariaEmail);
            String   novo_nome_de_arquivo = pastaTemporariaEmail + "\\email_" + Consultar_Documentos.converter_nome(filtro.TipoDocumento) + "(Enviado em " + DateTime.Now.ToString("ddMMyyyy_hhm") + ").eml";

            System.IO.File.Move(@filePaths[0], novo_nome_de_arquivo);

            // Anexar e-mail salvo em disco a aplicacao.
            ConsultaExtratoCRMBLL CRMBLL = new ConsultaExtratoCRMBLL();
            String resultado             = CRMBLL.Anexar_Email(novo_nome_de_arquivo, filtro);

            System.IO.File.Delete(novo_nome_de_arquivo);

            if (resultado != "Arquivo adicionado com sucesso!")
            {
                throw new ArgumentNullException(resultado);
            }
        }
Exemplo n.º 5
0
        private static String gerar_corpo_email(Filtro_Pesquisa filtro)
        {
            //StreamReader sr = new StreamReader(Consulta_GED_CRM.Properties.Settings.Default.Pasta_Templates_Corpo_Email + "\\" + filtro.TipoDocumento + "\\Template_Corpo_Email.htm");

            String idocs = HttpContext.Current.Server.MapPath(@"Modelos\Idocs\");

            StreamReader sr   = new StreamReader(idocs + filtro.TipoDocumento + @"\Template_Corpo_Email.htm");
            String       line = sr.ReadToEnd();

            //cria string para verificar o sexo do participante e incluir o SR. ou Sra.
            string tratamento = "";

            line = line.Replace("TipoDocumento", Consultar_Documentos.converter_nome2(filtro.TipoDocumento));

            string str_periodo_dia = "";



            TimeSpan horarioAtual = DateTime.Now.TimeOfDay;
            TimeSpan periodo_dia  = new TimeSpan(12, 0, 0);

            if (horarioAtual < periodo_dia)
            {
                str_periodo_dia = "Bom Dia";
            }
            else
            {
                str_periodo_dia = "Boa Tarde";
            }

            //compara a string e cria e retorna true ou false
            tratamento = (filtro.Sexo.Equals("M") ? "Sr." : "Sra.");
            line       = line.Replace("periodo_dia", str_periodo_dia);
            line       = line.Replace("Tratamento", tratamento);
            line       = line.Replace("NomeParticipante", filtro.ParticipanteNome);
            line       = line.Replace("EmpresaParticipante", "");
            line       = line.Replace("RegistroParticipante", "");
            line       = line.Replace("NumeroRepresentanteParticipante", "");
            line       = line.Replace("DiaAtual", DateTime.Now.ToString("dd/mm/yyyy"));
            line       = line.Replace("HoraAtual", DateTime.Now.ToString("hh:mi:ss"));
            return(line);
        }
Exemplo n.º 6
0
        private static String gerar_titulo_email(Filtro_Pesquisa filtro)
        {
            String titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);

            if (filtro.TipoDocumento == 1)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 2)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 3)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 4)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 5)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 6)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 7)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 8)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 9)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 10)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 11)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 12)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 13)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 14)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 15)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 16)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 17)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            if (filtro.TipoDocumento == 18)
            {
                titulo = "Solicitação de segunda via " + Consultar_Documentos.converter_nome2(filtro.TipoDocumento);
            }
            return(titulo);
        }
Exemplo n.º 7
0
        protected void btnEnviarEmail_Click(object sender, EventArgs e)
        {
            // ler os checkbox da pagina que foram selecionados
            List <String> documentos_selecionados = new List <String>();

            // Percorrer todos os componente da pagina
            foreach (String cc in Request.Form.Keys)
            {
                // se o componente for checkbox
                if (cc.IndexOf("chk_") > -1 && cc.IndexOf("todos") == -1)
                {
                    // Adicionar a lista de documentos clicados
                    documentos_selecionados.Add(cc.Substring(cc.IndexOf("__") + 2, cc.Length - (cc.IndexOf("__") + 2)));
                }
            }


            if (documentos_selecionados.Count > 0)
            {
                Filtro_Pesquisa filtro = ler_variaveis_ambiente();
                filtro.ParticipanteEmail = txtEmailDestinatario.Text;

                ////Regisro para teste
                //if (Consulta_GED_CRM.Properties.Settings.Default.Ambiente != "Producao" && filtro.TipoDocumento == 0)
                //{
                //    filtro.TipoDocumento = 9;
                //    filtro.CodigoEmpresa = "088";
                //    filtro.Registro = "0000200007";
                //    filtro.Representante = "0";
                //    filtro.ParticipanteNome = "FULVIO CORRALES DE ANDRADE";
                //    filtro.PesquisaAnoInicio = "2000";
                //    filtro.PesquisaAnoFim = "2020";
                //    filtro.PesquisaMesInicio = "01";
                //    filtro.PesquisaMesFim = "12";
                //    filtro.ParticipanteEmail = "*****@*****.**";
                //    filtro.NrChamado = "921";
                //    filtro.NrManifestacao = "701";
                //}

                if (String.IsNullOrEmpty(filtro.ParticipanteEmail))
                {
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "PopupScript", "alert('Campo E-Mail obrigatório.');", true);
                    txtEmailDestinatario.Focus();
                }
                else if (!Util.ValidaEmail(filtro.ParticipanteEmail))
                {
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "PopupScript", "alert('Campo E-Mail inválido.');", true);
                    txtEmailDestinatario.Focus();
                }
                else
                {
                    Enviar_Email.Executar(filtro, documentos_selecionados, Servidor);
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "PopupScript", "alert('E-Mail Enviado com sucesso.');", true);
                }
            }

            else
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "PopupScript", "alert('Favor selecionar um documento para prosseguir.');", true);
            }
        }
Exemplo n.º 8
0
        public string Servidor = "10.190.35.143"; //doctst

        protected Filtro_Pesquisa ler_variaveis_ambiente()
        {
            Filtro_Pesquisa filtro = new Filtro_Pesquisa();

            filtro.TipoDocumento     = Convert.ToInt16(Request.QueryString["BdTypeName"]);
            filtro.CodigoEmpresa     = Request.QueryString["CP01"];
            filtro.Registro          = Request.QueryString["CP02"];
            filtro.Representante     = Request.QueryString["CP03"];
            filtro.PesquisaAnoInicio = Request.QueryString["CP04"];
            filtro.PesquisaAnoFim    = Request.QueryString["CP05"];
            filtro.PesquisaMesInicio = Request.QueryString["CP06"];
            filtro.PesquisaMesFim    = Request.QueryString["CP07"];
            filtro.ParticipanteNome  = Request.QueryString["CP08"];
            filtro.CPF = Request.QueryString["CP09"];
            filtro.ParticipanteEmail = Request.QueryString["CP10"];
            filtro.NrChamado         = Request.QueryString["CP11"];
            filtro.NrManifestacao    = Request.QueryString["CP12"];
            filtro.Sexo = Request.QueryString["CP13"];
            filtro.cnpj = Request.QueryString["CP14"];
            //filtro.nom_convenente = Request.QueryString["CP15"];
            filtro.contrato = Request.QueryString["CP16"];

            switch (filtro.TipoDocumento)
            {
            case 1:
                filtro.IdIdocs = "tp_pagsupl";
                break;

            case 2:
                filtro.IdIdocs = "tp_contrib";
                break;

            case 3:
                filtro.IdIdocs = "tp_irrfapo";
                break;

            case 4:
                filtro.IdIdocs = "tp_cobvinc";
                break;

            case 5:
                filtro.IdIdocs = "tp_cobrsep";
                break;

            case 6:
                filtro.IdIdocs = "tp_revisao";
                break;

            case 8:
                filtro.IdIdocs = "tp_cobsaud";
                break;

            case 9:
                filtro.IdIdocs = "tp_utilamh";
                break;

            case 10:
                filtro.IdIdocs = "tp_utilpes";
                break;

            case 11:
                filtro.IdIdocs = "tp_credree";
                break;

            case 12:
                filtro.IdIdocs = "tp_utilanu";
                break;

            case 13:
                filtro.IdIdocs = "tp_cejadmn";
                break;

            case 14:
                filtro.IdIdocs = "tp_irrfcre";
                break;

            case 15:
                filtro.IdIdocs = "tp_terquit";
                break;

            case 16:
                filtro.IdIdocs = "tp_pagcompc";
                break;

            case 17:
                filtro.IdIdocs = "tp_cejsaud";
                break;

            case 18:
                filtro.IdIdocs = "tp_credpcc";
                break;

            default:
                break;
            }
            return(filtro);
        }
Exemplo n.º 9
0
        protected void Page_Load(object sender, EventArgs e)
        {
            // Ler as variaveis
            Filtro_Pesquisa filtro = ler_variaveis_ambiente();

            //Regisro para teste
            //if (Consulta_GED_CRM.Properties.Settings.Default.Ambiente != "Producao" && filtro.TipoDocumento == 0)
            ////{
            //// NAO ESQUECER DE COMENTAR ESSA PARTE DAQUI
            //    filtro.TipoDocumento = 9;
            //    filtro.CodigoEmpresa = "088";
            //    filtro.Registro = "0000200007";
            //    filtro.Representante = "0";
            //    filtro.ParticipanteNome = "FULVIO CORRALES DE ANDRADE";
            //    filtro.PesquisaAnoInicio = "2000";
            //    filtro.PesquisaAnoFim = "2020";
            //    filtro.PesquisaMesInicio = "01";
            //    filtro.PesquisaMesFim = "12";
            //    filtro.ParticipanteEmail = "*****@*****.**";
            //    filtro.NrChamado = "921";
            //    filtro.NrManifestacao = "701";

            ////ATÉ AQUI
            ////}

            // Apenas informar e-mail a ser enviado
            if (!IsPostBack)
            {
                txtEmailDestinatario.Text = filtro.ParticipanteEmail;
            }


            //if (ConfigurationManager.AppSettings["Config"] == "P")
            //{
            //    Servidor = "10.190.35.57"; // docprod
            //}

            if (ConfigurationManager.AppSettings["Config"] == "P" || ConfigurationManager.AppSettings["Config"] == "T")
            {
                Servidor = "10.190.35.57"; // docprod
            }

            // Apenas informar  sobre ambiente de Homologacao
            //if (Consulta_GED_CRM.Properties.Settings.Default.Ambiente != "Producao")
            //{
            //    Label4.Text = "Existem poucos documentos no ambiente de Homologacao - Para testes favor utilizar a empresa 88";
            //}

            // Consultar documentos
            List <DocumentoPDF> documentos = Consultar_Documentos.obter_lista_arquivos_PDF(filtro, Servidor);

            if (documentos.Count == 0)
            {
                Response.Write("Nenhum arquivo encontrado");
                txtEmailDestinatario.Visible = false;
                btnEnviarEmail.Visible       = false;
            }
            else
            {
                gerar_pagina_html_com_resultado(documentos, filtro.IdIdocs);
                txtEmailDestinatario.Visible = true;
                btnEnviarEmail.Visible       = true;
            }
        }