Merge pull request #43 from HediMjid/sana

Sana
This commit is contained in:
Blandine Bajard 2022-02-25 09:57:31 +01:00 committed by GitHub
commit 5c92159b53
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 51 additions and 3 deletions

View File

@ -6,6 +6,8 @@ import fr.organizee.exception.ExistingUsernameException;
import fr.organizee.exception.InvalidCredentialsException; import fr.organizee.exception.InvalidCredentialsException;
import fr.organizee.exception.MembreNotFoundException; import fr.organizee.exception.MembreNotFoundException;
import fr.organizee.model.Membre; import fr.organizee.model.Membre;
import fr.organizee.model.Menu;
import fr.organizee.model.Team;
import fr.organizee.repository.MembreRepository; import fr.organizee.repository.MembreRepository;
import fr.organizee.service.MembreService; import fr.organizee.service.MembreService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -41,7 +43,7 @@ public class MembreController {
{ {
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append("<h1>Affichages des membres</h1>"); sb.append("<h1>Affichages des membres</h1>");
sb.append("<ul><li><a href='http://localhost:8080/membres/all'>Liste des <strong>membres</strong></a></li>"); sb.append("<ul><li><a href='http://localhost:8088/membres/all'>Liste des <strong>membres</strong></a></li>");
return sb.toString(); return sb.toString();
} }
@ -103,7 +105,24 @@ public class MembreController {
} }
/** /**
* Ajouter un membre et inscription * Rechercher un membre par l'Id de sa team
* @return
* http://localhost:8088/membres/1
*/
@GetMapping(value = "team/{team_id}")
//@PreAuthorize("hasRole('ROLE_PARENT') or hasRole('ROLE_ENFANT')")
public ResponseEntity<?> findByTeamId(@PathVariable int team_id) {
List<Membre> membres = null;
try {
membres = membreRepo.FindMembresByTeam(team_id);
} catch (Exception e) {
return ResponseEntity.status(HttpStatus.NOT_FOUND).body(null);
}
return ResponseEntity.status(HttpStatus.OK).body(membres);
}
/**
* Inscription
* @return * @return
* http://localhost:8088/membres/sign-up * http://localhost:8088/membres/sign-up
*/ */
@ -117,6 +136,28 @@ public class MembreController {
} }
} }
/**
* Ajout d'un membre
* @return
* http://localhost:8088/membres/add
*/
@PostMapping(value="/add/{team_id}", produces="application/json", consumes= "application/json")
//@PreAuthorize("hasRole('ROLE_PARENT') or hasRole('ROLE_ENFANT')")
public ResponseEntity<?> addMembre(@RequestBody Membre membre, @PathVariable Integer team_id){
Membre resultMembre = null;
try{
Team team = new Team();
team.setId(team_id);
membre.setTeam(team);
//resultMembre = membreRepo.saveAndFlush(membre);
return ResponseEntity.ok(new JsonWebToken(membreService.signup(membre)));
} catch (Exception e) {
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage());
}
//return ResponseEntity.status(HttpStatus.CREATED).body(resultMembre);
}
/** /**
* Modifier une commande par son Id * Modifier une commande par son Id
* @return * @return

View File

@ -2,6 +2,7 @@ package fr.organizee.repository;
import fr.organizee.model.Contact; import fr.organizee.model.Contact;
import fr.organizee.model.Membre; import fr.organizee.model.Membre;
import fr.organizee.model.Menu;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query; import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
@ -12,6 +13,10 @@ import java.util.Optional;
@Repository @Repository
public interface MembreRepository extends JpaRepository<Membre, Integer> { public interface MembreRepository extends JpaRepository<Membre, Integer> {
@Query(value = "select * from membre where team_id = :team_id", nativeQuery = true)
List<Membre> FindMembresByTeam(@Param("team_id") int team_id);
Membre findByNom(String nom); Membre findByNom(String nom);
Optional<Membre> findByEmail(String email); Optional<Membre> findByEmail(String email);

View File

@ -48,7 +48,9 @@ public class MembreServiceImpl implements MembreService {
@Override @Override
public String signup(Membre membre) throws ExistingUsernameException { public String signup(Membre membre) throws ExistingUsernameException {
if (!membreRepository.existsByEmail(membre.getEmail())) { if (!membreRepository.existsByEmail(membre.getEmail())) {
Membre membreToSave = new Membre(membre.getNom(), membre.getPrenom(), membre.getCouleur(), membre.getDateNaissance(), membre.getTeam(), membre.getEmail(), passwordEncoder.encode(membre.getPassword()), membre.getRoleList()); Membre membreToSave = new Membre(membre.getNom(), membre.getPrenom(), membre.getCouleur(),
membre.getDateNaissance(), membre.getTeam(), membre.getEmail(),
passwordEncoder.encode(membre.getPassword()), membre.getRoleList());
membreRepository.save(membreToSave); membreRepository.save(membreToSave);
return jwtTokenProvider.createToken(membre.getEmail(), membre.getRoleList()); return jwtTokenProvider.createToken(membre.getEmail(), membre.getRoleList());
} else { } else {