parent
3caaa151f4
commit
cf538a2c36
|
@ -15,6 +15,7 @@ import kr.co.vividnext.sodalive.content.main.banner.AudioContentBanner
|
||||||
import kr.co.vividnext.sodalive.content.main.banner.QAudioContentBanner.audioContentBanner
|
import kr.co.vividnext.sodalive.content.main.banner.QAudioContentBanner.audioContentBanner
|
||||||
import kr.co.vividnext.sodalive.content.main.curation.AudioContentCuration
|
import kr.co.vividnext.sodalive.content.main.curation.AudioContentCuration
|
||||||
import kr.co.vividnext.sodalive.content.main.curation.QAudioContentCuration.audioContentCuration
|
import kr.co.vividnext.sodalive.content.main.curation.QAudioContentCuration.audioContentCuration
|
||||||
|
import kr.co.vividnext.sodalive.content.main.curation.QAudioContentCurationItem.audioContentCurationItem
|
||||||
import kr.co.vividnext.sodalive.content.main.tab.QAudioContentMainTab.audioContentMainTab
|
import kr.co.vividnext.sodalive.content.main.tab.QAudioContentMainTab.audioContentMainTab
|
||||||
import kr.co.vividnext.sodalive.content.order.QOrder.order
|
import kr.co.vividnext.sodalive.content.order.QOrder.order
|
||||||
import kr.co.vividnext.sodalive.content.pin.QPinContent.pinContent
|
import kr.co.vividnext.sodalive.content.pin.QPinContent.pinContent
|
||||||
|
@ -109,6 +110,12 @@ interface AudioContentQueryRepository {
|
||||||
contentType: ContentType
|
contentType: ContentType
|
||||||
): List<GetAudioContentMainItem>
|
): List<GetAudioContentMainItem>
|
||||||
|
|
||||||
|
fun findAudioContentByCurationIdV2(
|
||||||
|
curationId: Long,
|
||||||
|
memberId: Long,
|
||||||
|
isAdult: Boolean
|
||||||
|
): List<GetAudioContentMainItem>
|
||||||
|
|
||||||
fun getAudioContentRanking(
|
fun getAudioContentRanking(
|
||||||
cloudfrontHost: String,
|
cloudfrontHost: String,
|
||||||
isAdult: Boolean,
|
isAdult: Boolean,
|
||||||
|
@ -648,6 +655,50 @@ class AudioContentQueryRepositoryImpl(
|
||||||
.fetch()
|
.fetch()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun findAudioContentByCurationIdV2(
|
||||||
|
curationId: Long,
|
||||||
|
memberId: Long,
|
||||||
|
isAdult: Boolean
|
||||||
|
): List<GetAudioContentMainItem> {
|
||||||
|
val blockMemberCondition = blockMember.member.id.eq(member.id)
|
||||||
|
.and(blockMember.isActive.isTrue)
|
||||||
|
.and(blockMember.blockedMember.id.eq(memberId))
|
||||||
|
|
||||||
|
var where = audioContentCuration.isActive.isTrue
|
||||||
|
.and(audioContentCurationItem.isActive.isTrue)
|
||||||
|
.and(audioContent.isActive.isTrue)
|
||||||
|
.and(audioContent.member.isNotNull)
|
||||||
|
.and(audioContent.duration.isNotNull)
|
||||||
|
.and(audioContent.member.isActive.isTrue)
|
||||||
|
.and(audioContentCuration.id.eq(curationId))
|
||||||
|
.and(blockMember.id.isNull)
|
||||||
|
|
||||||
|
if (!isAdult) {
|
||||||
|
where = where.and(audioContent.isAdult.isFalse)
|
||||||
|
}
|
||||||
|
|
||||||
|
return queryFactory
|
||||||
|
.select(
|
||||||
|
QGetAudioContentMainItem(
|
||||||
|
audioContent.id,
|
||||||
|
audioContent.coverImage.prepend("/").prepend(imageHost),
|
||||||
|
audioContent.title,
|
||||||
|
member.id,
|
||||||
|
member.profileImage.prepend("/").prepend(imageHost),
|
||||||
|
member.nickname,
|
||||||
|
audioContent.price,
|
||||||
|
audioContent.duration
|
||||||
|
)
|
||||||
|
)
|
||||||
|
.from(audioContentCurationItem)
|
||||||
|
.innerJoin(audioContentCurationItem.content, audioContent)
|
||||||
|
.innerJoin(audioContentCurationItem.curation, audioContentCuration)
|
||||||
|
.innerJoin(audioContent.member, member)
|
||||||
|
.leftJoin(blockMember).on(blockMemberCondition)
|
||||||
|
.where(where)
|
||||||
|
.fetch()
|
||||||
|
}
|
||||||
|
|
||||||
override fun getAudioContentRanking(
|
override fun getAudioContentRanking(
|
||||||
cloudfrontHost: String,
|
cloudfrontHost: String,
|
||||||
isAdult: Boolean,
|
isAdult: Boolean,
|
||||||
|
|
|
@ -64,10 +64,10 @@ class AudioContentMainTabAlarmService(
|
||||||
.map {
|
.map {
|
||||||
GetContentCurationResponse(
|
GetContentCurationResponse(
|
||||||
title = it.title,
|
title = it.title,
|
||||||
items = contentRepository.findAudioContentByCurationId(
|
items = contentRepository.findAudioContentByCurationIdV2(
|
||||||
curationId = it.id!!,
|
curationId = it.id!!,
|
||||||
isAdult = isAdult,
|
memberId = memberId,
|
||||||
contentType = ContentType.ALL
|
isAdult = isAdult
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,10 +65,10 @@ class AudioContentMainTabAsmrService(
|
||||||
.map {
|
.map {
|
||||||
GetContentCurationResponse(
|
GetContentCurationResponse(
|
||||||
title = it.title,
|
title = it.title,
|
||||||
items = contentRepository.findAudioContentByCurationId(
|
items = contentRepository.findAudioContentByCurationIdV2(
|
||||||
curationId = it.id!!,
|
curationId = it.id!!,
|
||||||
isAdult = isAdult,
|
memberId = memberId,
|
||||||
contentType = ContentType.ALL
|
isAdult = isAdult
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,10 +38,10 @@ class AudioContentMainTabFreeService(
|
||||||
.map {
|
.map {
|
||||||
GetContentCurationResponse(
|
GetContentCurationResponse(
|
||||||
title = it.title,
|
title = it.title,
|
||||||
items = contentRepository.findAudioContentByCurationId(
|
items = contentRepository.findAudioContentByCurationIdV2(
|
||||||
curationId = it.id!!,
|
curationId = it.id!!,
|
||||||
isAdult = isAdult,
|
memberId = memberId,
|
||||||
contentType = ContentType.ALL
|
isAdult = isAdult
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -68,10 +68,10 @@ class AudioContentMainTabFreeService(
|
||||||
.map {
|
.map {
|
||||||
GetContentCurationResponse(
|
GetContentCurationResponse(
|
||||||
title = it.title,
|
title = it.title,
|
||||||
items = contentRepository.findAudioContentByCurationId(
|
items = contentRepository.findAudioContentByCurationIdV2(
|
||||||
curationId = it.id!!,
|
curationId = it.id!!,
|
||||||
isAdult = isAdult,
|
memberId = memberId,
|
||||||
contentType = ContentType.ALL
|
isAdult = isAdult
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,10 +65,10 @@ class AudioContentMainTabLiveReplayService(
|
||||||
.map {
|
.map {
|
||||||
GetContentCurationResponse(
|
GetContentCurationResponse(
|
||||||
title = it.title,
|
title = it.title,
|
||||||
items = contentRepository.findAudioContentByCurationId(
|
items = contentRepository.findAudioContentByCurationIdV2(
|
||||||
curationId = it.id!!,
|
curationId = it.id!!,
|
||||||
isAdult = isAdult,
|
memberId = memberId,
|
||||||
contentType = ContentType.ALL
|
isAdult = isAdult
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue