public RealizarAnalizeDeUmaSolicitacaoResposta RealizarAnalizeDeUmaSolicitacao(RealizarAnalizeDeUmaSolicitacaoRequisicao requisicao)
        {
            var resposta = new RealizarAnalizeDeUmaSolicitacaoResposta();

            try
            {
                var solicitacao = _solicitacaoRepositorio.ObterPor(requisicao.CodigoDaSolicitacao);
                var responsavel = _funcionarioRepositorio.ObterPor(requisicao.CodigoDoResponsavel);
                var programa    = _programaRepositorio.ObterPor(requisicao.CodigoDoPrograma);
                solicitacao = _solicitacaoServico.RealizarAnalise(solicitacao, responsavel, requisicao.ClientePrecisaAprovar,
                                                                  requisicao.Atividade, requisicao.Custo, requisicao.DiasParaEntrega, requisicao.Analise, programa);
                _unitOfWork.Commit();
                resposta.Solicitacao = solicitacao;
                resposta.Sucesso     = true;
            }
            catch (RegraException regraException)
            {
                resposta.Erros = regraException.Erros;
            }

            return(resposta);
        }
        public PartialViewResult VisualizarSolicitacao(int id)
        {
            var solicitacao = _solicitacaoRepositorio.ObterPor(id);

            switch (solicitacao.Situacao)
            {
            case SituacaoDaSolicitacao.Analise:
                return(PartialView("VisualizarSolicitacaoAnalise", solicitacao.ToViewModel()));

            case SituacaoDaSolicitacao.Aprovacao:
                return(PartialView("VisualizarSolicitacaoAprovacao", solicitacao.ToViewModel()));

            case SituacaoDaSolicitacao.Processo:
                return(PartialView("VisualizarSolicitacaoProcesso", solicitacao.ToViewModel()));

            case SituacaoDaSolicitacao.Entregue:
                return(PartialView("VisualizarSolicitacaoEntregue", solicitacao.ToViewModel()));

            default:
                return(PartialView("VisualizarSolicitacaoFinalizada", solicitacao.ToViewModel()));
            }
        }