// 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 string Atualizar(FinanceiroViewModel financeiroViewModel, List <FinanceiroParcelaViewModel> parcelaViewModel) { var financeiro = Mapper.Map <FinanceiroViewModel, Financeiro>(financeiroViewModel); var result = ValidarParcelas(ref financeiro, ref parcelaViewModel); if (result != "") { return(result); } var duplicado = _financeiroService.Find(e => (e.Titulo == financeiro.Titulo) && (e.FinanceiroId != financeiro.FinanceiroId) && (e.Delete == false)).Any(); if (duplicado) { return("Atenção, já existe um título com esses dados cadastrado"); } else { BeginTransaction(); _financeiroService.Atualizar(financeiro); Commit(); return(""); } }
public ActionResult Edit(FinanceiroViewModel financeiroViewModel, List <FinanceiroParcelaViewModel> financeiroParcelaViewModel) { // if (ModelState.IsValid) // { var result = _financeiroAppService.Atualizar(financeiroViewModel, financeiroParcelaViewModel); if (result != "") { TempData["Mensagem"] = result; } else { return(RedirectToAction("Index")); } // } #region ddlStatus List <SelectListItem> ddlOperacao = new List <SelectListItem>(); ddlOperacao.Add(new SelectListItem() { Text = "A Pagar", Value = "0" }); ddlOperacao.Add(new SelectListItem() { Text = "A Receber", Value = "1" }); TempData["ddlOperacao"] = ddlOperacao; financeiroViewModel.OperacaoStatus = ddlOperacao.Where(e => e.Value.Trim().Equals(financeiroViewModel.Operacao.ToString())).First().Text; #endregion financeiroViewModel.Parcelas = financeiroParcelaViewModel; return(View(financeiroViewModel)); }
// GET: Financeiro/Create public ActionResult Create() { #region DDL Status List <SelectListItem> ddlOperacao = new List <SelectListItem>(); ddlOperacao.Add(new SelectListItem() { Text = "A Pagar", Value = "0" }); ddlOperacao.Add(new SelectListItem() { Text = "A Receber", Value = "1" }); TempData["ddlOperacao"] = ddlOperacao; List <SelectListItem> ddlStatus = new List <SelectListItem>(); ddlStatus.Add(new SelectListItem() { Text = "Pendente", Value = "0" }); ddlStatus.Add(new SelectListItem() { Text = "Quitado", Value = "1" }); TempData["ddlStatus"] = ddlStatus; #endregion var financeiroViewModel = new FinanceiroViewModel(); return(View(financeiroViewModel)); }
public ActionResult Create(FinanceiroViewModel financeiroViewModel, List <FinanceiroParcelaViewModel> financeiroParcelaViewModel) { if (financeiroViewModel.Valor <= 0) { TempData["Mensagem"] = "O valor do título tem que ser maior que zero"; } financeiroViewModel.Status = "0"; if (ModelState.IsValid) { var result = _financeiroAppService.Adicionar(financeiroViewModel, financeiroParcelaViewModel); if (result != "") { TempData["Mensagem"] = result; } else { return(RedirectToAction("Index")); } } #region DDL Status List <SelectListItem> ddlOperacao = new List <SelectListItem>(); ddlOperacao.Add(new SelectListItem() { Text = "A Pagar", Value = "0" }); ddlOperacao.Add(new SelectListItem() { Text = "A Receber", Value = "1" }); TempData["ddlOperacao"] = ddlOperacao; List <SelectListItem> ddlStatus = new List <SelectListItem>(); ddlStatus.Add(new SelectListItem() { Text = "Pendente", Value = "0" }); ddlStatus.Add(new SelectListItem() { Text = "Quitado", Value = "1" }); TempData["ddlStatus"] = ddlStatus; financeiroViewModel.OperacaoStatus = ddlOperacao.Where(e => e.Value.Trim().Equals(financeiroViewModel.Operacao.ToString())).First().Text; financeiroViewModel.StatusNome = ddlStatus.Where(e => e.Value.Trim().Equals(financeiroViewModel.Status.ToString())).First().Text; #endregion financeiroViewModel.Parcelas = financeiroParcelaViewModel; return(View(financeiroViewModel)); }
public async Task <IActionResult> Index() { var listAlunos = await _context.Aluno.Include(d => d.Cursos).ToListAsync(); var listFuncionarios = await _context.Funcionario.ToListAsync(); FinanceiroViewModel model = new FinanceiroViewModel(); model.Alunos = listAlunos; model.Funcionarios = listFuncionarios; return(View(model)); }
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 async Task <FileResult> Download() { using (var doc = new PdfSharpCore.Pdf.PdfDocument()) { var page = doc.AddPage(); page.Size = PdfSharpCore.PageSize.A4; page.Orientation = PdfSharpCore.PageOrientation.Portrait; var graphics = PdfSharpCore.Drawing.XGraphics.FromPdfPage(page); var corFonte = PdfSharpCore.Drawing.XBrushes.Black; var textFormatter = new PdfSharpCore.Drawing.Layout.XTextFormatter(graphics); var fonteOrganizacao = new PdfSharpCore.Drawing.XFont("Ariel", 10); var fonteDescricao = new PdfSharpCore.Drawing.XFont("Ariel", 8, PdfSharpCore.Drawing.XFontStyle.BoldItalic); var tituloDetalhes = new PdfSharpCore.Drawing.XFont("Ariel", 8, PdfSharpCore.Drawing.XFontStyle.Bold); var fonteDetalhesDescricao = new PdfSharpCore.Drawing.XFont("Ariel", 7); var qtdPaginas = doc.PageCount; //imagem logotipo var logo = @"C:\Users\dionn\Desktop\Ferman19.05.2020\PROJETO_FUP_Brasil\wwwroot\img\logo.jpg"; textFormatter.DrawString(qtdPaginas.ToString(), new PdfSharpCore.Drawing.XFont("Arial", 10), corFonte, new PdfSharpCore.Drawing.XRect(575, 825, page.Width, page.Height)); XImage imagem = XImage.FromFile(logo); graphics.DrawImage(imagem, 20, 5, 100, 50); //Titulo Maior var descricaoFinanceira = new PdfSharpCore.Drawing.Layout.XTextFormatter(graphics); descricaoFinanceira.Alignment = PdfSharpCore.Drawing.Layout.XParagraphAlignment.Center; descricaoFinanceira.DrawString("Detalhamento Financeiro", tituloDetalhes, corFonte, new PdfSharpCore.Drawing.XRect(0, 120, page.Width, page.Height)); //titulo das Colunas var alturaTituloFinanceiroY = 140; var detalhes = new PdfSharpCore.Drawing.Layout.XTextFormatter(graphics); detalhes.DrawString("Saida", fonteDescricao, PdfSharpCore.Drawing.XBrushes.Red, new PdfSharpCore.Drawing.XRect(20, alturaTituloFinanceiroY, page.Width, page.Height)); detalhes.DrawString("Entrada", fonteDescricao, PdfSharpCore.Drawing.XBrushes.Green, new PdfSharpCore.Drawing.XRect(220, alturaTituloFinanceiroY, page.Width, page.Height)); detalhes.DrawString("Total Liquido", fonteDescricao, PdfSharpCore.Drawing.XBrushes.DodgerBlue, new PdfSharpCore.Drawing.XRect(340, alturaTituloFinanceiroY, page.Width, page.Height)); //gerar dados do relátorio FinanceiroViewModel model = new FinanceiroViewModel(); var alturaItens = 160; var alturaItens2 = 160; var conteudoAluno = await _context.Aluno.Include(d => d.Cursos).ToListAsync(); var conteudoFuncionario = await _context.Funcionario.ToListAsync(); model.Funcionarios = conteudoFuncionario; model.Alunos = conteudoAluno; decimal somaDespesas = 0; decimal somaLucros = 0; decimal totalLiquido = 0; foreach (var item in model.Funcionarios) { textFormatter.DrawString("Saida: " + item.SalarioFuncionario, fonteDescricao, corFonte, new PdfSharpCore.Drawing.XRect(20, alturaItens, page.Width, page.Height)); somaDespesas += item.SalarioFuncionario; alturaItens += 20; } foreach (var item in model.Alunos) { textFormatter.DrawString("Entrada: " + item.Cursos.ValorCurso, fonteDescricao, corFonte, new PdfSharpCore.Drawing.XRect(220, alturaItens2, page.Width, page.Height)); somaLucros += item.Cursos.ValorCurso; alturaItens2 += 20; } totalLiquido = somaLucros - somaDespesas; textFormatter.DrawString("Total Saida: " + somaDespesas, fonteDescricao, corFonte, new PdfSharpCore.Drawing.XRect(20, alturaItens, page.Width, page.Height)); textFormatter.DrawString("Total Entrada: " + somaLucros, fonteDescricao, corFonte, new PdfSharpCore.Drawing.XRect(220, alturaItens2, page.Width, page.Height)); textFormatter.DrawString("Total Liquido: " + totalLiquido, fonteDescricao, corFonte, new PdfSharpCore.Drawing.XRect(340, alturaItens2, page.Width, page.Height)); //cabeçalho inicio statico textFormatter.DrawString("Instituição: ", fonteDescricao, corFonte, new PdfSharpCore.Drawing.XRect(20, 95, page.Width, page.Height)); textFormatter.DrawString("Faculdade Universitaria de Programação", fonteDescricao, corFonte, new PdfSharpCore.Drawing.XRect(80, 95, page.Width, page.Height)); //cabeçalho das colunas using (MemoryStream stream = new MemoryStream()) { var contantType = "application/pdf"; doc.Save(stream, false); var nomeArquivo = "relatorioFinancerio.pdf"; return(File(stream.ToArray(), contantType, nomeArquivo)); } } }
public FinanceiroView() { FinanceiroViewModel = new FinanceiroViewModel(); DataContext = FinanceiroViewModel; InitializeComponent(); }