No projeto inicial do curso a classe de "ValidacaoTutorComAdocaoEmAndamento" está diferente da classe final, essa classe ela foi mudada durante as aulas ou era para ser mudada no decorrer dos desafios? Segue a comparação entre as classes do projeto inicial e do projeto final.
//Projeto Inicial @Component public class ValidacaoTutorComAdocaoEmAndamento implements ValidacaoSolicitacaoAdocao {
@Autowired
private AdocaoRepository adocaoRepository;
@Autowired
private TutorRepository tutorRepository;
public void validar(SolicitacaoAdocaoDto dto) {
List<Adocao> adocoes = adocaoRepository.findAll();
Tutor tutor = tutorRepository.getReferenceById(dto.idTutor());
for (Adocao a : adocoes) {
if (a.getTutor() == tutor && a.getStatus() == StatusAdocao.AGUARDANDO_AVALIACAO) {
throw new ValidacaoException("Tutor já possui outra adoção aguardando avaliação!");
}
}
}
}
//Projeto final @Component public class ValidacaoTutorComAdocaoEmAndamento implements ValidacaoSolicitacaoAdocao {
@Autowired
private AdocaoRepository adocaoRepository;
public void validar(SolicitacaoAdocaoDto dto) {
boolean tutorTemAdocaoEmAndamento = adocaoRepository.existsByTutorIdAndStatus(dto.idTutor(), StatusAdocao.AGUARDANDO_AVALIACAO);
if (tutorTemAdocaoEmAndamento) {
throw new ValidacaoException("Tutor já possui outra adoção aguardando avaliação!");
}
}
}