// GET: Admin/Financeiro/Create public IActionResult CreateOrEdit(int?id, TipoFinanceiro tipo, string returnUrl = null) { var financeiroViewModel = new FinanceiroViewModel(); if (id != null) { var financeiro = _context.Financeiro.Include(x => x.Categoria).Include(x => x.Conta).Include(x => x.Pessoa).FirstOrDefault(x => x.FinanceiroId == id); financeiroViewModel = Mapper.Map <FinanceiroViewModel>(financeiro); tipo = financeiro.Tipo; } if (tipo == TipoFinanceiro.Extrato) { return(NotFound()); } var categorias = _context.GetViewCategorias(); ViewData["ContaId"] = new SelectList(_context.Contas.OrderBy(x => x.Descricao), "ContaId", "Descricao", financeiroViewModel.ContaId); ViewData["tipo"] = tipo; ViewData["TipoCategoria"] = tipo == TipoFinanceiro.Pagamento ? TipoCategoria.Despesas : TipoCategoria.Receitas; ViewData["returnUrl"] = returnUrl; return(View(financeiroViewModel)); }
public IEnumerable <ContaConsulta> ListarContas(ContaFiltro contaFiltro, TipoFinanceiro tipoFinanceiro, int id = 0) { if (contaFiltro.CodPessoa == 0 && string.IsNullOrWhiteSpace(contaFiltro.Documento)) { contaFiltro.CodPessoa = 99999; } if (tipoFinanceiro == TipoFinanceiro.tfReceber) { return(_repositorioContaConsulta.ObterContasAReceber(contaFiltro, id)); } else { return(_repositorioContaConsulta.ObterContasAPagar(contaFiltro, id)); } }
public async Task <IActionResult> CreateOrEdit(int?id, TipoFinanceiro tipo, FinanceiroViewModel financeiroViewModel, string returnUrl = null) { if (!ModelState.IsValid) { var categorias = _context.GetViewCategorias(); ViewData["ContaId"] = new SelectList(_context.Contas.OrderBy(x => x.Descricao), "ContaId", "Descricao", financeiroViewModel.ContaId); ViewData["tipo"] = tipo; ViewData["TipoCategoria"] = tipo == TipoFinanceiro.Pagamento ? TipoCategoria.Despesas : TipoCategoria.Receitas; ViewData["returnUrl"] = returnUrl; return(View(financeiroViewModel)); } var financeiro = Mapper.Map <Financeiro>(financeiroViewModel); try { _context.Update(financeiro); await _context.SaveChangesAsync(); TempData["alert-success"] = "Operação realizada com sucesso!"; } catch (DbUpdateConcurrencyException) { if (!FinanceiroExists(financeiro.FinanceiroId)) { return(NotFound()); } else { throw; } } if (!string.IsNullOrEmpty(returnUrl)) { return(Redirect(returnUrl)); } else { return(RedirectToAction(nameof(Index))); } }
public frmContas(TipoFinanceiro tipoFinanceiro) { _tipoFinanceiro = tipoFinanceiro; Iniciar(); }
// GET: Admin/Financeiro public async Task <IActionResult> Index( TipoFinanceiro tipo, List <int> pedidos = null, List <int?> contas = null, List <int> status = null, string filtro = null, string startDate = null, string endDate = null, string returnUrl = null ) { if (!string.IsNullOrEmpty(returnUrl)) { return(Redirect(returnUrl)); } // Financeiro var financeiro = _context.Financeiro.Include(f => f.Categoria).Include(x => x.Pessoa).Include(f => f.Conta).AsQueryable(); // Data startDate = startDate ?? DateTime.Now.ToString("dd/MM/yy"); endDate = endDate ?? DateTime.Now.ToString("dd/MM/yy"); string startTime = "00:00:00"; string endTime = "23:59:59"; DateTime dataDe = Convert.ToDateTime($"{startDate} {startTime}"); DateTime dataAte = Convert.ToDateTime($"{endDate} {endTime}"); // Where Descricao if (!string.IsNullOrEmpty(filtro)) { financeiro = financeiro.Where( x => x.Descricao.ToUpper().Contains(filtro.ToUpper()) || x.Pessoa.Nome.ToUpper().Contains(filtro.ToUpper()) || x.Categoria.NomeAll.ToUpper().Contains(filtro.ToUpper()) ); } // Where Status Pgto financeiro = status.Count > 0 ? financeiro.Where(x => status.Contains((int)x.TipoStatusPagamento)) : financeiro; // Where Conta financeiro = contas.Count > 0 ? financeiro.Where(x => contas.Contains(x.ContaId)) : financeiro; // Where Data - Apenas se não tiver informado os pedidos financeiro = pedidos.Count == 0 ? financeiro.Where(x => Convert.ToDateTime(x.Data) >= dataDe && Convert.ToDateTime(x.Data) <= dataAte) : financeiro; // Where Pedidos financeiro = pedidos.Count > 0 ? financeiro.Where(x => pedidos.Contains(x.FinanceiroPedidos.FirstOrDefault().PedidoId)) : financeiro; // Where Tipo if (tipo != TipoFinanceiro.Extrato) { financeiro = financeiro.Where(x => x.Tipo == tipo); } // OrderBy financeiro = financeiro.OrderByDescending(x => x.FinanceiroId); // ToList var financeiroList = await financeiro.ToListAsync(); FinanceiroExtratoViewModel financeiroExtratoViewModel = new FinanceiroExtratoViewModel { ListaFinanceiros = Mapper.Map <List <FinanceiroViewModel> >(financeiroList).ToList(), }; // ENUM Status IEnumerable <SelectListItem> EnumStatus = from TipoStatusPagamento statusPgto in Enum.GetValues(typeof(TipoStatusPagamento)) select new SelectListItem { Text = statusPgto.ToString(), Value = Convert.ToInt32(statusPgto).ToString() }; // View Data ViewData["tipo"] = tipo; ViewData["btnIncluirFinanceiro"] = true; ViewData["startDate"] = startDate; ViewData["endDate"] = endDate; ViewData["filtro"] = filtro; ViewData["ContasSelect"] = new SelectList(_context.Contas.OrderBy(x => x.Descricao), "ContaId", "Descricao", contas); ViewData["StatusSelect"] = new SelectList(EnumStatus, "Value", "Text", status); ViewData["returnUrl"] = UriHelper.GetDisplayUrl(HttpContext.Request); return(View(financeiroExtratoViewModel)); }