public bool Update(FecCaixa fecCaixa)
        {
            try
            {
                new PetaPoco.Database("stringConexao").Update(fecCaixa, fecCaixa.id);
            }
            catch (Exception)
            {
                return(false);
            }

            return(true);
        }
        private void Inicia_Tab_FecCaixa()
        {
            try
            {
                //fecCaixa = fecCaixaoDao.getFecCaixa_do_Dia_F(Usuario.getInstance.loja);
                fecCaixa = fecCaixaoDao.getFecCaixa_do_Dia_F();

                //valor fixo
                txtVal_DinheiroF.Text = fecCaixa.val_dinheirof.ToString("0.00");
                txtVal_DebitoF.Text   = fecCaixa.val_debitof.ToString("0.00");
                txtVal_CreditoF.Text  = fecCaixa.val_creditof.ToString("0.00");
                txtVal_OutrosF.Text   = fecCaixa.val_outrosf.ToString("0.00");

                //diferença
                txtVal_DinheiroDIF.Text = fecCaixa.val_dinheirof.ToString("0.00");
                txtVal_DebitoDIF.Text   = fecCaixa.val_debitof.ToString("0.00");
                txtVal_CreditoDIF.Text  = fecCaixa.val_creditof.ToString("0.00");
                txtVal_OutrosDIF.Text   = fecCaixa.val_outrosf.ToString("0.00");

                txtDevolucao.Text = (fecCaixa.Devolucao * -1).ToString("0.00");

                //Total do Sistema abatendo a devolução
                txtTotalFixo.Text = ((fecCaixa.val_dinheirof + fecCaixa.val_debitof + fecCaixa.val_creditof + fecCaixa.val_outrosf) - fecCaixa.Devolucao).ToString("0.00");

                fecCaixa = null;

                fecCaixa = new FecCaixa();
                fecCaixa = fecCaixaoDao.getFecCaixa_do_Dia_User(Usuario.getInstance.loja);
                if (fecCaixa != null)
                {
                    txtVal_DinheiroUser.Text = fecCaixa.val_dinheirouser.ToString("0.00");
                    txtVal_DebitoUser.Text   = fecCaixa.val_debitouser.ToString("0.00");
                    txtVal_CreditoUser.Text  = fecCaixa.val_creditouser.ToString("0.00");
                    txtVal_OutrosUser.Text   = fecCaixa.val_outrosuser.ToString("0.00");
                    //Total do usuário
                    txtTotalUsuario.Text = (fecCaixa.val_dinheirouser + fecCaixa.val_debitouser + fecCaixa.val_creditouser + fecCaixa.val_outrosuser).ToString("0.00");

                    txtObs.Text = fecCaixa.observacao;

                    ret = true;
                }

                //Total diferença
                txtTotalDiferenca.Text = (Convert.ToDecimal(txtTotalFixo.Text) - Convert.ToDecimal(txtTotalUsuario.Text)).ToString("0.00");
            }
            catch (Exception)
            {
                MessageBox.Show("Erro ao buscar os valores do ´Fechamento de Caixa´, informe imediatamnente ao administrador do sistema!", "Mensagem - Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        public bool InsertFecCaixa(FecCaixa fecCaixa)
        {
            try
            {
                //return (new PetaPoco.Database("stringConexao")).Insert("Movdb", "NumDoc", true, pedido);
                (new PetaPoco.Database("stringConexao")).Insert(fecCaixa);

                return(true);
            }
            catch (Exception)
            {
                throw;
            }

            return(false);
        }
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                //
                if (lstvwProduto.Items.Count == 0)
                {
                    if (MessageBox.Show("Confirma que não houve Perdas do Dia ?", "Atenção", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.No)
                    {
                        return;
                    }
                }


                var fecCaixaSalvar = new FecCaixa();

                fecCaixaSalvar.data     = DateTime.Now;
                fecCaixaSalvar.coduser  = Usuario.getInstance.codUser;
                fecCaixaSalvar.nomeuser = Usuario.getInstance.nomeUser;

                // Valores informados pelo sistema
                fecCaixaSalvar.val_dinheirof = Convert.ToDecimal(txtVal_DinheiroF.Text.Trim());
                fecCaixaSalvar.val_debitof   = Convert.ToDecimal(txtVal_DebitoF.Text.Trim());
                fecCaixaSalvar.val_creditof  = Convert.ToDecimal(txtVal_CreditoF.Text.Trim());
                fecCaixaSalvar.val_outrosf   = Convert.ToDecimal(txtVal_OutrosF.Text.Trim());
                //  Valores informados pelo Usuário
                fecCaixaSalvar.val_dinheirouser = Convert.ToDecimal(txtVal_DinheiroUser.Text.Trim());
                fecCaixaSalvar.val_debitouser   = Convert.ToDecimal(txtVal_DebitoUser.Text.Trim());
                fecCaixaSalvar.val_creditouser  = Convert.ToDecimal(txtVal_CreditoUser.Text.Trim());
                fecCaixaSalvar.val_outrosuser   = Convert.ToDecimal(txtVal_OutrosUser.Text.Trim());
                // Diferenças
                fecCaixaSalvar.diferencaDinheiro = Convert.ToDecimal(txtVal_DinheiroDIF.Text.Trim());
                fecCaixaSalvar.diferencaDebito   = Convert.ToDecimal(txtVal_DebitoDIF.Text.Trim());
                fecCaixaSalvar.diferencaCredito  = Convert.ToDecimal(txtVal_CreditoDIF.Text.Trim());
                fecCaixaSalvar.diferencaOutros   = Convert.ToDecimal(txtVal_OutrosDIF.Text.Trim());
                // Observação
                fecCaixaSalvar.observacao = txtObs.Text.Trim();

                if (Usuario.getInstance.loja.Equals(0))
                {
                    fecCaixaSalvar.loja = 0;
                }
                else
                {
                    fecCaixaSalvar.loja = 1;
                }


                if (ret)
                {
                    fecCaixaSalvar.id = fecCaixaoDao.get_id_FecCaixa_do_Dia_User(Usuario.getInstance.loja);
                    if (fecCaixaoDao.Update(fecCaixaSalvar))
                    {
                        //MessageBox.Show("Fechamento de caixa atualizado com sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        msg = "Fechamento de caixa atualizado com sucesso!";
                    }
                }
                else
                {
                    ret = fecCaixaoDao.InsertFecCaixa(fecCaixaSalvar);

                    if (ret)
                    {
                        msg = "Fechamento de caixa inserido com sucesso!";
                    }
                    //MessageBox.Show("Fechamento de caixa inserido com sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

                fecCaixaSalvar = null;
            }
            catch (Exception ex)
            {
                MessageBox.Show("Houve um erro inesperado ao salvar o fechamento de caixa no banco de dados" + Environment.NewLine + "Informe imediatamente ao administrador do sistema" + Environment.NewLine + "Erro: " + ex.Message, "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            if (lstvwProduto.Items.Count > 0)
            {
                FinalizaPerdasDoDia();
            }

            EnviaRelatorioPorEmail();

            MessageBox.Show(msg, "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }