Ejemplo n.º 1
0
        public ActionResult Create(Pagamento pagamento)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    //pagamento.Cliente = _RepositoryCliente.BuscarPorId(pagamento.Cliente.Id);

                    Cliente cliente = repositoryCliente.BuscarPorCpf(pagamento.Cliente.Cpf);
                    if (cliente != null && cliente.valorPagar > 0)
                    {
                        pagamento.FormaPagamento = repositoryFormaPagamento.BuscarPorId(pagamento.FormaPagamentoId);
                        pagamento.Cliente        = cliente;

                        repositoryPagamento.Adicionar(pagamento);
                        repositoryPagamento.Salvar();

                        repositoryPagamento.RegistrarPagamento(pagamento);

                        return(RedirectToAction("Listar", "Pagamento"));
                    }
                    else if (cliente.valorPagar == 0)
                    {
                        pagamento.FormaPagamento = repositoryFormaPagamento.BuscarPorId(pagamento.FormaPagamentoId);
                        pagamento.Cliente        = cliente;
                        repositoryPagamento.Adicionar(pagamento);
                        repositoryPagamento.Salvar();
                    }
                }

                return(View(pagamento));
            }
            catch (Exception e)
            {
                return(View(e.Message));
            }
        }
Ejemplo n.º 2
0
        public Pagamento PagarConsulta(Pagamento pagamento)
        {
            var consultaPagar = _consultaRepository.ObterNaoFinalizadaPorId(pagamento.IdConsulta);

            if (consultaPagar == null)
            {
                throw new Exception("Está consulta não está finalizada ou não existe");
            }

            consultaPagar.AlterarStatus(EnumStatusConsulta.Finalizada);

            _pagamentoRepository.Inserir(pagamento);

            _pagamentoRepository.Salvar();

            return(pagamento);
        }