Esempio n. 1
0
        /// <summary>
        /// Adiciona um movimento de entrada a cada
        /// Toda venda realizada ou cancelada invoca esse metodo
        /// </summary>
        /// <param name="venda"></param>
        public void AddMovimentoVenda(Venda venda, TypeMovimentacaoMonetaria tipoMov)
        {
            string         hist = tipoMov.ToString() + " Venda Nº: " + venda.IdVenda;
            MovimentoCaixa mov  = new MovimentoCaixa(venda, tipoMov, hist);

            this.AddMovimentoCaixa(mov);
        }
Esempio n. 2
0
        /// <summary>
        /// Adiciona um movimento no caixa
        /// </summary>

        public bool AddMovimentoCaixa(MovimentoCaixa movimento)
        {
            using (var ctx = new BalcaoContext())
            {
                return(ctx.MovimentoCaixaDao.Save(movimento));
            }
        }
Esempio n. 3
0
        private void Fecha()
        {
            CaixaBLL bll = new CaixaBLL();
            Caixa    cx  = bll.GetCaixaAberto();

            cx = bll.Find(cx.Id);
            cx.DataFechamento = DateTime.Now;

            SalvaTxt(cx);

            MovimentoCaixa mc = new MovimentoCaixa();

            mc.CaixaId        = cx.Id;
            mc.Valor          = decimal.Parse(txValorFinal.Text.Replace("R$", ""));
            mc.Obs            = "Fechamento do caixa";
            mc.FormaPagamento = (int)FormaPagamento.DINHEIRO;
            mc.Tipo           = (int)TipoMovCaixa.Saida;

            MovimentoCaixaBLL mcBll = new MovimentoCaixaBLL();

            mcBll.Save(mc);

            cx = bll.Find(cx.Id);
            cx.DataFechamento = DateTime.Now;
            cx.Aberto         = false;
            bll.Save(cx);
        }
Esempio n. 4
0
        public static MovimentoCaixa ToBd(this MovimentoCaixaDao movimentoCaixaDao)
        {
            var movimentoCaixa = new MovimentoCaixa();

            movimentoCaixa.MovimentoCaixaID = movimentoCaixaDao.MovimentoCaixaID;
            movimentoCaixa.DataMovimento    = movimentoCaixaDao.DataMovimento;
            movimentoCaixa.LojaID           = movimentoCaixaDao.LojaDao.LojaID;
            movimentoCaixa.Valor            = movimentoCaixaDao.Valor;

            if (movimentoCaixaDao.MovimentoCaixaStatusDao != null && movimentoCaixaDao.MovimentoCaixaStatusDao.MovimentoCaixaStatusID > 0)
            {
                movimentoCaixa.MovimentoCaixaStatusID = movimentoCaixaDao.MovimentoCaixaStatusDao.MovimentoCaixaStatusID;
            }

            if (movimentoCaixaDao.DataRecebimento.GetValueOrDefault() != DateTime.MinValue)
            {
                movimentoCaixa.DataRecebimento = movimentoCaixaDao.DataRecebimento;
            }

            if (movimentoCaixaDao.UsuarioRecebimento != null && movimentoCaixaDao.UsuarioRecebimento.UsuarioID > 0)
            {
                movimentoCaixa.UsuarioRecebimentoID = movimentoCaixaDao.UsuarioRecebimento.UsuarioID;
            }

            if (movimentoCaixaDao.NumeroSequencial.GetValueOrDefault() > 0)
            {
                movimentoCaixa.NumeroSequencial = movimentoCaixaDao.NumeroSequencial;
            }

            return(movimentoCaixa);
        }
        public void Save(MovimentoCaixa mov)
        {
            if (db.Find(mov.Id) == null)
                db.Save(mov);
            else
                db.Update(mov);

            db.Commit();
        }
Esempio n. 6
0
        private MovimentoCaixa indexarDados()
        {
            MovimentoCaixa novo = new MovimentoCaixa
            {
                ValorMovimento = ParseUtil.ToDecimal(txtValorMovimento.Text),
                HistoricoMov   = txtHistorico.Text,
                DataMovimento  = dtEditMovimento.DateTime,
                TipoMov        = _movimento
            };

            novo.IdUsuario = UnitWork.Usuario.IdUsuario;
            return(novo);
        }
