public ActionResult modelRegistrarPagamento(int id) { var ViewModel = new BaixaTituloReceitaForm(); int idTituloReceita = id; ViewModel.TituloReceita = this.OTituloReceitaBL.carregar(idTituloReceita) ?? new TituloReceita(); if (ViewModel.TituloReceita.id == 0) { this.Flash(UtilMessage.TYPE_MESSAGE_INFO, "A cobrança informada não foi localizada."); return(PartialView(ViewModel)); } if (ViewModel.TituloReceita.idOrganizacao != User.idOrganizacao()) { this.Flash(UtilMessage.TYPE_MESSAGE_INFO, "A cobrança informada não foi localizada."); return(PartialView(ViewModel)); } if (ViewModel.TituloReceita.dtQuitacao.HasValue) { this.Flash(UtilMessage.TYPE_MESSAGE_INFO, "A cobrança informada já foi quitada."); return(PartialView(ViewModel)); } ViewModel.TituloReceitaPagamento.valorRecebido = ViewModel.TituloReceita.valorTotal.toDecimal(); return(PartialView(ViewModel)); }
public ActionResult registrarPagamento(BaixaTituloReceitaForm ViewModel) { ViewModel.TituloReceita = this.OTituloReceitaBL.carregar(ViewModel.TituloReceita.id) ?? new TituloReceita(); if (!ModelState.IsValid) { return(PartialView("modal-registrar-pagamento", ViewModel)); } if (ViewModel.TituloReceita.idOrganizacao != User.idOrganizacao()) { this.Flash(UtilMessage.TYPE_MESSAGE_INFO, "A cobrança informada não foi localizada."); return(PartialView("modal-registrar-pagamento", ViewModel)); } if (ViewModel.TituloReceita.dtQuitacao.HasValue) { this.Flash(UtilMessage.TYPE_MESSAGE_INFO, "A cobrança informada já foi quitada."); return(PartialView("modal-registrar-pagamento", ViewModel)); } if (ViewModel.TituloReceitaPagamento.idMeioPagamento == MeioPagamentoConst.BITLINK) { var Saldo = this.OSaldoConsultaBL.query(0, 1) .Where(x => x.Membro.idPessoa == ViewModel.TituloReceita.idPessoa) .Select(x => new { x.id, x.idMembro, x.idPessoa, x.saldoAtual }) .FirstOrDefault() .ToJsonObject <MembroSaldo>() ?? new MembroSaldo(); if (Saldo.saldoAtual < ViewModel.TituloReceitaPagamento.valorRecebido) { this.Flash(UtilMessage.TYPE_MESSAGE_INFO, "O usuário em questão não possui saldo suficiente para a operação."); return(PartialView("modal-registrar-pagamento", ViewModel)); } } ViewModel.TituloReceitaPagamento.transferirDadosTitulo(ViewModel.TituloReceita); ViewModel.TituloReceitaPagamento.idUsuarioBaixa = User.id(); if (ViewModel.TituloReceitaPagamento.idMeioPagamento == MeioPagamentoConst.DINHEIRO || ViewModel.TituloReceitaPagamento.idMeioPagamento == MeioPagamentoConst.DEPOSITO_BANCARIO || ViewModel.TituloReceitaPagamento.idMeioPagamento == MeioPagamentoConst.TRANSFERENCIA_ELETRONICA) { ViewModel.TituloReceitaPagamento.valorTarifasBancarias = 0; ViewModel.TituloReceitaPagamento.valorTarifasTransacao = 0; } ViewModel.TituloReceitaPagamento.idStatusPagamento = StatusPagamentoConst.PAGO; ViewModel.TituloReceitaPagamento.valorRecebido = decimal.Add(ViewModel.TituloReceita.valorTotal.toDecimal(), ViewModel.TituloReceitaPagamento.valorJuros.toDecimal()); var listaPagamentos = new List <TituloReceitaPagamento>(); listaPagamentos.Add(ViewModel.TituloReceitaPagamento); TituloReceitaBaixaFactoryBL.getInstance.factory(ViewModel.TituloReceita).liquidar(ViewModel.TituloReceita, listaPagamentos); this.Flash(UtilMessage.TYPE_MESSAGE_SUCCESS, "O pagamento foi registrado com sucesso"); return(PartialView("modal-registrar-pagamento", ViewModel)); }