예제 #1
0
        public ActionResult SalvarAplicacao(ProjetoViewModel vm)
        {
            try
            {
                Vaga    vaga    = vagaRepository.FindById(vm.Aplicacao.VagaId);
                Projeto projeto = projetoRepository.FindById(vm.Projeto.Id);

                Aplicacao aplicacao = new Aplicacao
                {
                    UsuarioId = User.Id,
                    VagaId    = vm.Aplicacao.VagaId,
                    Mensagem  = vm.Aplicacao.Mensagem
                };

                projetoRepository.SaveAplicacao(aplicacao);
                notificacaoRepository.Save(new Notificacao()
                {
                    UsuarioId = projeto.UsuarioId,
                    Mensagem  = "O usuário " + User.NomeCompleto + " enviou uma aplicação ao projeto \"" + projeto.Nome +
                                "\" para a vaga de \"" + vaga.Funcao + "\"."
                });
            }
            catch
            {
                //TODO: Colocar exceção em log
                Response.StatusCode = 500;
                return(Content("Falha interna ao enviar a aplicação!"));
            }

            return(Json(new { responseText = "Aplicação enviada com sucesso!" }, JsonRequestBehavior.AllowGet));
        }