Пример #1
0
        public void FechaVendaComProblemas()
        {
            // altera o status da venda para C
            FCaixa.VendaCabecalho.StatusVenda = "C";
            FCaixa.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";
            }
            TotalTipoPagamentoController.GravaTotaisVenda(ListaTotalTipoPagamento);
        }
Пример #2
0
        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)
                {
                    FCaixa.IniciaMovimento();
                }
                //  encerra movimento
                if (listaSupervisor.SelectedIndex == 1)
                {
                    FCaixa.EncerraMovimento();
                }
                //  suprimento
                if (listaSupervisor.SelectedIndex == 3)
                {
                    FCaixa.Suprimento();
                }
                //  sangria
                if (listaSupervisor.SelectedIndex == 4)
                {
                    FCaixa.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
                        {
                            UECF.ReducaoZ();
                        }
                        finally
                        {
                            FCaixa.TelaPadrao(2);
                        }
                    }
                }
            }
        }
Пример #3
0
        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 (FCaixa.StatusCaixa == 0)
                        {
                            FImportaNumero FImportaNumero = new FImportaNumero();
                            FImportaNumero.Text = "Carrega Pre-Venda";
                            FImportaNumero.LabelEntrada.Text = "Informe o numero da Pre-Venda";
                            try
                            {
                                if (FImportaNumero.ShowDialog() == DialogResult.OK)
                                {
                                    this.Close();
                                    FCaixa.CarregaPreVenda(FImportaNumero.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);
                        }
                    }


                    //  mesclar pre-venda
                    if (listaMenuOperacoes.SelectedIndex == 1)
                    {
                        FMesclaPreVenda FMesclaPreVenda = new FMesclaPreVenda();
                        FMesclaPreVenda.ShowDialog();
                        this.Close();
                    }


                    //  cancela pre-venda
                    if (listaMenuOperacoes.SelectedIndex == 2)
                    {
                        FCancelaPreVenda FCancelaPreVenda = new FCancelaPreVenda();
                        FCancelaPreVenda.ShowDialog();
                    }
                }
                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 == 3)
                {
                    if (FCaixa.StatusCaixa == 0)
                    {
                        FCarregaDAV FCarregaDAV = new FCarregaDAV();
                        try
                        {
                            if (FCarregaDAV.ShowDialog() == DialogResult.OK)
                            {
                                this.Close();
                                FCaixa.CarregaDAV(FCarregaDAV.NumeroSelecionado);
                            }
                        }
                        catch (Exception eError)
                        {
                            Log.write(eError.ToString());
                        }
                    }
                    else
                    {
                        MessageBox.Show("Ja existe uma venda em andamento.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }


                //  mesclar DAVs
                if (listaMenuOperacoes.SelectedIndex == 4)
                {
                    FMesclaDAV FMesclaDAV = new FMesclaDAV();
                    FMesclaDAV.ShowDialog();
                    this.Close();
                }
            }
        }
Пример #4
0
        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)
                {
                    FCaixa.IniciaMovimento();
                }
                //  encerra movimento
                if (listaGerente.SelectedIndex == 1)
                {
                    FCaixa.EncerraMovimento();
                }
                //  suprimento
                if (listaGerente.SelectedIndex == 3)
                {
                    FCaixa.Suprimento();
                }
                //  sangria
                if (listaGerente.SelectedIndex == 4)
                {
                    FCaixa.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
                        {
                            UECF.ReducaoZ();
                        }
                        finally
                        {
                            FCaixa.TelaPadrao(2);
                        }
                    }
                }

                //  consultar cliente
                if (listaGerente.SelectedIndex == 8)
                {
                    FImportaCliente FImportaCliente = new FImportaCliente();
                    FImportaCliente.QuemChamou = "SUBMENU";
                    FImportaCliente.ShowDialog();
                }
                //  configuracao do sistema
                if (listaGerente.SelectedIndex == 10)
                {
                    /*
                     * Utilize o Sistema Configurador
                     * FConfiguracao FConfiguracao = new FConfiguracao();
                     * FConfiguracao.ShowDialog();
                     */
                }
                //  funções administrativas do TEF Discado
                if (listaGerente.SelectedIndex == 12)
                {
                    FEfetuaPagamento FEfetuaPagamento = new FEfetuaPagamento();
                    try
                    {
                        FEfetuaPagamento.ACBrTEFD.Initializar(ACBrFramework.TEFD.TefTipo.TefDial);
                        FEfetuaPagamento.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();
                }
                //  funções administrativas do TECBAN
                if (listaGerente.SelectedIndex == 13)
                {
                    FEfetuaPagamento FEfetuaPagamento = new FEfetuaPagamento();
                    try
                    {
                        FEfetuaPagamento.ACBrTEFD.Initializar(ACBrFramework.TEFD.TefTipo.TefDisc);
                        FEfetuaPagamento.ACBrTEFD.ADM(ACBrFramework.TEFD.TefTipo.TefDisc);
                    }
                    catch (Exception eError)
                    {
                        Log.write(eError.ToString());
                        MessageBox.Show("Problemas no GP TECBAN.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    FEfetuaPagamento.Dispose();
                }
                //  funções administrativas do HIPER
                if (listaGerente.SelectedIndex == 14)
                {
                    FEfetuaPagamento FEfetuaPagamento = new FEfetuaPagamento();
                    try
                    {
                        FEfetuaPagamento.ACBrTEFD.Initializar(ACBrFramework.TEFD.TefTipo.HiperTef);
                        FEfetuaPagamento.ACBrTEFD.ADM(ACBrFramework.TEFD.TefTipo.HiperTef);
                    }
                    catch (Exception eError)
                    {
                        Log.write(eError.ToString());
                        MessageBox.Show("Problemas no GP HIPER.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    FEfetuaPagamento.Dispose();
                }

                //  Importar Tabelas com Dispositivo (pen-drive)
                if (listaGerente.SelectedIndex == 16)
                {
                    FPenDrive FPenDrive = new FPenDrive();
                    FPenDrive.Rotina = "IMPORTA";
                    FPenDrive.ShowDialog();
                }

                //  Exportar Tabelas com Dispositivo (pen-drive)
                if (listaGerente.SelectedIndex == 17)
                {
                    FPenDrive FPenDrive = new FPenDrive();
                    FPenDrive.Rotina = "EXPORTA";
                    FPenDrive.ShowDialog();
                }
            }
        }
Пример #5
0
        public void FinalizaVenda()
        {
            ImpressaoOK = true;

            // subtotaliza o cupom
            SubTotalizaCupom();

            // manda os pagamentos para o ECF
            if (TransacaoComTef)
            {
                OrdenaLista();
            }

            TotalTipoPagamentoVO TotalTipoPagamento = new TotalTipoPagamentoVO();

            for (int i = 0; i <= ListaTotalTipoPagamento.Count - 1; i++)
            {
                TotalTipoPagamento = ListaTotalTipoPagamento[i];
                if (TotalTipoPagamento.TemTEF != "S")
                {
                    FDataModule.ACBrECF.EfetuaPagamento(TotalTipoPagamento.CodigoPagamento, TotalTipoPagamento.Valor);
                }
            }

            //TODO:  Descomente para bloquear teclado e mouse
            //BlockInput.Bloquear(true);

            // finaliza o cupom
            ACBrTEFD.FinalizarCupom();

            // imprime as transacoes pendentes - comprovantes nao fiscais vinculados
            ACBrTEFD.ImprimirTransacoesPendentes();

            //TODO:  Descomente para bloquear teclado e mouse
            //BlockInput.Bloquear(false);

            if (ImpressaoOK)
            {
                // grava os pagamentos no banco de dados
                TotalTipoPagamentoController.GravaTotaisVenda(ListaTotalTipoPagamento);

                // conclui o encerramento da venda - grava dados de cabecalho no banco
                FCaixa.VendaCabecalho.ValorFinal    = TotalReceber;
                FCaixa.VendaCabecalho.ValorRecebido = TotalRecebido;
                FCaixa.VendaCabecalho.Troco         = Troco;
                FCaixa.VendaCabecalho.StatusVenda   = "F";
                FCaixa.StatusCaixa = 0;
                FCaixa.ConcluiEncerramentoVenda();

                //  usado quando a gaveta tem sinal invertido
                if (FCaixa.Configuracao.SinalInvertido == 1)
                {
                    FDataModule.ACBrECF.GavetaSinalInvertido = true;
                }

                if (FCaixa.Configuracao.GavetaDinheiro > 0)
                {
                    FDataModule.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);
                    FCaixa.ProblemaNoPagamento = true;
                    FCaixa.VendaCabecalho.CupomFoiCancelado = "S";
                    FCaixa.StatusCaixa = 0;
                    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);
                    FCaixa.StatusCaixa = 3;
                    FechaVendaComProblemas();
                    PodeFechar = true;
                    this.Close();
                }
            }
        }