feat: 근로자 목록 조회 API 구현#49
Merged
Merged
Conversation
This was referenced Jul 24, 2026
krestar
approved these changes
Jul 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
왜 필요한가요?
Closes #5
#5의 근로자 목록 조회(
GET /workers)를 구현합니다. #40에서 5개 API를 먼저 구현했고,이번 PR로 #5가 소유한 6개 API가 모두 완료됩니다.
WorkerSensitiveData는 #48로 분리했습니다.무엇이 바뀌나요?
Public API
GET /api/v1/workersstatus?, language?, expiryBefore?, page=0, size=20items, page, size, total_elementsADMIN/HR/VIEWER모두 조회 가능 (기존 상세조회와 동일한 권한 정책)size는 1~100 범위를 벗어나면 400으로 거부합니다.Repository
WorkerRepository.findPage/countPage를 추가하고, 두 메서드가 같은 필터 조건(where절)을공유하도록 조립 로직을 분리했습니다.
보안 검증
검증
./gradlew test --tests 'com.fowoco.server.worker.*'./gradlew clean test build모두 통과했습니다 (
WorkerSecurityIntegrationTest11개).이번 PR에서 하지 않는 것
WorkerSensitiveData— #48로 분리리뷰 포인트
Page<T>대신 직접 만든WorkerPageResponse로 간 것이 적절한지size범위(1~100)와 기본값(20)이 실제 사용 패턴에 맞는지