Class TripMemberController
java.lang.Object
com.mapmyjourney.backend.controller.TripMemberController
@RestController
@RequestMapping("/trips/{tripId}/members")
public class TripMemberController
extends Object
Controlador REST para gestionar miembros de viajes.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<TripMemberDTO> addMember(Long tripId, @Valid AddMemberRequestDTO request) 1.org.springframework.http.ResponseEntity<TripMemberDTO> changeMemberRole(Long tripId, Long userId, @Valid ChangeMemberRoleRequestDTO request) 4.org.springframework.http.ResponseEntity<TripMemberDTO> 3.org.springframework.http.ResponseEntity<List<TripMemberDTO>> getTripMembers(Long tripId) 2.org.springframework.http.ResponseEntity<Void> 6.org.springframework.http.ResponseEntity<Void> removeMember(Long tripId, Long userId) 5.
-
Constructor Details
-
TripMemberController
public TripMemberController()
-
-
Method Details
-
addMember
@PreAuthorize("hasRole(\'USER\')") @PostMapping public org.springframework.http.ResponseEntity<TripMemberDTO> addMember(@PathVariable Long tripId, @Valid @RequestBody @Valid AddMemberRequestDTO request) 1. Agrega un nuevo miembro al viaje. POST /api/trips/{tripId}/members -
getTripMembers
@PreAuthorize("hasRole(\'USER\')") @GetMapping public org.springframework.http.ResponseEntity<List<TripMemberDTO>> getTripMembers(@PathVariable Long tripId) 2. Obtiene todos los miembros del viaje. GET /api/trips/{tripId}/members -
getMember
@PreAuthorize("hasRole(\'USER\')") @GetMapping("/{userId}") public org.springframework.http.ResponseEntity<TripMemberDTO> getMember(@PathVariable Long tripId, @PathVariable Long userId) 3. Obtiene un miembro especĂfico. GET /api/trips/{tripId}/members/{userId} -
changeMemberRole
@PreAuthorize("hasRole(\'USER\')") @PutMapping("/{userId}/role") public org.springframework.http.ResponseEntity<TripMemberDTO> changeMemberRole(@PathVariable Long tripId, @PathVariable Long userId, @Valid @Valid ChangeMemberRoleRequestDTO request) 4. Cambia el rol de un miembro. PUT /api/trips/{tripId}/members/{userId}/role Solo OWNER puede cambiar roles. -
removeMember
@PreAuthorize("hasRole(\'USER\')") @DeleteMapping("/{userId}") public org.springframework.http.ResponseEntity<Void> removeMember(@PathVariable Long tripId, @PathVariable Long userId) 5. Elimina un miembro del viaje. DELETE /api/trips/{tripId}/members/{userId} Solo OWNER puede remover miembros. -
leaveTrip
@PreAuthorize("hasRole(\'USER\')") @PostMapping("/leave") public org.springframework.http.ResponseEntity<Void> leaveTrip(@PathVariable Long tripId) 6. Permite que el usuario abandone el viaje. POST /api/trips/{tripId}/members/leave
-