Compare commits

...

6 Commits

2 changed files with 20 additions and 8 deletions

View File

@@ -1453,11 +1453,10 @@ class AudioContentQueryRepositoryImpl(
isAdult: Boolean
): AudioContent? {
var where = audioContent.member.id.eq(creatorId)
.and(
audioContent.isActive.isTrue
.and(audioContent.duration.isNotNull)
.or(audioContent.releaseDate.isNotNull.and(audioContent.duration.isNotNull))
)
.and(audioContent.isActive.isTrue)
.and(audioContent.duration.isNotNull)
.and(audioContent.releaseDate.isNotNull)
.and(audioContent.releaseDate.loe(LocalDateTime.now()))
if (!isAdult) {
where = where.and(audioContent.isAdult.isFalse)

View File

@@ -1,5 +1,6 @@
package kr.co.vividnext.sodalive.content.theme
import com.querydsl.core.types.dsl.CaseBuilder
import com.querydsl.jpa.impl.JPAQueryFactory
import kr.co.vividnext.sodalive.content.ContentType
import kr.co.vividnext.sodalive.content.QAudioContent.audioContent
@@ -64,15 +65,27 @@ class AudioContentThemeQueryRepository(
where = where.and(audioContent.isPointAvailable.isTrue)
}
return queryFactory
val query = queryFactory
.select(audioContentTheme.theme)
.from(audioContent)
.innerJoin(audioContent.member, member)
.innerJoin(audioContent.theme, audioContentTheme)
.where(where)
.groupBy(audioContentTheme.id)
.orderBy(audioContentTheme.orders.asc())
.fetch()
if (isFree) {
query.orderBy(
CaseBuilder()
.`when`(audioContentTheme.theme.eq("자기소개")).then(0)
.otherwise(1)
.asc(),
audioContentTheme.orders.asc()
)
} else {
query.orderBy(audioContentTheme.orders.asc())
}
return query.fetch()
}
fun findThemeByIdAndActive(id: Long): AudioContentTheme? {