public RealizarAprovacaoDeUmaSolicitacaoResposta RealizarAprovacaoDeUmaSolicitacao(RealizarAprovacaoDeUmaSolicitacaoRequisicao requisicao)
 {
     var resposta = new RealizarAprovacaoDeUmaSolicitacaoResposta();
     try
     {
         var solicitacao = _solicitacaoRepositorio.ObterPor(requisicao.CodigoDaSolicitacao);
         var responsavel = _clienteRepositorio.ObterPor(requisicao.CodigoDoResponsavel);
         var programa = _programaRepositorio.ObterPor(requisicao.CodigoDoPrograma);
         solicitacao = _solicitacaoServico.RealizarAprovacao(solicitacao, responsavel, requisicao.Aprovado,
                                                requisicao.Observacoes, programa);
         _unitOfWork.Commit();
         resposta.Solicitacao = solicitacao;
         resposta.Sucesso = true;
     }
     catch (RegraException regraException)
     {
         resposta.Erros = regraException.Erros;
     }
     return resposta;
 }
        public JsonResult SalvarAprovacaoDeSolicitacao(AprovacaoDeSolicitacaoViewModel viewModel)
        {
            var requisicao = new RealizarAprovacaoDeUmaSolicitacaoRequisicao
            {
                Aprovado = viewModel.Aprovado,
                Observacoes = viewModel.Observacao,
                CodigoDaSolicitacao = viewModel.Codigo,
                CodigoDoResponsavel = User.ToPessoa().Codigo,
                CodigoDoPrograma = Session.ProgramaAtivo().CodPrograma
            };
            var resposta = _solicitacaoServicoDeAplicacao.RealizarAprovacaoDeUmaSolicitacao(requisicao);

            return Json(new { resposta.Sucesso, resposta.Erros, Solicitacao = resposta.Solicitacao != null ? resposta.Solicitacao.ToViewModel() : null });
        }