public AbrirUmaSolicitacaoResposta AbrirUmaSolicitacao(AbrirUmaSolicitacaoRequisicao requisicao) { var resposta = new AbrirUmaSolicitacaoResposta(); try { var tipoDaSolicitacao = _tipoDaSolicitacaoRepositorio.ObterPor(requisicao.CodigoDoTipoDaSolicitacao); var responsavel = _pessoaRepositorio.ObterPor(requisicao.CodigoDoResponsavel); var programa = _programaRepositorio.ObterPor(requisicao.CodigoDoPrograma); var solicitacao = _solicitacaoServico.RealizarAbertura(tipoDaSolicitacao, responsavel, requisicao.Protocolo, requisicao.Descricao, programa); _solicitacaoRepositorio.Adicionar(solicitacao); _unitOfWork.Commit(); resposta.Solicitacao = solicitacao; resposta.Sucesso = true; } catch (RegraException regraException) { resposta.Erros = regraException.Erros; } return resposta; }
public JsonResult AddSolicitacao(NovaSolicitacaoViewModel novaSolicitacaoViewModel) { var requisicao = new AbrirUmaSolicitacaoRequisicao { CodigoDoResponsavel = User.ToPessoa().Codigo, CodigoDoTipoDaSolicitacao = novaSolicitacaoViewModel.CodigoDoTipoDaSolicitacao, Descricao = novaSolicitacaoViewModel.Solicitacao, Protocolo = novaSolicitacaoViewModel.Protocolo, CodigoDoPrograma = Session.ProgramaAtivo().Codigo }; var resposta = _solicitacaoServicoDeAplicacao.AbrirUmaSolicitacao(requisicao); return Json(new { resposta.Sucesso, resposta.Erros, Solicitacao = resposta.Solicitacao.ToViewModel() }); }