Esempio n. 7
0
        public static MovimentoCaixaDao ToApp(this MovimentoCaixa movimentoCaixa)
        {
            var movimentoCaixaDao = new MovimentoCaixaDao();

            movimentoCaixaDao.MovimentoCaixaID = movimentoCaixa.MovimentoCaixaID;
            movimentoCaixaDao.DataMovimento    = movimentoCaixa.DataMovimento;

            if (movimentoCaixa.Loja != null && movimentoCaixa.Loja.LojaID > 0)
            {
                movimentoCaixaDao.LojaDao = new LojaDao()
                {
                    LojaID = movimentoCaixa.Loja.LojaID, NomeFantasia = movimentoCaixa.Loja.NomeFantasia
                }
            }
            ;

            movimentoCaixaDao.Valor = movimentoCaixa.Valor;

            if (movimentoCaixa.MovimentoCaixaStatus != null && movimentoCaixa.MovimentoCaixaStatus.MovimentoCaixaStatusID > 0)
            {
                movimentoCaixaDao.MovimentoCaixaStatusDao = new MovimentoCaixaStatusDao()
                {
                    MovimentoCaixaStatusID = movimentoCaixa.MovimentoCaixaStatus.MovimentoCaixaStatusID, Descricao = movimentoCaixa.MovimentoCaixaStatus.Descricao
                }
            }
            ;

            movimentoCaixaDao.DataRecebimento = movimentoCaixa.DataRecebimento;

            if (movimentoCaixa.Usuario != null && movimentoCaixa.Usuario.UsuarioID > 0)
            {
                movimentoCaixaDao.UsuarioRecebimento = new UsuarioDao()
                {
                    UsuarioID = movimentoCaixa.Usuario.UsuarioID
                }
            }
            ;

            movimentoCaixaDao.NumeroSequencial = movimentoCaixa.NumeroSequencial;

            return(movimentoCaixaDao);
        }
    }
}
Esempio n. 8
0
        private void btConfirmar_Click(object sender, RoutedEventArgs e)
        {
            Caixa          cx = new CaixaBLL().GetCaixaAberto();
            MovimentoCaixa mc = new MovimentoCaixa();

            mc.ServicoId      = ServicoId;
            mc.CaixaId        = cx.Id;
            mc.FormaPagamento = (int)comboBox.SelectedValue;
            mc.Valor          = decimal.Parse(txValorAdiantamento.Text);
            mc.Tipo           = (int)TipoMovCaixa.Entrada;
            mc.Obs            = $"Adiantamento de pagamento do serviço N° {ServicoId}";

            if (mc.FormaPagamento == -1)
            {
                MessageBox.Show("Selecione uma forma de pagamento",
                                "Atenção", MessageBoxButton.OK, MessageBoxImage.Warning);
                return;
            }

            MovimentoCaixaBLL bll = new MovimentoCaixaBLL();

            bll.Save(mc);

            if (FecharServico)
            {
                ServicoBLL servBLL = new ServicoBLL();
                var        serv    = servBLL.Find(ServicoId);
                serv.Finalizado = true;
                servBLL.Save(serv);

                List <MaterialServico> materiaisServ = serv.MaterialServico.ToList();

                foreach (MaterialServico m in materiaisServ)
                {
                    MaterialBLL matBll   = new MaterialBLL();
                    var         material = matBll.Find(m.MaterialId);
                    material.Estoque -= m.Quantidade;
                    matBll.Save(material);
                }
            }

            Confirmado = true;
            Close();
        }
Esempio n. 9
0
        public void AddMovimentoLancamento(LancamentoFinanceiro l)
        {
            using (var ctx = new BalcaoContext())
            {
                var movimento = new MovimentoCaixa
                {
                    ValorMovimento = l.ValorLancamento,
                    DataMovimento  = DateTime.Now,
                    HistoricoMov   = "Lançamento Nº: " + l.IdLancamento,
                    TipoMov        = l.TipoLancamento == TypeLancamentoFinanceiro.Pagar
                            ? TypeMovimentacaoMonetaria.Debito
                            : TypeMovimentacaoMonetaria.Credito,
                    IdVenda   = l.IdVenda,
                    IdUsuario = l.RecCreatedBy
                };

                ctx.MovimentoCaixaDao.Save(movimento);
            }
        }
