diff --git a/src/main/java/etunicorn/controller/ConsommationController.java b/src/main/java/etunicorn/controller/ConsommationController.java new file mode 100644 index 0000000..fefed86 --- /dev/null +++ b/src/main/java/etunicorn/controller/ConsommationController.java @@ -0,0 +1,55 @@ +package etunicorn.controller; + +import etunicorn.entity.Consommation; +import etunicorn.generated.model.UpdateConsommationByIdRequest; +import etunicorn.generated.model.UpdateConsommationRequest; +import etunicorn.repository.ConsommationRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.validation.Valid; + +/** + * etunicorn-server + * Copyright © 2017 Le Club Info Polytech Lille + * Tous droits réservés + */ +@RestController +public class ConsommationController extends BaseController implements etunicorn.generated.ConsommationController { + @Autowired + ConsommationRepository consommationRepository; + + @Override + public ResponseEntity getConsommation() { + return new ResponseEntity(this.consommationRepository.findAll(), HttpStatus.OK); + } + + private ResponseEntity mergeConsommation(Consommation consommation, UpdateConsommationRequest updateConsommationRequest) { + // if (updateConsommationRequest.get) + return null; + } + + @Override + public ResponseEntity updateConsommation(@Valid @RequestBody UpdateConsommationRequest updateConsommationRequest) { + return null; + } + + @Override + public ResponseEntity updateConsommationById(@PathVariable Long consommationId, @Valid @RequestBody UpdateConsommationByIdRequest updateConsommationByIdRequest) { + return null; + } + + @Override + public ResponseEntity getConsommationById(@PathVariable Long consommationId) { + return null; + } + + @Override + public ResponseEntity deleteConsommationById(@PathVariable Long consommationId) { + return null; + } +} diff --git a/src/main/java/etunicorn/controller/PersonneController.java b/src/main/java/etunicorn/controller/PersonneController.java index 99baa42..7fbcb1f 100644 --- a/src/main/java/etunicorn/controller/PersonneController.java +++ b/src/main/java/etunicorn/controller/PersonneController.java @@ -43,12 +43,12 @@ public class PersonneController extends BaseController implements etunicorn.gene } private ResponseEntity mergePersonne(Personne personne, UpdatePersonneRequest updatePersonneRequest) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); if (updatePersonneRequest.getNaissance() != null) { + SimpleDateFormat format = new SimpleDateFormat("y-M-d"); try { personne.setNaissance(format.parse(updatePersonneRequest.getNaissance())); } catch (ParseException e) { - e.printStackTrace(); + return generateError(HttpStatus.BAD_REQUEST, e, "La date n'est pas au format " + format.toString()); } } if (updatePersonneRequest.getCarte() != null) { @@ -57,9 +57,6 @@ public class PersonneController extends BaseController implements etunicorn.gene if (updatePersonneRequest.getLogin() != null) { personne.setLogin(updatePersonneRequest.getLogin()); } - if (personne.getCarte() == null && personne.getLogin() == null) { - return generateError(HttpStatus.BAD_REQUEST, "La date ou la carte doivent être au moins renseignés."); - } if (updatePersonneRequest.getRole() != null) { if (updatePersonneRequest.getRole() instanceof LinkedHashMap) { LinkedHashMap roleMap = (LinkedHashMap) updatePersonneRequest.getRole(); @@ -78,6 +75,14 @@ public class PersonneController extends BaseController implements etunicorn.gene return generateError(HttpStatus.BAD_REQUEST, "Le rôle est un objet"); } } + + if (personne.getCarte() == null && personne.getLogin() == null) { + return generateError(HttpStatus.BAD_REQUEST, "Le login ou la carte doivent être au moins renseignés."); + } + if (personne.getRole() == null) { + personne.setRole(roleRepository.findByNom("etudiant")); + } + try { this.personneRepository.save(personne); } catch (DataIntegrityViolationException e) { @@ -122,6 +127,7 @@ public class PersonneController extends BaseController implements etunicorn.gene @RestrictedTo("PERSONNE_REMOVE") public ResponseEntity deletePersonneById(@PathVariable BigDecimal idPersonne) { Personne personne = personneRepository.findById(idPersonne.intValueExact()); + if (personne == null) { return new ResponseEntity(HttpStatus.NOT_FOUND); } diff --git a/src/main/java/etunicorn/entity/Evenement.java b/src/main/java/etunicorn/entity/Evenement.java index 420a843..5189cd9 100644 --- a/src/main/java/etunicorn/entity/Evenement.java +++ b/src/main/java/etunicorn/entity/Evenement.java @@ -56,7 +56,7 @@ public class Evenement { this.prix = prix; } - @JsonFormat(pattern = "YYYY-MM-DD hh:mm:ss") + @JsonFormat(pattern = "Y-M-d H:m:s") public Date getDate() { return date; } diff --git a/src/main/java/etunicorn/entity/Personne.java b/src/main/java/etunicorn/entity/Personne.java index dd036f8..6544c08 100644 --- a/src/main/java/etunicorn/entity/Personne.java +++ b/src/main/java/etunicorn/entity/Personne.java @@ -66,7 +66,7 @@ public class Personne { this.carte = carte; } - @JsonFormat(pattern="YYYY-MM-DD hh:mm:ss") + @JsonFormat(pattern = "Y-M-d H:m:s") public Date getNaissance() { return naissance; } diff --git a/src/main/java/etunicorn/repository/ConsommationRepository.java b/src/main/java/etunicorn/repository/ConsommationRepository.java new file mode 100644 index 0000000..1fe27f5 --- /dev/null +++ b/src/main/java/etunicorn/repository/ConsommationRepository.java @@ -0,0 +1,13 @@ +package etunicorn.repository; + +import etunicorn.entity.Consommation; +import org.springframework.data.repository.CrudRepository; + +/** + * etunicorn-server + * Copyright © 2017 Le Club Info Polytech Lille + * Tous droits réservés + */ +public interface ConsommationRepository extends CrudRepository { + Consommation findById(int id); +} diff --git a/src/main/java/etunicorn/repository/EvenementRepository.java b/src/main/java/etunicorn/repository/EvenementRepository.java new file mode 100644 index 0000000..034a8b7 --- /dev/null +++ b/src/main/java/etunicorn/repository/EvenementRepository.java @@ -0,0 +1,13 @@ +package etunicorn.repository; + +import etunicorn.entity.Evenement; +import org.springframework.data.repository.CrudRepository; + +/** + * etunicorn-server + * Copyright © 2017 Le Club Info Polytech Lille + * Tous droits réservés + */ +public interface EvenementRepository extends CrudRepository { + Evenement findById(int id); +} diff --git a/src/main/java/etunicorn/repository/TransactionRepository.java b/src/main/java/etunicorn/repository/TransactionRepository.java new file mode 100644 index 0000000..659bcea --- /dev/null +++ b/src/main/java/etunicorn/repository/TransactionRepository.java @@ -0,0 +1,13 @@ +package etunicorn.repository; + +import etunicorn.entity.Transaction; +import org.springframework.data.repository.CrudRepository; + +/** + * etunicorn-server + * Copyright © 2017 Le Club Info Polytech Lille + * Tous droits réservés + */ +public interface TransactionRepository extends CrudRepository { + Transaction findById(int id); +} -- libgit2 0.21.2