Exemplo n.º 1
0
        public frmVisualizaNfsSusesu(belNFesSusesu objNfes)
        {
            InitializeComponent();

            btnPrimeiro.Visible = false;
            btnProximo.Visible = false;
            btnUltimo.Visible = false;
            btnAnterior.Visible = false;
            lblContagemNotas.Visible = false;
            toolStripSeparator1.Visible = false;

            cbxLocExec.cbx.DataSource = dao.daoUtil.GetCidades();
            cbxLocExec.cbx.DisplayMember = "xMunicipio";
            cbxLocExec.cbx.ValueMember = "idMunicipio";
            cbxLocExec.cbx.SelectedIndexChanged += new EventHandler(cbx_SelectedIndexChanged);

            listErros.ListBox.MouseDoubleClick += new MouseEventHandler(listErros_MouseDoubleClick);
            this.objNfes = objNfes;
            objNfesAlter = objNfes;
            ValidaNota();
            PopulaForm();
            VerificaCampos();

        }
Exemplo n.º 2
0
        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);
            }
        }
Exemplo n.º 3
0
 public override void Cancelar()
 {
     try
     {
         if (KryptonMessageBox.Show("Deseja Cancelar as Alterações Realizadas?", Mensagens.MSG_Confirmacao, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
         {
             objNfesAlter = objNfes;
             PopulaForm();
             VerificaCampos();
             base.Cancelar();
         }
     }
     catch (Exception ex)
     {
         new HLPexception(ex);
     }
 }