관리자 콘텐츠 정산 API - 총 개수 추가
This commit is contained in:
parent
472b51dd85
commit
c590eff460
|
@ -46,6 +46,24 @@ class AdminCalculateQueryRepository(private val queryFactory: JPAQueryFactory) {
|
|||
.fetch()
|
||||
}
|
||||
|
||||
fun getCalculateContentTotalCount(startDate: LocalDateTime, endDate: LocalDateTime): Int {
|
||||
return queryFactory
|
||||
.select(audioContent.id)
|
||||
.from(useCanCalculate)
|
||||
.innerJoin(useCanCalculate.useCan, useCan)
|
||||
.innerJoin(useCan.order, order)
|
||||
.innerJoin(order.audioContent, audioContent)
|
||||
.innerJoin(audioContent.member, member)
|
||||
.where(
|
||||
useCanCalculate.status.eq(UseCanCalculateStatus.RECEIVED)
|
||||
.and(order.createdAt.goe(startDate))
|
||||
.and(order.createdAt.loe(endDate))
|
||||
)
|
||||
.groupBy(audioContent.id, order.type)
|
||||
.fetch()
|
||||
.size
|
||||
}
|
||||
|
||||
fun getCalculateContentList(
|
||||
startDate: LocalDateTime,
|
||||
endDate: LocalDateTime,
|
||||
|
|
|
@ -77,7 +77,7 @@ class AdminCalculateService(private val repository: AdminCalculateQueryRepositor
|
|||
endDateStr: String,
|
||||
offset: Long,
|
||||
limit: Long
|
||||
): List<GetCalculateContentResponse> {
|
||||
): GetCalculateContentResponse {
|
||||
val dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd")
|
||||
val startDate = LocalDate.parse(startDateStr, dateTimeFormatter).atTime(0, 0, 0)
|
||||
.atZone(ZoneId.of("Asia/Seoul"))
|
||||
|
@ -89,7 +89,9 @@ class AdminCalculateService(private val repository: AdminCalculateQueryRepositor
|
|||
.withZoneSameInstant(ZoneId.of("UTC"))
|
||||
.toLocalDateTime()
|
||||
|
||||
return repository
|
||||
val totalCount = repository.getCalculateContentTotalCount(startDate, endDate)
|
||||
|
||||
val items = repository
|
||||
.getCalculateContentList(startDate, endDate, offset, limit)
|
||||
.map {
|
||||
val orderTypeStr = if (it.orderType == OrderType.RENTAL) {
|
||||
|
@ -113,7 +115,7 @@ class AdminCalculateService(private val repository: AdminCalculateQueryRepositor
|
|||
// 입금액
|
||||
val depositAmount = settlementAmount - tax
|
||||
|
||||
GetCalculateContentResponse(
|
||||
GetCalculateContentItemResponse(
|
||||
nickname = it.nickname,
|
||||
title = it.title,
|
||||
registrationDate = it.registrationDate,
|
||||
|
@ -130,5 +132,10 @@ class AdminCalculateService(private val repository: AdminCalculateQueryRepositor
|
|||
)
|
||||
}
|
||||
.toList()
|
||||
|
||||
return GetCalculateContentResponse(
|
||||
totalCount = totalCount,
|
||||
items = items
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
package kr.co.vividnext.sodalive.admin.calculate
|
||||
|
||||
data class GetCalculateContentResponse(
|
||||
val totalCount: Int,
|
||||
val items: List<GetCalculateContentItemResponse>
|
||||
)
|
||||
|
||||
data class GetCalculateContentItemResponse(
|
||||
// 등록 크리에이터 닉네임
|
||||
val nickname: String,
|
||||
// 콘텐츠 제목
|
||||
|
|
Loading…
Reference in New Issue