// GET: api/Empresas public IEnumerable <Vaga> GetVagas() { VagasRepository vagaRepository = new VagasRepository(); var vagas = vagaRepository.GetAll(); return(vagas); }
public IHttpActionResult PostVaga(Vaga vaga) { validador.ValidateAndThrow(vaga); VagasRepository vagaRepository = new VagasRepository(); vagaRepository.Save(vaga); return(CreatedAtRoute("DefaultApi", new { id = vaga.Id }, vaga)); }
public IHttpActionResult GetRequisitos(int id) { if (id <= 0) { return(BadRequest("O id informado na URL deve ser maior que zero.")); } VagasRepository vagaRepository = new VagasRepository(); Vaga vaga = vagaRepository.Get(id); if (vaga == null) { return(NotFound()); } return(Ok(vaga.Requisitos)); }
public IHttpActionResult DeleteVaga(int id) { if (id <= 0) { return(BadRequest("O id informado na URL deve ser maior que zero.")); } VagasRepository vagaRepository = new VagasRepository(); Vaga vaga = vagaRepository.Get(id); if (vaga == null) { return(NotFound()); } if (vagaRepository.vagaCount(id) > 0) { return(Content(HttpStatusCode.Forbidden, "Essa vaga não pode ser excluída, pois há requesitos ativos relacionadas a ela.")); } vagaRepository.Delete(vaga); return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PutVaga(int id, Vaga vaga) { if (id <= 0) { return(BadRequest("O id informado na URL deve ser maior que zero.")); } if (id != vaga.Id) { return(BadRequest("O id informado na URL deve ser igual ao id informado no corpo da requisição.")); } VagasRepository vagaRepository = new VagasRepository(); if (vagaRepository.vagaCount(id) == 0) { return(NotFound()); } validador.ValidateAndThrow(vaga); vagaRepository.Update(vaga); return(StatusCode(HttpStatusCode.NoContent)); }