refactor(original-series-calculate): 정산 조회 파라미터를 snake_case로 통일한다

This commit is contained in:
2026-04-21 19:15:55 +09:00
parent 6c49abc54e
commit 5098994f4b
2 changed files with 46 additions and 10 deletions

View File

@@ -25,15 +25,15 @@ class AdminOriginalSeriesCalculateController(
@GetMapping("/original-series/settlement-details")
fun getSettlementDetails(
@RequestParam("startDate") startDateStr: String,
@RequestParam("endDate") endDateStr: String,
@RequestParam memberId: Long,
@RequestParam("start_date") startDateStr: String,
@RequestParam("end_date") endDateStr: String,
@RequestParam("creator_id") creatorId: Long,
pageable: Pageable
) = ApiResponse.ok(
service.getSettlementDetails(
startDateStr = startDateStr,
endDateStr = endDateStr,
memberId = memberId,
creatorId = creatorId,
offset = pageable.offset,
limit = pageable.pageSize.toLong()
)
@@ -41,8 +41,8 @@ class AdminOriginalSeriesCalculateController(
@GetMapping("/original-series/settlement-details/excel")
fun downloadSettlementDetailsExcel(
@RequestParam("startDate") startDateStr: String,
@RequestParam("endDate") endDateStr: String
@RequestParam("start_date") startDateStr: String,
@RequestParam("end_date") endDateStr: String
): ResponseEntity<StreamingResponseBody> = createExcelResponse(
fileName = "original-series-settlement-details.xlsx",
response = service.downloadSettlementDetailsExcel(startDateStr, endDateStr)

View File

@@ -23,13 +23,14 @@ class AdminOriginalSeriesCalculateControllerTest {
@Test
@DisplayName("관리자 컨트롤러는 오리지널 시리즈 소지 유저 목록을 반환한다")
fun shouldReturnOriginalSeriesOwners() {
val owners = listOf(GetAdminOriginalSeriesOwnerResponse(memberId = 1L, nickname = "owner-a"))
val owners = listOf(GetAdminOriginalSeriesOwnerResponse(creatorId = 1L, nickname = "owner-a"))
Mockito.`when`(service.getOriginalSeriesOwners()).thenReturn(owners)
val response = controller.getOriginalSeriesOwners()
assertEquals(true, response.success)
assertEquals(1, response.data!!.size)
assertEquals(1L, response.data!![0].creatorId)
assertEquals("owner-a", response.data!![0].nickname)
Mockito.verify(service).getOriginalSeriesOwners()
}
@@ -55,7 +56,7 @@ class AdminOriginalSeriesCalculateControllerTest {
service.getSettlementDetails(
startDateStr = "2026-04-01",
endDateStr = "2026-04-30",
memberId = 5L,
creatorId = 5L,
offset = 10L,
limit = 10L
)
@@ -64,7 +65,7 @@ class AdminOriginalSeriesCalculateControllerTest {
val response = controller.getSettlementDetails(
startDateStr = "2026-04-01",
endDateStr = "2026-04-30",
memberId = 5L,
creatorId = 5L,
pageable = PageRequest.of(1, 10)
)
@@ -74,12 +75,47 @@ class AdminOriginalSeriesCalculateControllerTest {
Mockito.verify(service).getSettlementDetails(
startDateStr = "2026-04-01",
endDateStr = "2026-04-30",
memberId = 5L,
creatorId = 5L,
offset = 10L,
limit = 10L
)
}
@Test
@DisplayName("정산 내역 조회 API는 snake_case 파라미터를 사용한다")
fun shouldUseSnakeCaseQueryParameterNames() {
val method = AdminOriginalSeriesCalculateController::class.java
.getDeclaredMethod(
"getSettlementDetails",
String::class.java,
String::class.java,
java.lang.Long.TYPE,
org.springframework.data.domain.Pageable::class.java
)
val parameters = method.parameters
val requestParamClass = org.springframework.web.bind.annotation.RequestParam::class.java
assertEquals("start_date", parameters[0].getAnnotation(requestParamClass).value)
assertEquals("end_date", parameters[1].getAnnotation(requestParamClass).value)
assertEquals("creator_id", parameters[2].getAnnotation(requestParamClass).value)
}
@Test
@DisplayName("정산 엑셀 다운로드 API는 snake_case 파라미터를 사용한다")
fun shouldUseSnakeCaseQueryParameterNamesForExcel() {
val method = AdminOriginalSeriesCalculateController::class.java
.getDeclaredMethod(
"downloadSettlementDetailsExcel",
String::class.java,
String::class.java
)
val parameters = method.parameters
val requestParamClass = org.springframework.web.bind.annotation.RequestParam::class.java
assertEquals("start_date", parameters[0].getAnnotation(requestParamClass).value)
assertEquals("end_date", parameters[1].getAnnotation(requestParamClass).value)
}
@Test
@DisplayName("관리자 컨트롤러는 오리지널 시리즈 정산 엑셀을 다운로드한다")
fun shouldDownloadOriginalSeriesSettlementExcel() {