private void Eventos() { KeyDown += KeyDowns; KeyPreview = true; Load += (s, e) => { DataTableStart(); }; //GridLista.DoubleClick += (s, e) => MessageBox.Show(""); btnHelp.Click += (s, e) => Support.OpenLinkBrowser(Configs.LinkAjuda); btnAdicionar.Click += (s, e) => { Model.Nota _notaCCe = new Model.Nota(); //_notaCCe = _notaCCe.Query().Where("status", "Transmitindo...").Where("id", idNota).Where("excluir", 0).FirstOrDefault<Model.Nota>(); _notaCCe = _notaCCe.Query().Where("status", "Transmitindo...").Where("id_pedido", idPedido).Where("excluir", 0).FirstOrDefault <Model.Nota>(); if (_notaCCe != null) { Alert.Message("Ação não permitida", "Existe outra CCe transmitindo", Alert.AlertType.warning); return; } CartaCorrecaoAdd f = new CartaCorrecaoAdd(); f.TopMost = true; if (f.ShowDialog() == DialogResult.OK) { p1 = 1; WorkerBackground2.RunWorkerAsync(); } }; btnRetransmitir.Click += (s, e) => { //validação de registro com status Transmitindo... p1 = 1; WorkerBackground2.RunWorkerAsync(); }; imprimir.Click += (s, e) => { imprimir.Text = "Imprimindo..."; p1 = 2; WorkerBackground2.RunWorkerAsync(); }; btnRemover.Click += (s, e) => { Model.Nota _notaCCe = new Model.Nota(); _notaCCe = _notaCCe.Query().Where("id", Convert.ToInt32(GridLista.SelectedRows[0].Cells["ID"].Value)).Where("excluir", 0).First <Model.Nota>(); if (_notaCCe.Status != "Transmitindo...") { Alert.Message("Ação não permitida", "Exclusão não realizada", Alert.AlertType.warning); return; } var result = AlertOptions.Message("Atenção!", "Você está prestes a deletar uma carta de correção, continuar?", AlertBig.AlertType.warning, AlertBig.AlertBtn.YesNo); if (result) { _notaCCe.Excluir = 1; _notaCCe.Save(_notaCCe); DataTableStart(); } }; GridLista.CellFormatting += (s, e) => { }; using (var b = WorkerBackground) { b.DoWork += async(s, e) => { dataTable = await _cNota.GetDataTable(idPedido, idNota); }; b.RunWorkerCompleted += async(s, e) => { await _cNota.SetTable(GridLista, idPedido, idNota); }; } using (var b = WorkerBackground2) { b.DoWork += async(s, e) => { switch (p1) { case 1: _msg = new Controller.Fiscal().EmitirCCe(idPedido, idNota); break; case 2: var msg = new Controller.Fiscal().ImprimirCCe(idPedido, idNota); if (!msg.Contains(".pdf")) { _msg = msg; } break; } }; b.RunWorkerCompleted += async(s, e) => { switch (p1) { case 1: if (_msg.Contains("AUTORIZADA")) { //Alert.Message("Tudo certo!", "Carta de correção autorizada", Alert.AlertType.success);//AlertOptions.Message("Tudo certo!", "Carta de correção autorizada", AlertBig.AlertType.success, AlertBig.AlertBtn.OK); //MessageBox.Show("Carta de correção autorizada"); retorno.Text = "Carta de correção autorizada"; } else { //Alert.Message("Opss", _msg, Alert.AlertType.error); //AlertOptions.Message("Opss", _msg, AlertBig.AlertType.error, AlertBig.AlertBtn.OK); //MessageBox.Show(_msg); retorno.Text = _msg; } break; case 2: imprimir.Text = "Imprimir"; break; } DataTableStart(); p1 = 0; }; } }
private void Eventos() { Back.Click += (s, e) => Close(); Emitir.Click += (s, e) => { //_mNota = new Model.Nota().FindByIdPedido(Id).FirstOrDefault<Model.Nota>(); if (_mNota.Status != "Pendente") { Alert.Message("Atenção!", "Não é possível emitir uma nota Autorizada/Cancelada.", Alert.AlertType.warning); return; } retorno.Text = "Emitindo NF-e .......................................... (1/2)"; Emitir.Enabled = false; WorkerBackground.RunWorkerAsync(); }; Imprimir.Click += (s, e) => { retorno.Text = new Controller.Fiscal().Imprimir(Id, "NFe", _mNota.Id); }; EnviarEmail.Click += (s, e) => { var checkNota = _mNota.FindByIdPedidoUltReg(Id, "", "NFe").FirstOrDefault <Model.Nota>(); if (checkNota.Status != "Autorizada") { Alert.Message("Ação não permitida!", "Não é possível enviar uma nota Pendente.", Alert.AlertType.warning); return; } _mNota = checkNota; CartaCorrecaoAdd.tela = "Email"; CartaCorrecaoAdd f = new CartaCorrecaoAdd(); f.TopMost = true; if (f.ShowDialog() == DialogResult.OK) { CartaCorrecaoAdd.tela = ""; justificativa = CartaCorrecaoAdd.justificativa; retorno.Text = "Enviando NF-e .......................................... (1/2)"; p1 = 5; WorkerBackground.RunWorkerAsync(); } }; using (var b = WorkerBackground) { b.DoWork += async(s, e) => { if (p1 == 5) { _msg = new Controller.Fiscal().EnviarEmail(Id, justificativa, "NFe", _mNota.Id); } else { _msg = new Controller.Fiscal().Emitir(Id, "NFe", _mNota.Id, false); } }; b.RunWorkerCompleted += async(s, e) => { p1 = 0; retorno.Text = _msg; Emitir.Enabled = true; }; } }
public void Eventos() { Load += (s, e) => { var nota = new Model.Nota().FindById(idNota).FirstOrDefault <Model.Nota>(); if (nota == null) { return; } nsefaz.Text = (!String.IsNullOrEmpty(nota.nr_Nota)) ? nota.nr_Nota : ""; serie.Text = (!String.IsNullOrEmpty(nota.Serie)) ? nota.Serie : ""; status.Text = (!String.IsNullOrEmpty(nota.Status)) ? nota.Status : ""; chavedeacesso.Text = (!String.IsNullOrEmpty(nota.ChaveDeAcesso)) ? nota.ChaveDeAcesso : ""; Emitir.Visible = false; }; btnDetalhes.Click += (s, e) => { //Nota.disableCampos = true; Nota.Id = idNota; Nota nota = new Nota(); nota.TopMost = true; nota.ShowDialog(); }; Emitir.Click += (s, e) => { //var checkNota = _modelNota.FindByIdPedido(idPedido).WhereNotNull("status").Where("nota.tipo", "NFe").FirstOrDefault(); //var checkNota = _modelNota.FindByIdPedidoUltReg(idPedido, "", "NFe").FirstOrDefault<Model.Nota>(); var checkNota = new Model.Nota().FindById(idNota).FirstOrDefault <Model.Nota>(); if (checkNota == null) { Model.Nota _modelNotaNova = new Model.Nota(); _modelNotaNova.Id = 0; _modelNotaNova.Tipo = "NFe"; _modelNotaNova.Status = "Pendente"; _modelNotaNova.id_pedido = idPedido; _modelNotaNova.Save(_modelNotaNova, false); checkNota = new Model.Nota().FindByIdPedidoUltReg(idPedido, "", "NFe").FirstOrDefault <Model.Nota>(); } if (checkNota.Status == "Cancelada") { if (Home.pedidoPage == "Notas") { Alert.Message("Atenção!", "Não é possível emitir uma nota Autorizada/Cancelada.", Alert.AlertType.warning); return; } var result = AlertOptions.Message("Atenção!", "Existem registro(s) de nota(s) cancelada(s) a partir desta venda. Deseja gerar um nova nota?", AlertBig.AlertType.warning, AlertBig.AlertBtn.YesNo); if (result) { Model.Nota _modelNotaNova = new Model.Nota(); _modelNotaNova.Id = 0; _modelNotaNova.Tipo = "NFe"; _modelNotaNova.Status = "Pendente"; _modelNotaNova.id_pedido = idPedido; _modelNotaNova.Save(_modelNotaNova, false); checkNota = new Model.Nota().FindByIdPedidoUltReg(idPedido, "", "NFe").FirstOrDefault <Model.Nota>(); } } if (checkNota.Status != "Pendente") { Alert.Message("Atenção!", "Não é possível emitir uma nota Autorizada/Cancelada.", Alert.AlertType.warning); return; } _modelNota = checkNota; retorno.Text = "Emitindo NF-e .......................................... (1/2)"; if (p1 == 0) { p1 = 1; WorkerBackground.RunWorkerAsync(); } else { Alert.Message("Ação não permitida", "Aguarde processo finalizar", Alert.AlertType.warning); } }; CartaCorrecao.Click += (s, e) => { //var checkNota = new Model.Nota().FindByIdPedidoUltReg(idPedido, "", "NFe").FirstOrDefault<Model.Nota>(); var checkNota = new Model.Nota().FindById(idNota).FirstOrDefault <Model.Nota>(); if (checkNota == null || checkNota?.Status != "Autorizada") { Alert.Message("Ação não permitida!", "Não é possível emitir uma Carta de Correção.", Alert.AlertType.warning); return; } _modelNota = checkNota; CartaCorrecao cce = new CartaCorrecao(); cce.TopMost = true; cce.Show(); Application.OpenForms["OpcoesNfeRapida"].Close(); }; Cancelar.Click += (s, e) => { //var checkNota = new Model.Nota().FindByIdPedidoUltReg(idPedido, "", "NFe").FirstOrDefault<Model.Nota>(); var checkNota = new Model.Nota().FindById(idNota).FirstOrDefault <Model.Nota>(); if (checkNota == null || checkNota?.Status != "Autorizada") { Alert.Message("Ação não permitida!", "Não é possível cancelar uma nota Pendente/Cancelada.", Alert.AlertType.warning); return; } _modelNota = checkNota; CartaCorrecaoAdd.tela = "Cancelar"; CartaCorrecaoAdd f = new CartaCorrecaoAdd(); f.TopMost = true; if (f.ShowDialog() == DialogResult.OK) { CartaCorrecaoAdd.tela = ""; justificativa = CartaCorrecaoAdd.justificativa; retorno.Text = "Cancelando NF-e .......................................... (1/2)"; p1 = 4; WorkerBackground.RunWorkerAsync(); } }; EnviarEmail.Click += (s, e) => { //var checkNota = new Model.Nota().FindByIdPedidoUltReg(idPedido, "", "NFe").FirstOrDefault<Model.Nota>(); var checkNota = new Model.Nota().FindById(idNota).FirstOrDefault <Model.Nota>(); if (checkNota == null || checkNota?.Status == "Pendente") { Alert.Message("Ação não permitida!", "Não é possível enviar uma nota Pendente.", Alert.AlertType.warning); return; } _modelNota = checkNota; CartaCorrecaoAdd.tela = "Email"; CartaCorrecaoAdd.idNota = idNota; CartaCorrecaoAdd f = new CartaCorrecaoAdd(); f.TopMost = true; if (f.ShowDialog() == DialogResult.OK) { CartaCorrecaoAdd.tela = ""; justificativa = CartaCorrecaoAdd.justificativa; retorno.Text = "Enviando NF-e .......................................... (1/2)"; p1 = 5; WorkerBackground.RunWorkerAsync(); } }; Imprimir.Click += (s, e) => { var checkNota = new Model.Nota().FindByIdPedidoUltReg(idPedido, "", "NFe").FirstOrDefault <Model.Nota>(); if (checkNota == null || checkNota?.Status == "Pendente") { Alert.Message("Opps!", "Emita a nota para imprimir.", Alert.AlertType.warning); return; } _modelNota = checkNota; retorno.Text = "Imprimindo NF-e .......................................... (1/2)"; if (p1 == 0) { p1 = 2; WorkerBackground.RunWorkerAsync(); } else { Alert.Message("Ação não permitida", "Aguarde processo finalizar", Alert.AlertType.warning); } }; using (var b = WorkerBackground) { b.DoWork += async(s, e) => { switch (p1) { case 1: //_modelNota = _modelNota.FindByIdPedido(idPedido).FirstOrDefault<Model.Nota>(); //if (_modelNota == null) //{ // _modelNota.Id = 0; // _modelNota.id_pedido = idPedido; // _modelNota.Save(_modelNota); //} _msg = new Controller.Fiscal().Emitir(idPedido, "NFe", _modelNota.Id); break; case 2: if (IniFile.Read("NFe", "APP") != "Uninfe") { var msg = new Controller.Fiscal().Imprimir(idPedido, "NFe", _modelNota.Id); if (!msg.Contains(".pdf")) { _msg = msg; } } else { EmissorImprimirDanfe(); } break; case 3: //_msg = new Controller.Fiscal().EmitirCCe(idPedido, "Nota gerada com informacoes incorretas, por gentileza verificar as corretas"); break; case 4: if (justificativa.Length <= 15) { break; } _msg = new Controller.Fiscal().Cancelar(idPedido, "NFe", justificativa, _modelNota.Id); break; case 5: _msg = new Controller.Fiscal().EnviarEmail(idPedido, justificativa, "NFe", _modelNota.Id); break; } }; b.RunWorkerCompleted += async(s, e) => { p1 = 0; if (!String.IsNullOrEmpty(_msg)) { retorno.Text = _msg; } }; } FormClosing += (s, e) => { OpcoesNfeRapida.idPedido = 0; OpcoesNfeRapida.idNota = 0; }; }