Commit 2cc8026e7673405eb59537c4daf8fa56780d6255
1 parent
ce758498
WIP Achat
Showing
4 changed files
with
56 additions
and
1 deletions
Show diff stats
src/main/java/etunicorn/Application.java
@@ -51,11 +51,14 @@ public class Application { | @@ -51,11 +51,14 @@ public class Application { | ||
51 | permissionRepository.save(new Permission("CONSO_GET")); | 51 | permissionRepository.save(new Permission("CONSO_GET")); |
52 | permissionRepository.save(new Permission("CONSO_LIST")); | 52 | permissionRepository.save(new Permission("CONSO_LIST")); |
53 | permissionRepository.save(new Permission("CONSO_REMOVE")); | 53 | permissionRepository.save(new Permission("CONSO_REMOVE")); |
54 | + permissionRepository.save(new Permission("CONSO_ACHAT")); | ||
54 | permissionRepository.save(new Permission("EVNMT_ADD")); | 55 | permissionRepository.save(new Permission("EVNMT_ADD")); |
55 | permissionRepository.save(new Permission("EVNMT_EDIT")); | 56 | permissionRepository.save(new Permission("EVNMT_EDIT")); |
56 | permissionRepository.save(new Permission("EVNMT_GET")); | 57 | permissionRepository.save(new Permission("EVNMT_GET")); |
57 | permissionRepository.save(new Permission("EVNMT_LIST")); | 58 | permissionRepository.save(new Permission("EVNMT_LIST")); |
58 | permissionRepository.save(new Permission("EVNMT_REMOVE")); | 59 | permissionRepository.save(new Permission("EVNMT_REMOVE")); |
60 | + permissionRepository.save(new Permission("EVNMT_RESERVE")); | ||
61 | + permissionRepository.save(new Permission("EVNMT_PARTICIPE")); | ||
59 | // ... | 62 | // ... |
60 | 63 | ||
61 | //roleRepository.save(new Role("admin", (List<Permission>) permissionRepository.findAll())); | 64 | //roleRepository.save(new Role("admin", (List<Permission>) permissionRepository.findAll())); |
src/main/java/etunicorn/controller/ConsommationController.java
@@ -2,10 +2,12 @@ package etunicorn.controller; | @@ -2,10 +2,12 @@ package etunicorn.controller; | ||
2 | 2 | ||
3 | import etunicorn.RestrictedTo; | 3 | import etunicorn.RestrictedTo; |
4 | import etunicorn.entity.Consommation; | 4 | import etunicorn.entity.Consommation; |
5 | +import etunicorn.entity.Personne; | ||
5 | import etunicorn.generated.model.UpdateAcheteRequest; | 6 | import etunicorn.generated.model.UpdateAcheteRequest; |
6 | import etunicorn.generated.model.UpdateConsommationByIdRequest; | 7 | import etunicorn.generated.model.UpdateConsommationByIdRequest; |
7 | import etunicorn.generated.model.UpdateConsommationRequest; | 8 | import etunicorn.generated.model.UpdateConsommationRequest; |
8 | import etunicorn.repository.ConsommationRepository; | 9 | import etunicorn.repository.ConsommationRepository; |
10 | +import etunicorn.service.PersonneService; | ||
9 | import org.springframework.beans.factory.annotation.Autowired; | 11 | import org.springframework.beans.factory.annotation.Autowired; |
10 | import org.springframework.http.HttpStatus; | 12 | import org.springframework.http.HttpStatus; |
11 | import org.springframework.http.ResponseEntity; | 13 | import org.springframework.http.ResponseEntity; |
@@ -14,6 +16,7 @@ import org.springframework.web.bind.annotation.RequestBody; | @@ -14,6 +16,7 @@ import org.springframework.web.bind.annotation.RequestBody; | ||
14 | import org.springframework.web.bind.annotation.RestController; | 16 | import org.springframework.web.bind.annotation.RestController; |
15 | 17 | ||
16 | import javax.validation.Valid; | 18 | import javax.validation.Valid; |
19 | +import java.util.LinkedHashMap; | ||
17 | 20 | ||
18 | /** | 21 | /** |
19 | * etunicorn-server | 22 | * etunicorn-server |
@@ -25,6 +28,9 @@ public class ConsommationController extends BaseController implements etunicorn. | @@ -25,6 +28,9 @@ public class ConsommationController extends BaseController implements etunicorn. | ||
25 | @Autowired | 28 | @Autowired |
26 | ConsommationRepository consommationRepository; | 29 | ConsommationRepository consommationRepository; |
27 | 30 | ||
31 | + @Autowired | ||
32 | + PersonneService personneService; | ||
33 | + | ||
28 | @Override | 34 | @Override |
29 | @RestrictedTo("CONSO_LIST") | 35 | @RestrictedTo("CONSO_LIST") |
30 | public ResponseEntity<?> getConsommation() { | 36 | public ResponseEntity<?> getConsommation() { |
@@ -86,6 +92,18 @@ public class ConsommationController extends BaseController implements etunicorn. | @@ -86,6 +92,18 @@ public class ConsommationController extends BaseController implements etunicorn. | ||
86 | @Override | 92 | @Override |
87 | @RestrictedTo("CONSO_ACHAT") | 93 | @RestrictedTo("CONSO_ACHAT") |
88 | public ResponseEntity<?> updateAchete(@PathVariable Long idConsommation, @Valid @RequestBody UpdateAcheteRequest updateAcheteRequest) { | 94 | public ResponseEntity<?> updateAchete(@PathVariable Long idConsommation, @Valid @RequestBody UpdateAcheteRequest updateAcheteRequest) { |
95 | + Consommation consommation = consommationRepository.findById(idConsommation.intValue()); | ||
96 | + if (consommation == null) { | ||
97 | + return generateError(HttpStatus.NOT_FOUND, "Consommation inconnue"); | ||
98 | + } | ||
99 | + if (!(updateAcheteRequest.getParticipant() instanceof LinkedHashMap)) { | ||
100 | + return generateError(HttpStatus.BAD_REQUEST, "Participant doit être un objet"); | ||
101 | + } | ||
102 | + Personne personne = personneService.getFromObject((LinkedHashMap<String, Object>) updateAcheteRequest.getParticipant()); | ||
103 | + if (personne == null) { | ||
104 | + return generateError(HttpStatus.NOT_FOUND, "Personne inconnue"); | ||
105 | + } | ||
106 | + // TODO To be continued... | ||
89 | return null; | 107 | return null; |
90 | } | 108 | } |
91 | } | 109 | } |
src/main/java/etunicorn/controller/PersonneController.java
@@ -72,7 +72,7 @@ public class PersonneController extends BaseController implements etunicorn.gene | @@ -72,7 +72,7 @@ public class PersonneController extends BaseController implements etunicorn.gene | ||
72 | } | 72 | } |
73 | } | 73 | } |
74 | } else { | 74 | } else { |
75 | - return generateError(HttpStatus.BAD_REQUEST, "Le rôle est un objet"); | 75 | + return generateError(HttpStatus.BAD_REQUEST, "Rôle doit être un objet"); |
76 | } | 76 | } |
77 | } | 77 | } |
78 | 78 |
src/main/java/etunicorn/service/PersonneService.java
0 → 100644
@@ -0,0 +1,34 @@ | @@ -0,0 +1,34 @@ | ||
1 | +package etunicorn.service; | ||
2 | + | ||
3 | +import etunicorn.entity.Personne; | ||
4 | +import etunicorn.repository.PersonneRepository; | ||
5 | +import org.springframework.beans.factory.annotation.Autowired; | ||
6 | +import org.springframework.stereotype.Service; | ||
7 | + | ||
8 | +import java.util.LinkedHashMap; | ||
9 | + | ||
10 | +/** | ||
11 | + * etunicorn-server | ||
12 | + * Copyright © 2017 Le Club Info Polytech Lille | ||
13 | + * Tous droits réservés | ||
14 | + */ | ||
15 | +@Service("personneService") | ||
16 | +public class PersonneService { | ||
17 | + @Autowired | ||
18 | + PersonneRepository personneRepository; | ||
19 | + | ||
20 | + public PersonneService() { | ||
21 | + } | ||
22 | + | ||
23 | + public Personne getFromObject(LinkedHashMap<String, Object> object) { | ||
24 | + String carte = (String) object.get("carte"); | ||
25 | + if (carte != null) { | ||
26 | + return personneRepository.findByCarte(carte); | ||
27 | + } | ||
28 | + Integer id = (Integer) object.get("id"); | ||
29 | + if (id != null) { | ||
30 | + return personneRepository.findById(id); | ||
31 | + } | ||
32 | + return null; | ||
33 | + } | ||
34 | +} |