Files
sodalive-backend-spring-boot/docs/20260305_관리자충전상세쿼리프로젝션리팩토링.md

1.2 KiB

관리자 충전 상세 QueryProjection 리팩토링

  • AdminChargeStatusService.getChargeStatusDetail 후처리 매핑 제거
  • AdminChargeStatusQueryRepository.getChargeStatusDetail 반환 타입을 응답 DTO QueryProjection으로 변경
  • 관련 DTO/QueryDSL 생성 타입 정합성 확인
  • 검증 수행 (lsp_diagnostics, ./gradlew test, ./gradlew build)

검증 기록

1차 구현

  • 무엇을: GetChargeStatusDetailResponse@QueryProjection을 적용하고, AdminChargeStatusQueryRepository가 해당 DTO를 직접 select 하도록 변경했으며, 서비스의 후처리 map을 제거했다. 또한 불필요해진 GetChargeStatusDetailQueryDto.kt 파일을 삭제했다.
  • 왜: 상세 응답 가공을 서비스에서 한 번 더 수행하지 않고 DB 조회 시점(QueryProjection)에서 완성된 응답 형태를 가져오도록 구조를 단순화하기 위해서다.
  • 어떻게: lsp_diagnostics로 수정 파일 진단을 시도했으나 .kt LSP 미설정으로 도구 검증이 불가함을 확인했고, 대신 ./gradlew test./gradlew build -x test를 실행해 테스트/빌드 성공(BUILD SUCCESSFUL)을 확인했다.