public void FechaVendaComProblemas() { // altera o status da venda para C Sessao.Instance.VendaAtual.StatusVenda = "C"; Caixa.ConcluiEncerramentoVenda(); // grava os pagamentos no banco de dados com o indicador de estorno for (int i = 0; i <= ListaTotalTipoPagamento.Count - 1; i++) { ListaTotalTipoPagamento[i].Estorno = "S"; } EcfTotalTipoPagamentoController.GravaEcfTotalTipoPagamentoLista(ListaTotalTipoPagamento); }
private void listaSupervisor_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Escape) { this.Close(); } if (e.KeyCode == Keys.Enter) { // inicia movimento if (listaSupervisor.SelectedIndex == 0) { Caixa.IniciaMovimento(); } // encerra movimento if (listaSupervisor.SelectedIndex == 1) { Caixa.EncerraMovimento(); } // suprimento if (listaSupervisor.SelectedIndex == 3) { Caixa.Suprimento(); } // sangria if (listaSupervisor.SelectedIndex == 4) { Caixa.Sangria(); } // Reducao Z if (listaSupervisor.SelectedIndex == 6) { if (MessageBox.Show("Tem Certeza Que Deseja Executar a Reducao Z?" + "\r" + "\r" + "O Movimento da Impressora será Suspenso no dia de Hoje.", "Reducao Z", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { ECFUtil.ReducaoZ(); } finally { Caixa.TelaPadrao(); } } } } }
public void FinalizaVenda() { ImpressaoOK = true; // subtotaliza o cupom SubTotalizaCupom(); // manda os pagamentos para o ECF if (TransacaoComTef) { OrdenaLista(); } for (int i = 0; i <= ListaTotalTipoPagamento.Count - 1; i++) { if (ListaTotalTipoPagamento[i].EcfTipoPagamento.Tef != "S") { DataModule.ACBrECF.EfetuaPagamento(ListaTotalTipoPagamento[i].EcfTipoPagamento.Codigo, ListaTotalTipoPagamento[i].Valor.Value); } } // Descomente para bloquear teclado e mouse //BlockInput.Bloquear(true); // finaliza o cupom ACBrTEFD.FinalizarCupom(); // imprime as transacoes pendentes - comprovantes nao fiscais vinculados ACBrTEFD.ImprimirTransacoesPendentes(); // Descomente para bloquear teclado e mouse //BlockInput.Bloquear(false); if (ImpressaoOK) { // grava os pagamentos no banco de dados EcfTotalTipoPagamentoController.GravaEcfTotalTipoPagamentoLista(ListaTotalTipoPagamento); // conclui o encerramento da venda - grava dados de cabecalho no banco Sessao.Instance.VendaAtual.ValorFinal = TotalReceber; Sessao.Instance.VendaAtual.ValorRecebido = TotalRecebido; Sessao.Instance.VendaAtual.Troco = Troco; Sessao.Instance.VendaAtual.StatusVenda = "F"; Sessao.Instance.StatusCaixa = Tipos.StatusCaixa.scAberto; Caixa.ConcluiEncerramentoVenda(); // usado quando a gaveta tem sinal invertido if (Sessao.Instance.Configuracao.GavetaSinalInvertido == "S") { DataModule.ACBrECF.GavetaSinalInvertido = true; } if (Sessao.Instance.Configuracao.GavetaUtilizacao > 0) { DataModule.ACBrECF.AbreGaveta(); } PodeFechar = true; this.Close(); } else { if (CupomCancelado) //ocorreu problema na impressao do comprovante do TEF. ECF Desligado. //Sistema pergunta ao usuário se o mesmo quer tentar novamente. Usuário responde não. //ECF agora está ligado e o sistema consegue cancelar o cupom. { MessageBox.Show("Problemas no ECF. Cupom Fiscal Cancelado.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); Sessao.Instance.VendaAtual.CupomCancelado = "S"; Sessao.Instance.StatusCaixa = Tipos.StatusCaixa.scAberto; FechaVendaComProblemas(); PodeFechar = true; this.Close(); } else //ocorreu problema na impressao do comprovante do TEF. ECF Desligado. //Sistema pergunta ao usuário se o mesmo quer tentar novamente. Usuário responde não. //ECF continua desligado e o sistema não consegue cancelar o cupom. { MessageBox.Show("Problemas no ECF. Aplicação funcionará apenas para consulta.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); Sessao.Instance.StatusCaixa = Tipos.StatusCaixa.scSomenteConsulta; FechaVendaComProblemas(); PodeFechar = true; this.Close(); } } }
private void listaGerente_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Escape) { this.Close(); } if (e.KeyCode == Keys.Enter) { // inicia movimento if (listaGerente.SelectedIndex == 0) { Caixa.IniciaMovimento(); } // encerra movimento if (listaGerente.SelectedIndex == 1) { Caixa.EncerraMovimento(); } // suprimento if (listaGerente.SelectedIndex == 3) { Caixa.Suprimento(); } // sangria if (listaGerente.SelectedIndex == 4) { Caixa.Sangria(); } // Reducao Z if (listaGerente.SelectedIndex == 6) { if (MessageBox.Show("Tem Certeza Que Deseja Executar a Reducao Z?" + "\r" + "\r" + "O Movimento da Impressora será Suspenso no dia de Hoje.", "Reducao Z", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { ECFUtil.ReducaoZ(); } finally { Caixa.TelaPadrao(); } } } // consultar cliente if (listaGerente.SelectedIndex == 8) { ImportaCliente FImportaCliente = new ImportaCliente(); ImportaCliente.QuemChamou = "SUBMENU"; FImportaCliente.ShowDialog(); } // funções administrativas do TEF if (listaGerente.SelectedIndex == 10) { EfetuaPagamento FEfetuaPagamento = new EfetuaPagamento(); try { EfetuaPagamento.ACBrTEFD.Initializar(ACBrFramework.TEFD.TefTipo.TefDial); EfetuaPagamento.ACBrTEFD.ADM(ACBrFramework.TEFD.TefTipo.TefDial); } catch (Exception eError) { Log.write(eError.ToString()); MessageBox.Show("Problemas no GP TEFDIAL.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); } FEfetuaPagamento.Dispose(); } // Importar Tabelas com Dispositivo (pen-drive) if (listaGerente.SelectedIndex == 12) { PenDrive FPenDrive = new PenDrive(); PenDrive.Rotina = "IMPORTA"; FPenDrive.ShowDialog(); } // Exportar Tabelas com Dispositivo (pen-drive) if (listaGerente.SelectedIndex == 13) { PenDrive FPenDrive = new PenDrive(); PenDrive.Rotina = "EXPORTA"; FPenDrive.ShowDialog(); } } }
private void listaMenuOperacoes_KeyDown(object sender, KeyEventArgs e) { string RegistraPreVenda = ""; try { XmlDocument ArquivoXML = new XmlDocument(); ArquivoXML.Load(Application.StartupPath + "\\ArquivoAuxiliar.xml"); RegistraPreVenda = Biblioteca.Desencripta(ArquivoXML.GetElementsByTagName("registraPreVenda").Item(0).InnerText.Trim()); } catch (Exception eError) { Log.write(eError.ToString()); } if (e.KeyCode == Keys.Escape) { this.Close(); } if (e.KeyCode == Keys.Enter) { if (RegistraPreVenda == "REGISTRA") { // carrega pre-venda if (listaMenuOperacoes.SelectedIndex == 0) { if (Sessao.Instance.StatusCaixa == Tipos.StatusCaixa.scAberto) { ImportaNumero FImportaNumero = new ImportaNumero(); FImportaNumero.Text = "Carrega Pre-Venda"; ImportaNumero.LabelEntrada.Text = "Informe o numero da Pre-Venda"; try { if (FImportaNumero.ShowDialog() == DialogResult.OK) { this.Close(); Caixa.CarregaPreVenda(ImportaNumero.EditEntrada.Text); } } catch (Exception eError) { Log.write(eError.ToString()); } } // if StatusCaixa = 0 then else { MessageBox.Show("Já existe uma venda em andamento.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } else { MessageBox.Show("Sistema não está configurado para operações com Pré-Vendas.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); } // carrega dav if (listaMenuOperacoes.SelectedIndex == 1) { if (Sessao.Instance.StatusCaixa == Tipos.StatusCaixa.scAberto) { ImportaNumero FImportaNumero = new ImportaNumero(); FImportaNumero.Text = "Carrega DAV"; ImportaNumero.LabelEntrada.Text = "Informe o numero do DAV"; try { if (FImportaNumero.ShowDialog() == DialogResult.OK) { this.Close(); Caixa.CarregaDAV(ImportaNumero.EditEntrada.Text); } } catch (Exception eError) { Log.write(eError.ToString()); } } // if StatusCaixa = 0 then else { MessageBox.Show("Já existe uma venda em andamento.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); } } } }