Skip to content

Commit 3cf8725

Browse files
feat: 대기열 도메인 테스트용 관리자 API 추가
* feat: 테스트용 API 추가 * refactor: 불필요한 파일 제거 * refactor: 1순위 사용자 시간 변경 * refactor: 1순위 사용자 시간 변경
1 parent ae80c1a commit 3cf8725

4 files changed

Lines changed: 36 additions & 2 deletions

File tree

backend/src/main/java/com/back/api/queue/controller/AdminQueueEntryApi.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import com.back.api.queue.dto.request.ShuffleQueueRequest;
77
import com.back.api.queue.dto.response.CompletedQueueResponse;
8+
import com.back.api.queue.dto.response.ProcessEntriesResponse;
89
import com.back.api.queue.dto.response.QueueStatisticsResponse;
910
import com.back.api.queue.dto.response.ShuffleQueueResponse;
1011
import com.back.global.config.swagger.ApiErrorCode;
@@ -74,4 +75,22 @@ ApiResponse<Void> resetQueue(
7475
@PathVariable Long eventId
7576
);
7677

78+
79+
@Operation(
80+
summary = "[테스트용] 특정 사용자 포함 상위 대기자 모두 입장 처리",
81+
description = "관리자가 특정 사용자와 그 사용자 앞의 모든 대기자를 입장 처리합니다."
82+
)
83+
@ApiErrorCode({
84+
"NOT_FOUND_QUEUE_ENTRY",
85+
"NOT_WAITING_STATUS",
86+
"NOT_INVALID_COUNT"
87+
})
88+
ApiResponse<ProcessEntriesResponse> processIncludingUser(
89+
@Parameter(description = "이벤트 ID", example = "1")
90+
@PathVariable Long eventId,
91+
92+
@Parameter(description = "사용자 ID", example = "1")
93+
@PathVariable Long userId
94+
);
95+
7796
}

backend/src/main/java/com/back/api/queue/controller/AdminQueueEntryController.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
import com.back.api.queue.dto.request.ShuffleQueueRequest;
1313
import com.back.api.queue.dto.response.CompletedQueueResponse;
14+
import com.back.api.queue.dto.response.ProcessEntriesResponse;
1415
import com.back.api.queue.dto.response.QueueStatisticsResponse;
1516
import com.back.api.queue.dto.response.ShuffleQueueResponse;
1617
import com.back.api.queue.service.QueueEntryProcessService;
@@ -80,4 +81,18 @@ public ApiResponse<Void> resetQueue(
8081
return ApiResponse.ok("대기열이 초기화되었습니다.", null);
8182
}
8283

84+
@Override
85+
@PostMapping("/users/{userId}/process-include")
86+
public ApiResponse<ProcessEntriesResponse> processIncludingUser(
87+
@PathVariable Long eventId,
88+
@PathVariable Long userId
89+
) {
90+
ProcessEntriesResponse response = queueEntryProcessService.processTopEntriesIncludingMeForTest(
91+
eventId,
92+
userId
93+
);
94+
95+
return ApiResponse.ok("해당 유저 포함 상위 대기자 입장 처리가 완료되었습니다.", response);
96+
}
97+
8398
}

backend/src/main/java/com/back/api/queue/service/QueueEntryReadService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public WaitingQueueResponse buildWaitingQueueResponseFromRank(
7878

7979
// 1순위 사용자 처리
8080
if (waitingAhead == 0) {
81-
estimatedWaitTime = 3;
81+
estimatedWaitTime = 1;
8282
progress = 99;
8383
} else {
8484
estimatedWaitTime = waitingAhead * 3;

backend/src/test/java/com/back/api/queue/service/QueueEntryReadServiceTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -406,7 +406,7 @@ void buildWaitingQueueResponse_FirstRank() {
406406
// then
407407
assertThat(response.queueRank()).isEqualTo(1);
408408
assertThat(response.waitingAhead()).isEqualTo(0);
409-
assertThat(response.estimatedWaitTime()).isEqualTo(3);
409+
assertThat(response.estimatedWaitTime()).isEqualTo(1);
410410
assertThat(response.progress()).isEqualTo(99);
411411
}
412412

0 commit comments

Comments
 (0)