Esempio n. 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));
        }
Esempio n. 2
0
        public ActionResult RejeitarAplicacao(int vagaId, int usuarioId)
        {
            try
            {
                Aplicacao aplicacao = projetoRepository.FindAplicacao(vagaId, usuarioId);

                Notificacao notificacao = new Notificacao()
                {
                    UsuarioId = aplicacao.UsuarioId,
                    Mensagem  = "A aplicação enviada para a vaga \"" + aplicacao.Vaga.Funcao + "\" do projeto \"" +
                                aplicacao.Vaga.Projeto.Nome + "\" foi rejeitada."
                };

                notificacaoRepository.Save(notificacao);

                projetoRepository.DeleteAplicacao(aplicacao);
            }
            catch
            {
                //TODO: Registrar a exceção em log
                Response.StatusCode = 500;
                return(Content("Não foi possível rejeitar a aplicação por falha interna."));
            }

            return(Json(new { responseText = "A aplicação foi rejeitada com sucesso." }, JsonRequestBehavior.AllowGet));
        }