public ActionResult ParcelaEmprestimo(int?page, int ID)
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            IEmprestimoProcesso processoEmprestimo = EmprestimoProcesso.Instance;
            Emprestimo          emprestimo         = new Emprestimo();

            emprestimo.ID = ID;
            emprestimo    = processoEmprestimo.Consultar(emprestimo, SiteMVCTelerik.ModuloBasico.Enums.TipoPesquisa.E)[0];

            Session["EmprestimoSelecionado"] = emprestimo;
            IParcelaProcesso processo = ParcelaProcesso.Instance;
            Parcela          parcela  = new Parcela();

            parcela.emprestimo_id = ID;
            var resultado = processo.Consultar(parcela, TipoPesquisa.E);



            List <Parcela> parcelas         = resultado;
            int            currentPageIndex = page.HasValue ? page.Value - 1 : 0;

            return(View(resultado.ToPagedList(currentPageIndex, defaultPageSize)));
        }
        public ActionResult VisualizarEmprestimosPorPeriodo(EmprestimoPesquisa emprestimoPesquisa)
        {
            List <Emprestimo> emprestimos = new List <Emprestimo>();

            try
            {
                if (emprestimoPesquisa.DataFim < emprestimoPesquisa.DataInicio)
                {
                    ModelState.AddModelError("DataFim", "A data final nao pode ser maior que a data inicial.");
                }

                if (ModelState.IsValid)
                {
                    IEmprestimoProcesso processo = EmprestimoProcesso.Instance;
                    emprestimos             = processo.ConsultarEmprestimosPorPeriodo(emprestimoPesquisa.DataInicio, emprestimoPesquisa.DataFim);
                    ViewData["emprestimos"] = emprestimos;
                    ViewData.Model          = emprestimoPesquisa;
                    return(View(emprestimoPesquisa));
                }
                else
                {
                    ViewData["emprestimos"] = emprestimos;
                    return(View(emprestimoPesquisa));
                }
            }
            catch (Exception e)
            {
                ViewData["emprestimos"] = emprestimos;
                return(View(emprestimoPesquisa));
            }
        }
        public ActionResult ImprimirParcelas(int ID)
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            IEmprestimoProcesso processoEmprestimo = EmprestimoProcesso.Instance;
            Emprestimo          emprestimo         = new Emprestimo();

            emprestimo.ID = ID;
            emprestimo    = processoEmprestimo.Consultar(emprestimo, SiteMVCTelerik.ModuloBasico.Enums.TipoPesquisa.E)[0];

            Session["EmprestimoSelecionado"] = emprestimo;
            IParcelaProcesso processo = ParcelaProcesso.Instance;
            Parcela          parcela  = new Parcela();

            parcela.emprestimo_id = ID;
            var resultado = processo.Consultar(parcela, TipoPesquisa.E);

            ViewData["quantidadePaginas"] = Math.Ceiling((decimal)resultado.Count / 5);

            List <Parcela> p2 = new List <Parcela>();

            for (int i = 0; i < resultado.Count; i++)
            {
                if (!resultado[i].data_pagamento.HasValue)
                {
                    p2.Add(resultado[i]);
                }
            }
            ViewData["total"] = resultado.Count;
            List <Parcela> parcelas = p2;

            return(View(p2));
        }
        public ActionResult Alterar(int id, Emprestimo emprestimo)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    emprestimo.id = id;
                    IEmprestimoProcesso processo = EmprestimoProcesso.Instance;
                    //emprestimo.timeUpdated = DateTime.Now;
                    processo.Alterar(emprestimo);
                    processo.Confirmar();
                    // TODO: Add update logic here

                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(View(emprestimo));
                }
            }
            catch
            {
                return(View());
            }
        }
        //
        // GET: /StatusParcela/Details/5

        public ActionResult Detalhar(int id)
        {
            IEmprestimoProcesso processo   = EmprestimoProcesso.Instance;
            Emprestimo          emprestimo = new Emprestimo();

            emprestimo.id  = id;
            ViewData.Model = processo.Consultar(emprestimo, TipoPesquisa.E)[0];
            return(View());
        }
        //
        // GET: /StatusParcela/Edit/5

        public ActionResult Alterar(int id)
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            IEmprestimoProcesso processo   = EmprestimoProcesso.Instance;
            Emprestimo          emprestimo = new Emprestimo();

            emprestimo.id  = id;
            ViewData.Model = processo.Consultar(emprestimo, SiteMVCTelerik.ModuloBasico.Enums.TipoPesquisa.E)[0];
            return(View());
        }
        public ActionResult Listar(int?page)
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            IEmprestimoProcesso processo = EmprestimoProcesso.Instance;
            var resultado = processo.Consultar();
            List <Emprestimo> emprestimos = resultado;
            int currentPageIndex          = page.HasValue ? page.Value - 1 : 0;

            return(View(resultado.ToPagedList(currentPageIndex, defaultPageSize)));
        }
        public ActionResult VisualizarEmprestimosPorPeriodo()
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            IEmprestimoProcesso processo           = EmprestimoProcesso.Instance;
            List <Emprestimo>   emprestimos        = processo.Consultar();
            EmprestimoPesquisa  emprestimoPesquisa = new EmprestimoPesquisa();

            emprestimoPesquisa.DataInicio = DateTime.Now;
            emprestimoPesquisa.DataFim    = DateTime.Now;
            ViewData["emprestimos"]       = emprestimos;
            return(View(emprestimoPesquisa));
        }
        //
        // GET: /StatusParcela/Delete/5

        public ActionResult Excluir(int id)
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            IEmprestimoProcesso processo   = EmprestimoProcesso.Instance;
            Emprestimo          emprestimo = new Emprestimo();

            emprestimo.ID  = id;
            ViewData.Model = processo.Consultar(emprestimo, SiteMVCTelerik.ModuloBasico.Enums.TipoPesquisa.E)[0];
            processo.Excluir(emprestimo);
            processo.Confirmar();
            return(RedirectToAction("EmprestimoCliente", "Emprestimo", new { id = ClasseAuxiliar.ClienteSelecionado.ID }));
        }
        private void AdicionarParcelaExtra(Parcela parcela)
        {
            Parcela p = new Parcela();

            p.emprestimo_id = parcela.emprestimo_id;
            List <Parcela>      resultado = this.Consultar(p, TipoPesquisa.E);
            IEmprestimoProcesso processo  = EmprestimoProcesso.Instance;

            Emprestimo emp = new Emprestimo();

            emp.ID = p.emprestimo_id;

            emp = processo.Consultar(emp, TipoPesquisa.E)[0];

            IPrazoPagamentoProcesso prazoPagamentoProcesso = PrazoPagamentoProcesso.Instance;

            PrazoPagamento prazo = new PrazoPagamento();

            prazo.ID = emp.prazospagamento_id;

            prazo = prazoPagamentoProcesso.Consultar(prazo, TipoPesquisa.E)[0];

            p = resultado[resultado.Count - 1];

            if (p != null)
            {
                Parcela par = new Parcela();
                par.emprestimo_id    = emp.ID;
                par.valor            = parcela.valor - parcela.valor_pago.Value;
                par.data_vencimento  = p.data_vencimento.AddDays(prazo.qtde_dias);
                par.statusparcela_id = 2;
                par.sequencial       = parcela.sequencial;
                par.data_vencimento  = parcela.data_vencimento;
                //if (par.data_vencimento.DayOfWeek == DayOfWeek.Saturday)
                //    par.data_vencimento = par.data_vencimento.AddDays(2);
                //else if (par.data_vencimento.DayOfWeek == DayOfWeek.Monday)
                //    par.data_vencimento = par.data_vencimento.AddDays(1);



                par.timeCreated = DateTime.Now;
                this.parcelaRepositorio.Incluir(par);
            }
        }
        public ActionResult VisualizarTotalMovimentacao()
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            IEmprestimoProcesso processoEmprestimo = EmprestimoProcesso.Instance;
            List <Emprestimo>   emprestimos        = processoEmprestimo.Consultar();

            IParcelaProcesso processoParcela = ParcelaProcesso.Instance;
            List <Parcela>   parcelas        = processoParcela.Consultar();

            float totalEmprestimo       = 0;
            float totalEmprestimoJuros  = 0;
            float totalParcelasPagas    = 0;
            float totalParcelasEmAberto = 0;

            foreach (var item in emprestimos)
            {
                totalEmprestimo      += item.valor;
                totalEmprestimoJuros += item.valor + (item.valor * item.juros / 100);
            }

            foreach (var item in parcelas)
            {
                if (item.statusparcela_id == 2)
                {
                    totalParcelasEmAberto += item.valor;
                }
                else
                {
                    totalParcelasPagas += item.valor_pago.Value;
                }
            }

            ViewData["totalEmprestimo"]       = totalEmprestimo;
            ViewData["totalEmprestimoJuros"]  = totalEmprestimoJuros;
            ViewData["totalParcelasPagas"]    = totalParcelasPagas;
            ViewData["totalParcelasEmAberto"] = totalParcelasEmAberto;


            return(View());
        }
        public ActionResult EmprestimoCliente(int?page, int ID)
        {
            IClienteProcesso processoCliente = ClienteProcesso.Instance;
            Cliente          cliente         = new Cliente();

            cliente.id = ID;
            cliente    = processoCliente.Consultar(cliente, SiteMVCTelerik.ModuloBasico.Enums.TipoPesquisa.E)[0];

            Session["ClienteSelecionado"] = cliente;
            IEmprestimoProcesso processo   = EmprestimoProcesso.Instance;
            Emprestimo          emprestimo = new Emprestimo();

            emprestimo.cliente_id = ID;
            var resultado = processo.Consultar(emprestimo, TipoPesquisa.E);



            List <Emprestimo> emprestimos = resultado;
            int currentPageIndex          = page.HasValue ? page.Value - 1 : 0;

            return(View(resultado.ToPagedList(currentPageIndex, defaultPageSize)));
        }
        public ActionResult IncluirPrestacaoConta()
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }
            PrestacaoConta prestacaoConta = new PrestacaoConta();

            #region Despesas
            IDespesaProcesso despesaProcesso = DespesaProcesso.Instance;
            Despesa          despesa         = new Despesa();
            despesa.area_id = ClasseAuxiliar.AreaSelecionada.id;
            despesa.data    = ClasseAuxiliar.DataSelecionada;

            List <Despesa> despesas = despesaProcesso.Consultar(despesa, TipoPesquisa.E);
            ViewData["despesas"] = despesas;
            #endregion

            #region Emprestimo
            IEmprestimoProcesso emprestimoProcesso = EmprestimoProcesso.Instance;
            Emprestimo          emp = new Emprestimo();
            emp.area_id         = ClasseAuxiliar.AreaSelecionada.id;
            emp.data_emprestimo = ClasseAuxiliar.DataSelecionada;

            ViewData["emprestimos"] = emprestimoProcesso.Consultar(emp, TipoPesquisa.E);
            #endregion

            #region Peguei com a empresa
            ILancamentoProcesso lancamentoProcesso = LancamentoProcesso.Instance;
            Lancamento          lanc = new Lancamento();
            lanc.area_id           = ClasseAuxiliar.AreaSelecionada.id;
            lanc.data              = ClasseAuxiliar.DataSelecionada;
            lanc.lancamentotipo_id = 5;
            List <Lancamento> lancamentos = lancamentoProcesso.Consultar(lanc, TipoPesquisa.E);
            ViewData["lancamentos"] = lancamentos;
            #endregion

            IParcelaProcesso parcelaProcesso = ParcelaProcesso.Instance;
            List <Parcela>   parcelas        = parcelaProcesso.ConsultarParcelasPagasPorPeriodo(ClasseAuxiliar.DataSelecionada, default(DateTime));

            float totalParcelas    = 0;
            float totalLancamentos = 0;
            float totalEmprestimos = 0;
            float totalDespesas    = 0;
            foreach (var item in lancamentos)
            {
                totalLancamentos += item.valor;
            }
            foreach (var item in parcelas)
            {
                totalParcelas += item.valor_pago.Value;
            }

            List <Emprestimo> emprestimos = emprestimoProcesso.ConsultarEmprestimosPorPeriodo(ClasseAuxiliar.DataSelecionada, ClasseAuxiliar.DataSelecionada);

            foreach (var item in emprestimos)
            {
                totalEmprestimos += item.valor;
            }

            foreach (var item in despesas)
            {
                totalDespesas += item.valor;
            }

            ViewData["totalParcelas"]    = totalParcelas;
            ViewData["totalEmprestimos"] = totalEmprestimos;
            ViewData["totalLancamentos"] = totalLancamentos;
            ViewData["totalDespesas"]    = totalDespesas;
            // ViewData.Model = prestacaoConta;
            return(View());
        }
        // [ValidateInput(false)]

        public ActionResult IncluirEmprestimoCliente(Emprestimo emprestimo, string[] dias)
        {
            try
            {
                IClienteProcesso processoCliente = ClienteProcesso.Instance;
                List <Cliente>   resultCliente   = processoCliente.ConsultarClientesDevedores();

                var resultCiente2 = (from cc in resultCliente
                                     where cc.id == ClasseAuxiliar.ClienteSelecionado.id
                                     select cc).SingleOrDefault();


                if (resultCiente2 != null && resultCiente2.id == ClasseAuxiliar.ClienteSelecionado.id)
                {
                    ModelState.AddModelError("valor", "O Cliente está com dividas em aberto.");
                }


                List <int>       diasUteis  = new List <int>();
                List <DayOfWeek> dayOfWeeks = new List <DayOfWeek>();
                if (dias != null)
                {
                    for (int i = 0; i < dias.Length; i++)
                    {
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Friday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Friday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Monday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Monday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Saturday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Saturday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Sunday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Sunday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Thursday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Thursday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Tuesday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Tuesday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Wednesday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Wednesday);
                        }


                        diasUteis.Add(Convert.ToInt16(dias[i]));
                    }
                }


                ViewData["DiasUteis"] = ClasseAuxiliar.CarregarCheckBoxEnum <DiasUteis>(diasUteis);

                var teste = Request;
                IEmprestimoProcesso processo = EmprestimoProcesso.Instance;
                //if (ModelState.IsValid)
                {
                    emprestimo.cliente_id = ClasseAuxiliar.ClienteSelecionado.id;
                    emprestimo.usuario_id = ClasseAuxiliar.UsuarioLogado.id;
                    emprestimo.area_id    = ClasseAuxiliar.AreaSelecionada.id;
                    //emprestimo.timeCreated = DateTime.Now;
                    //emprestimo.timeUpdated = DateTime.Now;
                    processo.Incluir(emprestimo, dayOfWeeks);
                    processo.Confirmar();
                    return(RedirectToAction("EmprestimoCliente", new { id = ClasseAuxiliar.ClienteSelecionado.id }));
                }
                //else
                //{
                //    return View(emprestimo);
                //}
            }
            catch (Exception e)
            {
                return(View(emprestimo));
            }
        }
        public ActionResult VisualizarPrestacaoConta(int id)
        {
            if (ClasseAuxiliar.UsuarioLogado == null || (ClasseAuxiliar.DataSelecionada == default(DateTime) || ClasseAuxiliar.AreaSelecionada == null))
            {
                return(RedirectToAction("Index", "Home"));
            }

            IPrestacaoContaProcesso processo  = PrestacaoContaProcesso.Instance;
            PrestacaoConta          prestacao = new PrestacaoConta();

            prestacao.id = id;
            List <PrestacaoConta> prestacaoContaList = processo.Consultar(prestacao, TipoPesquisa.E);

            ViewData["lancamentos"]     = 0;
            ViewData["despesas"]        = 0;
            ViewData["emprestimos"]     = 0;
            ViewData["dataSelecionada"] = DateTime.Now;
            if (prestacaoContaList.Count > 0)
            {
                ViewData["dataSelecionada"] = prestacaoContaList[0].dataprestacao;
                #region Despesas
                IDespesaProcesso despesaProcesso = DespesaProcesso.Instance;
                Despesa          despesa         = new Despesa();
                //despesa.area_id = ClasseAuxiliar.AreaSelecionada.id;
                despesa.data = prestacaoContaList[0].dataprestacao;

                List <Despesa> despesas = despesaProcesso.Consultar(despesa, TipoPesquisa.E);
                ViewData["despesas"] = despesas;
                #endregion

                #region Emprestimo
                IEmprestimoProcesso emprestimoProcesso = EmprestimoProcesso.Instance;
                Emprestimo          emp = new Emprestimo();
                //emp.area_id = ClasseAuxiliar.AreaSelecionada.id;
                emp.data_emprestimo = prestacaoContaList[0].dataprestacao;

                ViewData["emprestimos"] = emprestimoProcesso.Consultar(emp, TipoPesquisa.E);
                #endregion

                #region Peguei com a empresa
                ILancamentoProcesso lancamentoProcesso = LancamentoProcesso.Instance;
                Lancamento          lanc = new Lancamento();
                //lanc.area_id = ClasseAuxiliar.AreaSelecionada.id;
                lanc.data = ClasseAuxiliar.DataSelecionada;
                lanc.lancamentotipo_id = 5;
                List <Lancamento> lancamentos = lancamentoProcesso.Consultar(lanc, TipoPesquisa.E);
                ViewData["lancamentos"] = lancamentos;
                #endregion

                IParcelaProcesso parcelaProcesso = ParcelaProcesso.Instance;
                List <Parcela>   parcelas        = parcelaProcesso.ConsultarParcelasPagasPorPeriodo(prestacaoContaList[0].dataprestacao, default(DateTime));

                float totalParcelas    = 0;
                float totalLancamentos = 0;
                float totalEmprestimos = 0;
                float totalDespesas    = 0;
                foreach (var item in lancamentos)
                {
                    totalLancamentos += item.valor;
                }
                foreach (var item in parcelas)
                {
                    totalParcelas += item.valor_pago.Value;
                }

                List <Emprestimo> emprestimos = emprestimoProcesso.ConsultarEmprestimosPorPeriodo(prestacaoContaList[0].dataprestacao, prestacaoContaList[0].dataprestacao);

                foreach (var item in emprestimos)
                {
                    totalEmprestimos += item.valor;
                }

                foreach (var item in despesas)
                {
                    totalDespesas += item.valor;
                }

                ViewData["totalParcelas"]    = totalParcelas;
                ViewData["totalEmprestimos"] = totalEmprestimos;
                ViewData["totalLancamentos"] = totalLancamentos;
                ViewData["totalDespesas"]    = totalDespesas;
            }

            return(View());
        }
        public ActionResult IncluirPrestacaoConta(FormCollection form)
        {
            IPrestacaoContaProcesso processo       = PrestacaoContaProcesso.Instance;
            PrestacaoConta          prestacaoConta = new PrestacaoConta();

            #region Despesas
            IDespesaProcesso despesaProcesso = DespesaProcesso.Instance;
            Despesa          despesa         = new Despesa();
            despesa.area_id = ClasseAuxiliar.AreaSelecionada.id;
            despesa.data    = ClasseAuxiliar.DataSelecionada;

            List <Despesa> despesas = despesaProcesso.Consultar(despesa, TipoPesquisa.E);
            ViewData["despesas"] = despesas;
            #endregion

            #region Emprestimo
            IEmprestimoProcesso emprestimoProcesso = EmprestimoProcesso.Instance;
            Emprestimo          emp = new Emprestimo();
            emp.area_id         = ClasseAuxiliar.AreaSelecionada.id;
            emp.data_emprestimo = ClasseAuxiliar.DataSelecionada;

            ViewData["emprestimos"] = emprestimoProcesso.Consultar(emp, TipoPesquisa.E);
            #endregion

            #region Peguei com a empresa
            ILancamentoProcesso lancamentoProcesso = LancamentoProcesso.Instance;
            Lancamento          lanc = new Lancamento();
            lanc.area_id           = ClasseAuxiliar.AreaSelecionada.id;
            lanc.data              = ClasseAuxiliar.DataSelecionada;
            lanc.lancamentotipo_id = 5;
            List <Lancamento> lancamentos = lancamentoProcesso.Consultar(lanc, TipoPesquisa.E);
            ViewData["lancamentos"] = lancamentos;
            #endregion

            IParcelaProcesso parcelaProcesso = ParcelaProcesso.Instance;
            List <Parcela>   parcelas        = parcelaProcesso.ConsultarParcelasPagasPorPeriodo(ClasseAuxiliar.DataSelecionada, default(DateTime));

            float totalParcelas    = 0;
            float totalLancamentos = 0;
            float totalEmprestimos = 0;
            float totalDespesas    = 0;
            foreach (var item in lancamentos)
            {
                totalLancamentos += item.valor;
            }
            foreach (var item in parcelas)
            {
                totalParcelas += item.valor_pago.Value;
            }

            List <Emprestimo> emprestimos = emprestimoProcesso.ConsultarEmprestimosPorPeriodo(ClasseAuxiliar.DataSelecionada, ClasseAuxiliar.DataSelecionada);

            foreach (var item in emprestimos)
            {
                totalEmprestimos += item.valor;
            }

            foreach (var item in despesas)
            {
                totalDespesas += item.valor;
            }

            ViewData["totalParcelas"]    = totalParcelas;
            ViewData["totalEmprestimos"] = totalEmprestimos;
            ViewData["totalLancamentos"] = totalLancamentos;
            ViewData["totalDespesas"]    = totalDespesas;
            // ViewData.Model = prestacaoConta;

            try
            {
                prestacaoConta.dataprestacao = ClasseAuxiliar.DataSelecionada;
                prestacaoConta.area_id       = ClasseAuxiliar.AreaSelecionada.id;
                //prestacaoConta.timeCreated = DateTime.Now;
                //prestacaoConta.timeUpdated= DateTime.Now;
                prestacaoConta.totaldespesas = totalDespesas;
                prestacaoConta.usuario_id    = ClasseAuxiliar.UsuarioLogado.id;
                prestacaoConta.valorsaida    = totalEmprestimos;
                prestacaoConta.valorrecebido = totalLancamentos + totalParcelas;
                processo.Incluir(prestacaoConta);
                processo.Confirmar();
                //  return RedirectToAction("Index");
            }
            catch
            {
                // ViewData["Mensagem"] = "O registro não pode ser excluído pois já está sendo utilizado.";
                // ViewData.Model = processo.Consultar(prestacaoConta, SiteMVCTelerik.ModuloBasico.Enums.TipoPesquisa.E)[0]; ;
                // return View();
            }

            return(View());
        }
        public ActionResult Incluir(Emprestimo emprestimo, string[] dias)
        {
            try
            {
                IClienteProcesso processoCliente = ClienteProcesso.Instance;
                List <Cliente>   resultCliente   = processoCliente.ConsultarClientesDevedores();

                var resultCiente2 = from cc in resultCliente
                                    where cc.ID == ClasseAuxiliar.ClienteSelecionado.ID
                                    select cc;


                if (resultCliente.Count > 0)
                {
                    ModelState.AddModelError("valor", "O Cliente está com dividas em aberto.");
                }

                List <int>       diasUteis  = new List <int>();
                List <DayOfWeek> dayOfWeeks = new List <DayOfWeek>();
                if (dias != null)
                {
                    for (int i = 0; i < dias.Length; i++)
                    {
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Friday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Friday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Monday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Monday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Saturday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Saturday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Sunday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Sunday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Thursday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Thursday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Tuesday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Tuesday);
                        }
                        if (Convert.ToInt16(dias[i]) == (int)DayOfWeek.Wednesday)
                        {
                            dayOfWeeks.Add(DayOfWeek.Wednesday);
                        }


                        diasUteis.Add(Convert.ToInt16(dias[i]));
                    }
                }

                ViewData["DiasUteis"] = ClasseAuxiliar.CarregarCheckBoxEnum <DiasUteis>(diasUteis);
                if (ModelState.IsValid)
                {
                    IEmprestimoProcesso processo = EmprestimoProcesso.Instance;
                    emprestimo.area_id         = ClasseAuxiliar.AreaSelecionada.ID;
                    emprestimo.usuario_id      = ClasseAuxiliar.UsuarioLogado.ID;
                    emprestimo.data_emprestimo = ClasseAuxiliar.DataSelecionada;
                    emprestimo.timeCreated     = DateTime.Now;
                    processo.Incluir(emprestimo, dayOfWeeks);
                    processo.Confirmar();
                    return(RedirectToAction("IncluirPrestacaoConta", "Movimentacao"));
                }
                else
                {
                    return(View(emprestimo));
                }
            }
            catch (Exception e)
            {
                return(View(emprestimo));
            }
        }