public AdicionarTreinamentoResposta AdicionarTreinamento(AdicionarTreinamentoRequisicao requisicao)
        {
            var resposta = new AdicionarTreinamentoResposta();
            try
            {
                var responsavel = _funcionarioRepositorio.ObterPor(requisicao.CodigoDoResponsavel);
                var programa = _programaRepositorio.ObterPor(requisicao.CodigoDoPrograma);

                resposta.Treinamento = _treinamentoServico.AdicionarTreinamento(programa, requisicao.DataRealizacao,
                    responsavel, requisicao.Local, requisicao.Titulo, requisicao.Descricao);

                _unitOfWork.Commit();
                resposta.Sucesso = true;
            }
            catch (RegraException regraException)
            {
                resposta.Erros = regraException.Erros;
            }
            return resposta;
        }
 private AdicionarTreinamentoResposta IncluirTreinamento(AdicionarTreinamentoViewModel viewModel)
 {
     var requisicao = new AdicionarTreinamentoRequisicao
     {
         DataRealizacao = viewModel.DataRealizacao,
         CodigoDoResponsavel = viewModel.CodigoDoResponsavel,
         Local = viewModel.Local,
         Titulo = viewModel.Titulo,
         Descricao = viewModel.Descricao,
         CodigoDoPrograma = Session.ProgramaAtivo().Codigo
     };
     var resposta = _treinamentoServicoDeAplicacao.AdicionarTreinamento(requisicao);
     return resposta;
 }