관리자 - 시리즈 리스트 API #226
|
@ -3,7 +3,9 @@ package kr.co.vividnext.sodalive.admin.content.series
|
|||
import com.querydsl.core.types.dsl.CaseBuilder
|
||||
import com.querydsl.jpa.impl.JPAQueryFactory
|
||||
import kr.co.vividnext.sodalive.admin.content.series.genre.QSeriesGenre.seriesGenre
|
||||
import kr.co.vividnext.sodalive.content.QAudioContent.audioContent
|
||||
import kr.co.vividnext.sodalive.creator.admin.content.series.QSeries.series
|
||||
import kr.co.vividnext.sodalive.creator.admin.content.series.QSeriesContent.seriesContent
|
||||
import kr.co.vividnext.sodalive.creator.admin.content.series.Series
|
||||
import kr.co.vividnext.sodalive.creator.admin.content.series.SeriesState
|
||||
import kr.co.vividnext.sodalive.member.QMember.member
|
||||
|
@ -51,6 +53,7 @@ class AdminContentSeriesQueryRepositoryImpl(
|
|||
series.coverImage.prepend("/").prepend(coverImageHost),
|
||||
member.nickname,
|
||||
seriesGenre.genre,
|
||||
seriesContent.id.count(),
|
||||
CaseBuilder()
|
||||
.`when`(series.state.eq(SeriesState.COMPLETE)).then("완결")
|
||||
.`when`(series.state.eq(SeriesState.COMPLETE)).then("휴재")
|
||||
|
@ -61,7 +64,10 @@ class AdminContentSeriesQueryRepositoryImpl(
|
|||
.from(series)
|
||||
.innerJoin(series.member, member)
|
||||
.innerJoin(series.genre, seriesGenre)
|
||||
.leftJoin(seriesContent).on(series.id.eq(seriesContent.series.id))
|
||||
.leftJoin(seriesContent.content, audioContent).on(audioContent.isActive.isTrue)
|
||||
.where(where)
|
||||
.groupBy(series.id)
|
||||
.offset(offset)
|
||||
.limit(limit)
|
||||
.orderBy(series.member.id.asc(), series.orders.asc())
|
||||
|
|
|
@ -14,6 +14,7 @@ data class GetAdminSeriesListItem @QueryProjection constructor(
|
|||
val coverImageUrl: String,
|
||||
val creatorNickname: String,
|
||||
val genre: String,
|
||||
val numberOfWorks: Long,
|
||||
val state: String,
|
||||
val isAdult: Boolean
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue