/// <summary> /// Metodo responsavel por registrar uma candidatura /// </summary> /// <param name="model">Informacoes da vaga e do candidato</param> /// <returns>Status de registro da candidatura</returns> public async Task <bool> RegisterCandidatura(Candidatura model) { var candidatura = await GetCandidaturaByPessoaAndVaga(model.Id_Pessoa, model.Id_Vaga); if (candidatura != null) { return(false); } var result = await _repository.RegisterCandidatura(model); if (result) { Vaga vaga = await _vagaGateway.GetVagaById(model.Id_Vaga); Pessoa pessoa = await _pessoaGateway.GetPessoaById(model.Id_Pessoa); await _rankingGateway.AddRankingVaga(vaga, pessoa); } return(true); }