Creare i servizi REST per le operazioni di CRUD di un Candidate.
Validazioni
Il candidato ha tutte le informazioni valorizzate.
Nome e cognome hanno solo caratteri alfabetici e spazi.
La mail deve essere formattata correttamente.
Il numero di telefono ha solo cifre e il + per il prefisso internazionale.
Il candidato deve avere almeno 18 anni (farà fede la data di nascita)
Il candidato ha almeno una skill.
Se la skill non esiste nel nostro database (match case insensitive) allora viene salvata anche la nuova skill.
Viene creata una entry nella tabella Curriculum per ogni Skill associata al candidate.
Acceptace Criteria
La cancellazione avviene settando il flag is_active a FALSE:
I servizi devono permettere l'inserimento, l'aggiornamento e la cancellazione di un Candidate.
Usare il framework Spring MVC.
Usare il framework SpringData.
Utilizzare i concetti ed i costrutti di Functional programming.
Creare la classe e i casi di test.
Creare i servizi REST per le operazioni di CRUD di un Candidate.
Validazioni Il candidato ha tutte le informazioni valorizzate. Nome e cognome hanno solo caratteri alfabetici e spazi. La mail deve essere formattata correttamente. Il numero di telefono ha solo cifre e il + per il prefisso internazionale. Il candidato deve avere almeno 18 anni (farà fede la data di nascita) Il candidato ha almeno una skill. Se la skill non esiste nel nostro database (match case insensitive) allora viene salvata anche la nuova skill. Viene creata una entry nella tabella Curriculum per ogni Skill associata al candidate.
Acceptace Criteria La cancellazione avviene settando il flag is_active a FALSE: I servizi devono permettere l'inserimento, l'aggiornamento e la cancellazione di un Candidate. Usare il framework Spring MVC. Usare il framework SpringData. Utilizzare i concetti ed i costrutti di Functional programming. Creare la classe e i casi di test.