Esempio n. 10
0
        private void button_Click(object sender, RoutedEventArgs e)
        {
            CaixaBLL bll = new CaixaBLL();
            Caixa    cx  = bll.GetCaixaAberto();

            MovimentoCaixa mc = new MovimentoCaixa();

            mc.CaixaId        = cx.Id;
            mc.Obs            = txDescricao.Text;
            mc.Tipo           = (int)TipoMovCaixa.Saida;
            mc.Valor          = decimal.Parse(txValor.Text);
            mc.FormaPagamento = (int)FormaPagamento.DINHEIRO;

            MovimentoCaixaBLL mcBll = new MovimentoCaixaBLL();

            mcBll.Save(mc);

            Close();
        }
        internal void AbreCaixa(decimal saldoInicial, string obs)
        {
            Caixa caixa = new Caixa();

            caixa.DataAbertura = DateTime.Now;
            caixa.Aberto       = true;
            caixa.Obs          = obs;

            db.Context.Caixa.Add(caixa);
            db.Commit();

            MovimentoCaixa mc = new MovimentoCaixa();

            mc.CaixaId = caixa.Id;
            mc.Tipo    = (int)TipoMovCaixa.Abertura;
            mc.Valor   = saldoInicial;
            mc.Obs     = obs;

            db.Context.MovimentoCaixa.Add(mc);
            db.Commit();
        }
Esempio n. 12
0
 public void SalvarMovimentacaoCaixa(MovimentoCaixa movimentoCaixa)
 {
     throw new NotImplementedException();
 }
Esempio n. 13
0
            /// <summary>
            /// Separa os valores de forma de pagamentos padronizados
            /// Credito
            /// Dinheiro
            /// Cartao
            /// Cheque
            /// Outros
            /// Total das Entrada
            ///
            /// Débito
            /// Total
            ///
            /// </summary>
            /// <param name="mov"></param>
            public void SplitValues(MovimentoCaixa mov)
            {
                if (mov.Venda != null)
                {
                    var tipoPagamento = mov.Venda.FormaPagamentoVenda.TipoFormaPagamento;

                    if (mov.TipoMov == TypeMovimentacaoMonetaria.Credito)
                    {
                        if (tipoPagamento == TypeFormaPagamento.Dinheiro)
                        {
                            this.Dinheiro += mov.ValorMovimento;
                        }

                        else if (tipoPagamento == TypeFormaPagamento.Cartao)
                        {
                            this.Cartao += mov.ValorMovimento;
                        }

                        else if (tipoPagamento == TypeFormaPagamento.Cheque)
                        {
                            this.Cheque += mov.ValorMovimento;
                        }

                        else if (tipoPagamento == TypeFormaPagamento.Boleto ||
                                 tipoPagamento == TypeFormaPagamento.Parcelado)
                        {
                            this.Outros += mov.ValorMovimento;
                        }

                        this.TotalEntradas += mov.ValorMovimento;
                    }
                    //venda pode ser estornda
                    else if (mov.TipoMov == TypeMovimentacaoMonetaria.Estorno)
                    {
                        this.Estornos += mov.ValorMovimento;
                    }
                    else
                    {
                        //para testes
                        this.TotalNaoMapeado += mov.ValorMovimento;
                    }
                }
                else//nao eh movimento de venda entao so pode ser credito ou debito
                {
                    if (mov.TipoMov == TypeMovimentacaoMonetaria.Credito)
                    {
                        this.Depositos += mov.ValorMovimento;
                    }
                    //saque ou retirada
                    else
                    {
                        this.Saques += mov.ValorMovimento;
                    }
                }

                //tudo que for debito
                this.TotalSaidas = this.Saques + this.Estornos;
                //tudo que entrou e saiu literalmente (bruto)
                this.Saldo = this.TotalEntradas - this.TotalSaidas;
                //tudo que for entrada do caixa em especie
                //menos as saidas em especie
                this.SaldoDinheiro = this.Depositos + this.Dinheiro - this.TotalSaidas;

                if (TotalNaoMapeado != 0)
                {
                    LoggerUtilIts.GenerateLogs(new Exception("Fluxo de caixa divergente"),
                                               "Classe interna de calculo do fluxo de caixa" +
                                               typeof(XFrmFluxoCaixaVendas).ToString()
                                               );
                }
            }
Esempio n. 14
0
 public void SalvarMovimentacaoCaixa(MovimentoCaixa movimentoCaixa)
 {
     _financeiroRepository.SalvarMovimentacaoCaixa(movimentoCaixa);
 }