private void button1_Click(object sender, EventArgs e)
        {
            List <RegistrosModel> list = new List <RegistrosModel>();

            if (String.IsNullOrEmpty(_id))
            {
                list = SqliteDataAccess.CarregaPagamentoByPlaca(txtPlaca.Text);
            }
            else
            {
                list = SqliteDataAccess.CarregaPagamento(_id);
            }

            if (list.Count == 0 || (list.Count == 1 && list[0].data_saida != DateTime.MinValue))
            {
                _listRegistro = list;
                btnImprimirSegundaVia.Visible = true;
                btnRegSaida.Enabled           = false;
                //btnRegSaida.ForeColor = Color.Gray;
                MessageBox.Show("Veículo de Placa '" + txtPlaca.Text + "' não se encontra mais no pátio!");
            }

            else if (!_confirma)
            {
                btnRegSaida.Enabled = true;
                _confirma           = true;
                RegistrosModel registro = _listRegistro[0];
                registro.data_saida  = DateTime.Now;
                registro.total_pagar = (int)_valor;

                bool result = SqliteDataAccess.RegistraSaida(registro);

                if (!result)
                {
                    MessageBox.Show("Não foi possível registrar a saída da placa '" + txtPlaca.Text + "'.");
                }
                else
                {
                    PrintDocument pd = new PrintDocument();
                    _printFont    = new Font("Arial", 10);
                    pd.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);
                    pd.Print();
                    _confirma = false;
                    _returnParam.Invoke();

                    Log(registro.id.ToString() + "|" + registro.impresso.ToString() + "|" + registro.placa.ToString() + "|" + registro.tipo.ToString() + "|" + registro.total_pagar.ToString() + "|" + registro.data_entrada.ToString() + "|" + registro.data_saida.ToString(), txtPlaca.Text);
                }
            }
        }
        protected void ReturnFunc(string tipo)
        {
            _confirma = false;

            //Insere Cupom
            RegistrosModel registro = new RegistrosModel();

            registro.placa = txtPlaca.Text;
            //registro.entrada_saida = "1";
            registro.tipo         = Convert.ToInt32(tipo) + 1;
            registro.data_entrada = DateTime.Now;
            registro.impresso     = 0;

            bool result = SqliteDataAccess.ExistePlacaEntrada(txtPlaca.Text);

            if (result)
            {
                MessageBox.Show("A Placa '" + txtPlaca.Text + "' já se encontra no Pátio. Favor registrar Saída(F3) primeiro.");
            }
            else
            {
                result = SqliteDataAccess.InsereCupom(registro);

                if (!result)
                {
                    MessageBox.Show("Erro ao dar Entrada na placa " + txtPlaca.Text);
                }
                else
                {
                    //Imprime Cupom
                    PrintDocument pd = new PrintDocument();
                    _printFont    = new Font("Arial", 10);
                    pd.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);
                    pd.Print();
                    _returnParam.Invoke();

                    Log(registro.id.ToString() + "|" + registro.impresso.ToString() + "|" + registro.placa.ToString() + "|" + registro.tipo.ToString() + "|" + registro.total_pagar.ToString() + "|" + registro.data_entrada.ToString() + "|" + registro.data_saida.ToString(), txtPlaca.Text);
                }
            }
        }