파티시페이션

This commit is contained in:
jhbkjh 2025-10-30 18:07:28 +09:00
parent c95c47d630
commit 027ab86e8d
2 changed files with 11 additions and 14 deletions

View File

@ -25,9 +25,8 @@ import org.springframework.web.bind.annotation.*;
* @since 2025-01-24
*/
@Slf4j
@CrossOrigin(origins = "http://localhost:3000")
@RequestMapping
@RestController
@RequestMapping("/api/v1")
@RequiredArgsConstructor
public class ParticipationController {
@ -35,9 +34,9 @@ public class ParticipationController {
/**
* 이벤트 참여
* POST /participations/{eventId}/participate
* POST /events/{eventId}/participate
*/
@PostMapping("/participations/{eventId}/participate")
@PostMapping("/events/{eventId}/participate")
public ResponseEntity<ApiResponse<ParticipationResponse>> participate(
@PathVariable String eventId,
@Valid @RequestBody ParticipationRequest request) {
@ -61,15 +60,14 @@ public class ParticipationController {
/**
* 참여자 목록 조회
* GET /participations/{eventId}/participants
* GET /events/{eventId}/participants (프론트엔드 호환)
* GET /events/{eventId}/participants
*/
@Operation(
summary = "참여자 목록 조회",
description = "이벤트의 참여자 목록을 페이징하여 조회합니다. " +
"정렬 가능한 필드: createdAt(기본값), participantId, name, phoneNumber, bonusEntries, isWinner, wonAt"
)
@GetMapping({"/participations/{eventId}/participants", "/events/{eventId}/participants"})
@GetMapping({"/events/{eventId}/participants"})
public ResponseEntity<ApiResponse<PageResponse<ParticipationResponse>>> getParticipants(
@Parameter(description = "이벤트 ID", example = "evt_20250124_001")
@PathVariable String eventId,
@ -90,10 +88,9 @@ public class ParticipationController {
/**
* 참여자 상세 조회
* GET /participations/{eventId}/participants/{participantId}
* GET /events/{eventId}/participants/{participantId} (프론트엔드 호환)
* GET /events/{eventId}/participants/{participantId}
*/
@GetMapping({"/participations/{eventId}/participants/{participantId}", "/events/{eventId}/participants/{participantId}"})
@GetMapping({"/events/{eventId}/participants/{participantId}"})
public ResponseEntity<ApiResponse<ParticipationResponse>> getParticipant(
@PathVariable String eventId,
@PathVariable String participantId) {

View File

@ -27,7 +27,7 @@ import org.springframework.web.bind.annotation.*;
@Slf4j
@CrossOrigin(origins = "http://localhost:3000")
@RestController
@RequestMapping("/api/v1")
@RequestMapping
@RequiredArgsConstructor
public class WinnerController {
@ -35,9 +35,9 @@ public class WinnerController {
/**
* 당첨자 추첨
* POST /participations/{eventId}/draw-winners
* POST /events/{eventId}/draw-winners
*/
@PostMapping("/participations/{eventId}/draw-winners")
@PostMapping("/events/{eventId}/draw-winners")
public ResponseEntity<ApiResponse<DrawWinnersResponse>> drawWinners(
@PathVariable String eventId,
@Valid @RequestBody DrawWinnersRequest request) {
@ -57,7 +57,7 @@ public class WinnerController {
description = "이벤트의 당첨자 목록을 페이징하여 조회합니다. " +
"정렬 가능한 필드: winnerRank(기본값), wonAt, participantId, name, phoneNumber, bonusEntries"
)
@GetMapping("/participations/{eventId}/winners")
@GetMapping("/events/{eventId}/winners")
public ResponseEntity<ApiResponse<PageResponse<ParticipationResponse>>> getWinners(
@Parameter(description = "이벤트 ID", example = "evt_20250124_001")
@PathVariable String eventId,