private string GeraCorpoEmailCCe(belEmail email) { try { string scaminhoLink = (Acesso.NM_RAMO != Acesso.BancoDados.TRANSPORTE) ? "https://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=" : "http://www.cte.fazenda.gov.br/consulta.aspx?tipoConsulta=completa&tipoConteudo=mCK/KoCqru0="; string sSistema = (Acesso.NM_RAMO != Acesso.BancoDados.TRANSPORTE) ? "NFe" : "CTe"; StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se a Carta de Correção Eletrônica efetuada na "); sCorpo.Append(sSistema + " de número " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Visualize a " + sSistema); sCorpo.Append(" <a href=" + scaminhoLink + ">aqui!</a><br>"); sCorpo.Append("Chave de Acesso: " + email.sChaveNFe + "<br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de " + sSistema + "</font>"); sCorpo.Append(AssinaturaEmail()); return(sCorpo.ToString()); } catch (Exception x) { throw new Exception(x.Message); } }
void EnviaEmail() { try { if (Acesso.VerificaDadosEmail()) { List<belEmail> objlbelEmail = new List<belEmail>(); for (int i = 0; i < objDadosImp.Count; i++) { belEmail objemail = new belEmail(objDadosImp[i].sCaminhoXml, objDadosImp[i].sCaminhoPDF, objDadosImp[i].sCD_NFSEQ, objDadosImp[i].sCD_NOTAFIS); objlbelEmail.Add(objemail); } if (objlbelEmail.Count > 0) { frmEmail objfrmEmail = new frmEmail(objlbelEmail, objDadosImp.Where(C => C.Cancelado == true).Count() > 0 ? belEmail.TipoEmail.NFe_Cancelada : belEmail.TipoEmail.NFe_Normal); objfrmEmail.ShowDialog(); } } else { KryptonMessageBox.Show(null, "Campos para o envio de e-mail automático não estão preenchidos corretamente!", Mensagens.CHeader, MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception ex) { throw ex; } }
private string GeraCorpoEmailNF_Servico(belEmail email) { try { string scaminhoLink = ""; if (Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES) { scaminhoLink = "visualizar.ginfes" + (Acesso.TP_AMB_SERV == 2 ? "h" : "") + ".com.br/report/consultarNota?__report=nfs_ver4&cdVerificacao=" + email.sCodigoVerificacaoNFservico + "&numNota=" + email.sSeq; } else { scaminhoLink = string.Format("https://spe.riodasostras.rj.gov.br/nfse/nfse.aspx?ccm=2747&nf={0}&cod={1}", email.sSeq, email.sCodigoVerificacaoNFservico.Replace("-", "")); } StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se à Nota Fiscal Eletrônica de Serviços N° " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Visualize a NF-e Serviço"); sCorpo.Append("<a href=" + scaminhoLink + ">aqui!</a><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de NF-e</font>"); sCorpo.Append(AssinaturaEmail()); return(sCorpo.ToString()); } catch (Exception ex) { throw ex; } }
private string GeraCorpoEmailNfe_Cancelada(belEmail email) { try { XmlDocument xmldoc = new XmlDocument(); xmldoc.Load(email.sCaminhoXml); string chave = xmldoc.GetElementsByTagName("infNFe")[0].Attributes["Id"].Value.Replace("NFe", ""); string protocolo = xmldoc.GetElementsByTagName("nProt")[0].InnerText; string scaminhoLink = "https://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8= "; StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se ao CANCELAMENTO da Nota Fiscal Eletrônica de série/número " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Visualize a NF-e "); sCorpo.Append("<a href=" + scaminhoLink + ">aqui!</a><br>"); sCorpo.Append("Chave de Acesso: " + chave + "<br>"); sCorpo.Append("Protocolo: " + protocolo + "<br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de NF-e</font>"); sCorpo.Append(AssinaturaEmail()); return(sCorpo.ToString()); } catch (Exception x) { throw new Exception(x.Message); } }
private string GeraCorpoEmailCte(belEmail email) { try { XmlDocument xmldoc = new XmlDocument(); StringBuilder sCorpo = new StringBuilder(); xmldoc.Load(email.sCaminhoXml); XmlNodeList emit = xmldoc.GetElementsByTagName("emit"); string chave = xmldoc.GetElementsByTagName("infCte")[0].Attributes["Id"].Value.Replace("CTe", ""); string protocolo = ""; if (xmldoc.GetElementsByTagName("nProt")[0] != null) { protocolo = xmldoc.GetElementsByTagName("nProt")[0].InnerText; } sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se ao Conhecimento de Transporte Eletrônico número " + email.sSeq + " emitido por:<br><br>"); sCorpo.Append("Razão Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Para verificar o Conhecimento mencionado, "); sCorpo.Append("acesse o site https://www.cte.fazenda.gov.br/FormularioDePesquisa.aspx?tipoconsulta=resumo <br><br>"); sCorpo.Append("Chave de Acesso: " + chave + "<br>"); sCorpo.Append("Protocolo: " + protocolo + "<br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de CT-e</font>"); sCorpo.Append(AssinaturaEmail()); return(sCorpo.ToString()); } catch (Exception ex) { throw new Exception(ex.Message); } }
private string GeraCorpoEmail(belEmail email) { string Corpo = ""; switch (tipo) { case TipoEmail.CTe: Corpo = GeraCorpoEmailCte(email); break; case TipoEmail.NFe_Normal: Corpo = GeraCorpoEmailNfe_Normal(email); break; case TipoEmail.NFe_Cancelada: Corpo = GeraCorpoEmailNfe_Cancelada(email); break; case TipoEmail.CCe: Corpo = GeraCorpoEmailCCe(email); break; case TipoEmail.NF_Servico: Corpo = GeraCorpoEmailNF_Servico(email); break; case TipoEmail.NF_ServicoDSF: Corpo = GeraCorpoEmailNF_ServicoDSF(email); break; } return(Corpo); }
public frmEmail(List<belEmail> objListaEmail, belEmail.TipoEmail tipo) { InitializeComponent(); try { this.objListaEmail = objListaEmail; this.tipo = tipo; PopulaDataGrid(); VerificaEmail(); } catch (Exception ex) { new HLPexception(ex); } }
private string GeraCorpoEmailNF_ServicoDSF(belEmail email) { try { StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se à Nota Fiscal Eletrônica de Serviços N° " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de NF-e</font>"); sCorpo.Append(AssinaturaEmail()); return(sCorpo.ToString()); } catch (Exception ex) { throw ex; } }
void btnEnviar_Click(object sender, EventArgs e) { try { if (CompactaZip()) { List<PendenciaEmail> lEnviar = lpendencias.Where(c => c.Select).ToList(); belEmail objEmail = new belEmail(lEnviar, txtCopia.Text); EnviaEmailTeste(); objEmail.EnviarEmail(); KryptonMessageBox.Show("E-mail enviado com sucesso!", Mensagens.CHeader, MessageBoxButtons.OK, MessageBoxIcon.Information); dadosArquivos.dtUltimoEnvio = DateTime.Today; bel.belSerializeToXml.SerializeClasse<ConfigEmailContadorXml>(dadosArquivos, sPathArquivoSerializer); CarregaDataGrid(); } } catch (Exception ex) { new HLPexception(ex); } }
private void btnVisualizar_Click(object sender, EventArgs e) { try { if (belPesq.lResultPesquisa != null) { List<belimpressao> sListImpressao = new List<belimpressao>(); belimpressao obj; List<belPesquisaNotas> objSelecionadas = belPesq.lResultPesquisa.Where(c => c.bSeleciona).ToList<belPesquisaNotas>(); List<belPesquisaNotas> objSelect = objSelecionadas.Where(c => c.bEnviado == true || c.bCancelado == true).ToList<belPesquisaNotas>(); foreach (belPesquisaNotas item in objSelect) { obj = new belimpressao(); obj.sNfSeq = item.sCD_NFSEQ; obj.sNota = item.scd_numero_nfse; obj.bCanc = item.bCancelado; obj.dtEnvio = item.dDT_EMI; sListImpressao.Add(obj); } if (sListImpressao.Count > 0) { if (Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.DSF) { if (sListImpressao.Count > 1) { throw new Exception("Imprima uma nota de cada vez !"); } else { daoUtil dadosEmpresa = new daoUtil(); dadosEmpresa.SetDadosEmpresa(); string sEnderPrestador = string.Format("{0}, - BAIRRO: {1} ", dadosEmpresa.RuaEmpresa, dadosEmpresa.BairroEmpresa); string sRPS = daoUtil.GetNumRPSbyCD_NFSEQ(sListImpressao.FirstOrDefault().sNfSeq); string sPathXml = ""; if (sListImpressao.FirstOrDefault().bCanc) { sPathXml = belCancelamentoDSF.GetFilePathMonthServico(false, sListImpressao.FirstOrDefault().sNota, sListImpressao.FirstOrDefault().dtEnvio); } else { sPathXml = belCancelamentoDSF.GetFilePathMonthServico(true, sListImpressao.FirstOrDefault().sNota, sListImpressao.FirstOrDefault().dtEnvio); } if (!Directory.Exists(Pastas.ENVIADOS + "PDF\\")) { Directory.CreateDirectory(Pastas.ENVIADOS + "PDF\\"); } string sPathPDFdsf = ""; if (sListImpressao.FirstOrDefault().bCanc) { sPathPDFdsf = Pastas.ENVIADOS + "PDF\\" + sListImpressao.FirstOrDefault().sNota + "_canc.pdf"; //belCancelamentoDSF } else { sPathPDFdsf = Pastas.ENVIADOS + "PDF\\" + sListImpressao.FirstOrDefault().sNota + ".pdf"; } LoteRPS nota = SerializeClassToXml.DeserializeClasse<LoteRPS>(sPathXml); nota.CD_NFSEQ = sListImpressao.FirstOrDefault().sNfSeq; nota.NumeroRPS = sListImpressao.FirstOrDefault().sNota; foreach (LoteRPSItensItem item in nota.Itens.Item) { item.NumeroRPS = nota.NumeroRPS; } List<LoteRPS> lNotas = new List<LoteRPS>(); lNotas.Add(nota); ReportDocument rpt = new ReportDocument(); rpt.Load(Util.GetPathRelatorio("rptNFSeCamp.rpt")); dsNFSeCampinas ds = CarregaDataSet(sListImpressao.FirstOrDefault().sNfSeq, dadosEmpresa, sEnderPrestador, nota); rpt.SetDataSource(ds); rpt.DataDefinition.FormulaFields["F_BAIRRO_TOMADOR"].Text = "\"" + nota.BairroTomador + "\""; decimal vl_iss = Math.Round(nota.Itens.Item.Sum(c => c.ValorTotal) * (Convert.ToDecimal(nota.AliquotaAtividade.Replace('.', ',')) / 100), 2); rpt.DataDefinition.FormulaFields["F_VALOR_ISS"].Text = "\"" + "R$ " + vl_iss.ToString().Replace('.', ',') + "\""; //try { rpt.SetParameterValue("PathImage", Acesso.LOGOTIPO); } //catch (System.Exception ex) { }; if (objSelect.FirstOrDefault().bCancelado) { string sMotivoCanc = daoUtil.GetMOTIVO_CANC(sListImpressao.FirstOrDefault().sNfSeq); rpt.DataDefinition.FormulaFields["F_MOTIVO_CANC"].Text = "\"" + sMotivoCanc + "\""; } rpt.Refresh(); if (Convert.ToBoolean(Acesso.EMAIL_AUTOMATICO)) { if (KryptonMessageBox.Show("Deseja enviar email da Nota para o Tomador ?", Mensagens.MSG_Confirmacao, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { if (Acesso.VerificaDadosEmail()) { List<belEmail> objlbelEmail = new List<belEmail>(); if (File.Exists(sPathPDFdsf)) { try { File.Delete(sPathPDFdsf); } catch (Exception) { } } if (!File.Exists(sPathPDFdsf)) { Util.ExportPDF(rpt, sPathPDFdsf); } for (int i = 0; i < sListImpressao.Count; i++) { belEmail objemail = new belEmail(sPathXml, sPathPDFdsf, sListImpressao.FirstOrDefault().sNfSeq, "", "", sListImpressao[i].sVerificacao); objlbelEmail.Add(objemail); } if (objlbelEmail.Count > 0) { frmEmail objfrmEmail = new frmEmail(objlbelEmail, belEmail.TipoEmail.NF_ServicoDSF); objfrmEmail.ShowDialog(); } } else { KryptonMessageBox.Show("Campos para o envio de e-mail automático não estão preenchidos corretamente!", Mensagens.CHeader, MessageBoxButtons.OK, MessageBoxIcon.Information); } } } frmRelatorio frm = new frmRelatorio(rpt, "Impressão de Relatório de Nota Fiscal Eletrônica de Serviço"); frm.Show(); } } else if (Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.SUSESU) { bel.NFes.Susesu.belNFesSusesu objNfe; List<belNFesSusesu> lNfe = new List<belNFesSusesu>(); foreach (belPesquisaNotas nota in objSelect) { objNfe = new belNFesSusesu(); string sCHAVE = nota.sCHAVENFE; objNfe.DATA_EMISSAO = objSelect.FirstOrDefault().dDT_EMI.ToString(); objNfe.NUMERO_NOTA = Convert.ToInt32(nota.sCD_NOTAFIS); objNfe = belSerializeToXml.DeserializeClasse<belNFesSusesu>(objNfe.GetsFilePathServico(true)); objNfe.sCHAVE = sCHAVE; lNfe.Add(objNfe); } ReportDocument rpt = new ReportDocument(); rpt.Load(Util.GetPathRelatorio("rptNfesSusesu.rpt")); rpt.SetDataSource(lNfe); daoUtil dadosEmpresa = new daoUtil(); dadosEmpresa.SetDadosEmpresa(); string sNomeCidade = lNfe.FirstOrDefault().BuscaNomeCidade(Util.TiraSimbolo(lNfe.FirstOrDefault().TOMADOR_MUNICIPIO.ToString())); rpt.DataDefinition.FormulaFields["NM_MUNICIPIO_TOMADOR"].Text = "\"" + sNomeCidade + "\""; rpt.DataDefinition.FormulaFields["NomeEmpresa"].Text = "\"" + Acesso.NM_RAZAOSOCIAL + "\""; rpt.DataDefinition.FormulaFields["DocEmpresa"].Text = "\"" + Acesso.CNPJ_EMPRESA + "\""; rpt.DataDefinition.FormulaFields["IMEmpresa"].Text = "\"" + dadosEmpresa.ImEmpresa + "\""; rpt.DataDefinition.FormulaFields["IEEmpresa"].Text = "\"" + dadosEmpresa.IeEmpresa + "\""; rpt.DataDefinition.FormulaFields["FoneEmpresa"].Text = "\"" + dadosEmpresa.FoneEmpresa + "\""; rpt.DataDefinition.FormulaFields["EnderecoEmpresa"].Text = "\"" + dadosEmpresa.RuaEmpresa + "\""; rpt.DataDefinition.FormulaFields["BairroEmpresa"].Text = "\"" + dadosEmpresa.BairroEmpresa + "\""; rpt.DataDefinition.FormulaFields["CidadeEmpresa"].Text = "\"" + Acesso.CIDADE_EMPRESA + " - " + Acesso.xUF + "\""; rpt.DataDefinition.FormulaFields["EmailEmpresa"].Text = "\"" + dadosEmpresa.EmailEmpresa + "\""; rpt.Refresh(); try { rpt.SetParameterValue("PathImage", Acesso.LOGOTIPO); } catch (System.Exception) { }; frmRelatorio frm = new frmRelatorio(rpt, "Impressão de Relatório de Nota Fiscal Eletrônica de Serviço"); frm.Show(); } else { belimpressao objbelimpressao = new belimpressao(); sListImpressao = objbelimpressao.BuscaDadosParaImpressao(sListImpressao); if (KryptonMessageBox.Show("Deseja enviar email da Nota para o Tomador ?", Mensagens.MSG_Confirmacao, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { if (Convert.ToBoolean(Acesso.EMAIL_AUTOMATICO)) { if (Acesso.VerificaDadosEmail()) { List<belEmail> objlbelEmail = new List<belEmail>(); for (int i = 0; i < sListImpressao.Count; i++) { belEmail objemail = new belEmail("", "", sListImpressao[i].sNfSeq, sListImpressao[i].sNota, "", sListImpressao[i].sVerificacao); objlbelEmail.Add(objemail); } if (objlbelEmail.Count > 0) { frmEmail objfrmEmail = new frmEmail(objlbelEmail, belEmail.TipoEmail.NF_Servico); objfrmEmail.ShowDialog(); } } else { KryptonMessageBox.Show("Campos para o envio de e-mail automático não estão preenchidos corretamente!", Mensagens.CHeader, MessageBoxButtons.OK, MessageBoxIcon.Information); } } } if (Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES) { for (int i = 0; i < sListImpressao.Count; i++) { System.Diagnostics.Process.Start("iexplore", "visualizar.ginfes" + (Acesso.TP_AMB_SERV == 2 ? "h" : "") + ".com.br/report/consultarNota?__report=nfs_ver4&cdVerificacao=" + sListImpressao[i].sVerificacao + "&numNota=" + sListImpressao[i].sNota); } } else { //https://spe.riodasostras.rj.gov.br/nfse/nfse.aspx?ccm=99999999&nf=999999999&cod=XXXXXXXX for (int i = 0; i < sListImpressao.Count; i++) { System.Diagnostics.Process.Start("iexplore", string.Format("https://spe.riodasostras.rj.gov.br/nfse/nfse.aspx?ccm=2747&nf={0}&cod={1}", sListImpressao[i].sNota, sListImpressao[i].sVerificacao.Replace("-", ""))); } } } } else { KryptonMessageBox.Show("Nenhuma nota Válida foi Selecionada", Mensagens.MSG_Aviso, MessageBoxButtons.OK, MessageBoxIcon.Information); } } } catch (Exception ex) { new HLPexception(ex); } }
private string GeraCorpoEmailNF_ServicoDSF(belEmail email) { try { StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se à Nota Fiscal Eletrônica de Serviços N° " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de NF-e</font>"); sCorpo.Append(AssinaturaEmail()); return sCorpo.ToString(); } catch (Exception ex) { throw ex; } }
private string GeraCorpoEmailNF_Servico(belEmail email) { try { string scaminhoLink = ""; if (Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES) { scaminhoLink = "visualizar.ginfes" + (Acesso.TP_AMB_SERV == 2 ? "h" : "") + ".com.br/report/consultarNota?__report=nfs_ver4&cdVerificacao=" + email.sCodigoVerificacaoNFservico + "&numNota=" + email.sSeq; } else { scaminhoLink = string.Format("https://spe.riodasostras.rj.gov.br/nfse/nfse.aspx?ccm=2747&nf={0}&cod={1}", email.sSeq, email.sCodigoVerificacaoNFservico.Replace("-", "")); } StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se à Nota Fiscal Eletrônica de Serviços N° " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Visualize a NF-e Serviço"); sCorpo.Append("<a href=" + scaminhoLink + ">aqui!</a><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de NF-e</font>"); sCorpo.Append(AssinaturaEmail()); return sCorpo.ToString(); } catch (Exception ex) { throw ex; } }
private string GeraCorpoEmailCCe(belEmail email) { try { string scaminhoLink = (Acesso.NM_RAMO != Acesso.BancoDados.TRANSPORTE) ? "https://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=" : "http://www.cte.fazenda.gov.br/consulta.aspx?tipoConsulta=completa&tipoConteudo=mCK/KoCqru0="; string sSistema = (Acesso.NM_RAMO != Acesso.BancoDados.TRANSPORTE) ? "NFe" : "CTe"; StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se a Carta de Correção Eletrônica efetuada na "); sCorpo.Append(sSistema + " de número " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Visualize a " + sSistema); sCorpo.Append(" <a href=" + scaminhoLink + ">aqui!</a><br>"); sCorpo.Append("Chave de Acesso: " + email.sChaveNFe + "<br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de " + sSistema + "</font>"); sCorpo.Append(AssinaturaEmail()); return sCorpo.ToString(); } catch (Exception x) { throw new Exception(x.Message); } }
private void EnviaEmail(List<DadosImpressao> objListDados) { try { if (Acesso.VerificaDadosEmail()) { List<belEmail> objlbelEmail = new List<belEmail>(); for (int i = 0; i < objListDados.Count; i++) { belEmail objemail = new belEmail(objListDados[i].sCaminhoXml, objListDados[i].sCaminhoPDF, objListDados[i].sNumeroCte, ""); objlbelEmail.Add(objemail); } if (objlbelEmail.Count > 0) { frmEmail objfrmEmail = new frmEmail(objlbelEmail, belEmail.TipoEmail.CTe); objfrmEmail.ShowDialog(); } } else { KryptonMessageBox.Show(null, "Campos para o envio de e-mail automático não estão preenchidos corretamente!", Mensagens.CHeader, MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception ex) { throw ex; } }
private string GeraCorpoEmail(belEmail email) { string Corpo = ""; switch (tipo) { case TipoEmail.CTe: Corpo = GeraCorpoEmailCte(email); break; case TipoEmail.NFe_Normal: Corpo = GeraCorpoEmailNfe_Normal(email); break; case TipoEmail.NFe_Cancelada: Corpo = GeraCorpoEmailNfe_Cancelada(email); break; case TipoEmail.CCe: Corpo = GeraCorpoEmailCCe(email); break; case TipoEmail.NF_Servico: Corpo = GeraCorpoEmailNF_Servico(email); break; case TipoEmail.NF_ServicoDSF: Corpo = GeraCorpoEmailNF_ServicoDSF(email); break; } return Corpo; }
void EnviaEmailTeste() { try { belEmail objEmail = new belEmail(); objEmail.EnviarEmailManual("*****@*****.**", "teste", "teste"); } catch (Exception ex) { throw new Exception("Configurações de email inválida." + Environment.NewLine + ex.Message); } }
private string GeraCorpoEmailCte(belEmail email) { try { XmlDocument xmldoc = new XmlDocument(); StringBuilder sCorpo = new StringBuilder(); xmldoc.Load(email.sCaminhoXml); XmlNodeList emit = xmldoc.GetElementsByTagName("emit"); string chave = xmldoc.GetElementsByTagName("infCte")[0].Attributes["Id"].Value.Replace("CTe", ""); string protocolo = ""; if (xmldoc.GetElementsByTagName("nProt")[0] != null) { protocolo = xmldoc.GetElementsByTagName("nProt")[0].InnerText; } sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se ao Conhecimento de Transporte Eletrônico número " + email.sSeq + " emitido por:<br><br>"); sCorpo.Append("Razão Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Para verificar o Conhecimento mencionado, "); sCorpo.Append("acesse o site https://www.cte.fazenda.gov.br/FormularioDePesquisa.aspx?tipoconsulta=resumo <br><br>"); sCorpo.Append("Chave de Acesso: " + chave + "<br>"); sCorpo.Append("Protocolo: " + protocolo + "<br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de CT-e</font>"); sCorpo.Append(AssinaturaEmail()); return sCorpo.ToString(); } catch (Exception ex) { throw new Exception(ex.Message); } }
private string GeraCorpoEmailNfe_Cancelada(belEmail email) { try { XmlDocument xmldoc = new XmlDocument(); xmldoc.Load(email.sCaminhoXml); string chave = xmldoc.GetElementsByTagName("infNFe")[0].Attributes["Id"].Value.Replace("NFe", ""); string protocolo = xmldoc.GetElementsByTagName("nProt")[0].InnerText; string scaminhoLink = "https://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8= "; StringBuilder sCorpo = new StringBuilder(); sCorpo.Append("<font face='Segoe UI' size='2'><H3>Sr. Contribuinte,</H3>"); sCorpo.Append("Esta mensagem refere-se ao CANCELAMENTO da Nota Fiscal Eletrônica de série/número " + email.sNotaFis + " emitida por: <br><br>"); sCorpo.Append("Razao Social: " + Acesso.NM_RAZAOSOCIAL + "<br>"); sCorpo.Append("CNPJ: " + Acesso.CNPJ_EMPRESA + "<br><br><br>"); sCorpo.Append("Visualize a NF-e "); sCorpo.Append("<a href=" + scaminhoLink + ">aqui!</a><br>"); sCorpo.Append("Chave de Acesso: " + chave + "<br>"); sCorpo.Append("Protocolo: " + protocolo + "<br><br>"); sCorpo.Append("Esse é um e-mail automático gerado por nosso sistema transmissor de NF-e</font>"); sCorpo.Append(AssinaturaEmail()); return sCorpo.ToString(); } catch (Exception x) { throw new Exception(x.Message); } }
private void EnviaEmailCCe(List<belPesquisaCCe> lsNotas) { if (Acesso.VerificaDadosEmail()) { List<belEmail> objlbelEmail = new List<belEmail>(); for (int i = 0; i < lsNotas.Count; i++) { belEmail objemail = new belEmail("", Pastas.CCe + "\\PDF\\" + lsNotas[i].CD_NOTAFIS + ".pdf", lsNotas[i].CD_NFSEQ, lsNotas[i].CD_NOTAFIS); objlbelEmail.Add(objemail); } if (objlbelEmail.Count > 0) { frmEmail objfrmEmail = new frmEmail(objlbelEmail, belEmail.TipoEmail.CCe); objfrmEmail.ShowDialog(); } } else { KryptonMessageBox.Show(null, "Campos para o envio de e-mail automático não estão preenchidos corretamente!", Mensagens.CHeader, MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void worker_DoWork(object sender, DoWorkEventArgs e) { belEmail send = new belEmail(tipo); List<belEmail> lEmail; string slblInfo = "Enviando {0} de {1} Email(s)..."; int i = 0; foreach (belEmail objEmail in objListaEmail) { try { lEmail = new List<belEmail>(); lEmail.Add(objEmail); send.EnviarEmail(lEmail); this.Invoke(new MethodInvoker(delegate() { lblInfo.Text = string.Format(slblInfo, (i + 1).ToString(), objListaEmail.Count()); lblInfo.Refresh(); })); i++; } catch (Exception ex) { new HLPexception(ex); } } this.Invoke(new MethodInvoker(delegate() { KryptonMessageBox.Show("E-mail(s) enviado(s) com sucesso!", Mensagens.CHeader, MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); })); }