Conversation
- 승인 완료(APPROVED) 상태 판매자를 개인/사업자 별로 분리 조회 - GET /api/admin/sellers/individual (실명·이메일·정산계좌 + 페이지네이션) - GET /api/admin/sellers/business (프로필·닉네임·실명·이메일·정산계좌 + 페이지네이션) - search 쿼리 파라미터: 실명/이메일/닉네임 부분 일치 검색 - 정렬: created_at DESC (가입 최신순) - authenticateJwt + isAdmin 미들웨어 적용 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
📌 기능 설명
관리자 대시보드에서 승인 완료된 개인/사업자 판매자 목록을 조회하고 검색하는 API를 구현합니다.
관련 이슈: #452
📌 구현 내용
추가된 엔드포인트 (모두
authenticateJwt+isAdmin적용)GET/api/admin/sellers/individualGET/api/admin/sellers/business공통 쿼리 파라미터
page(default 1),limit(default 10, max 50)search: 실명(User.name) · 이메일(User.email) · 닉네임(User.nickname) 부분 일치 검색설계 결정
status=APPROVED만 조회 (대기는/api/admin/sellers/pending, 반려는 목록에서 제외)created_at DESC(#451과 동일하게 가입 최신순)PendingSeller응답과 일관성 유지)변경 파일
src/settlements/dtos/admin-seller.dto.ts—IndividualSellerListItem,BusinessSellerListItem,SellerListResponse<T>추가src/settlements/repositories/admin-seller.repository.ts—findApprovedSellers,countApprovedSellers+ 검색 필터 빌더src/settlements/services/admin-seller.service.ts—listIndividualSellers,listBusinessSellerssrc/settlements/controllers/admin-seller.controller.ts—getIndividualSellerList,getBusinessSellerListsrc/settlements/routes/admin-seller.route.ts— 2개 라우트 + Swagger 문서swagger.json— 빌드 시 자동 재생성📌 구현 결과
pnpm exec tsc --noEmit통과pnpm build통과/api-docs→AdminSeller태그에서 신규 2개 API 확인 가능📌 논의하고 싶은 점
contains사용 (MySQL의utf8mb4_general_ci/utf8mb4_unicode_ci콜레이션에서는 기본적으로 대소문자 무시). 완전 일치/접두사 일치 등이 필요하면 알려주세요