Skip to content

[#7] FEAT: 탈퇴회원 목록 조회 API 추가#71

Merged
Hwan0518 merged 1 commit intodevelopfrom
feature/search/delete-list
Jan 27, 2026
Merged

[#7] FEAT: 탈퇴회원 목록 조회 API 추가#71
Hwan0518 merged 1 commit intodevelopfrom
feature/search/delete-list

Conversation

@Hwan0518
Copy link
Contributor

Issue ✨

변경점 👍

  • 탈퇴회원 목록 조회 API 추가

Copilot AI review requested due to automatic review settings January 27, 2026 09:08
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds an API endpoint for administrators to retrieve a list of withdrawn (deleted) users, supporting filtering and sorting capabilities.

Changes:

  • Added new API endpoint /api/v1/user/withdraw/list for admins to query withdrawn users
  • Implemented service layer authorization check restricting access to ADMIN users only
  • Created QueryDSL repository methods with filtering by user type, name, phone number, and sorting by deletion date
  • Removed unused misspelled entity WithDrawlUser.java

Reviewed changes

Copilot reviewed 7 out of 14 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
GetUserDataController.java Added new GET endpoint with parameter validation and default user type handling
GetUserDataService.java Added service method with admin-only authorization check
UserQueryRepository.java Added interface method for withdrawn user list query
UserQueryRepositoryImpl.java Delegated implementation to QueryDSL repository
UserQuerydslRepository.java Implemented QueryDSL query with filtering, pagination, and sorting
UserQuerydslUtil.java Added utility methods for withdrawn user filtering and sorting
GetWithdrawUserListInDto.java Created input DTO with filter parameters
WithdrawUserListOutDto.java Created output DTO extending pagination response
WithdrawUserSimpleDataOutDto.java Created DTO for individual withdrawn user data
WithdrawUserResponse.java Created web response DTO with static factory method
WithdrawUserListResponse.java Created paginated list response with static factory method
FakeUserQueryRepository.java Implemented fake repository for unit testing
GetUserDataServiceUnitTest.java Added comprehensive unit tests covering success and failure scenarios
WithDrawlUser.java Removed unused entity with misspelled name

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 148 to 150
if (aDeletedAt == null && bDeletedAt == null) return 0;
if (aDeletedAt == null) return 1;
if (bDeletedAt == null) return -1;
Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The null checks for deletedAt at lines 148-150 are unreachable because line 141 already filters for users where deletedAt is not null. All users reaching the sorted() operation are guaranteed to have non-null deletedAt values. These null checks should be removed.

Suggested change
if (aDeletedAt == null && bDeletedAt == null) return 0;
if (aDeletedAt == null) return 1;
if (bDeletedAt == null) return -1;

Copilot uses AI. Check for mistakes.


@Getter
@SuperBuilder(toBuilder = true)
Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This method overrides CustomPaginationResponse.toBuilder; it is advisable to add an Override annotation.

Copilot uses AI. Check for mistakes.
@Hwan0518 Hwan0518 force-pushed the feature/search/delete-list branch from e50d0b8 to 44195ce Compare January 27, 2026 09:21
@Hwan0518 Hwan0518 merged commit 038ca61 into develop Jan 27, 2026
@Hwan0518 Hwan0518 deleted the feature/search/delete-list branch January 27, 2026 09:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant