라이브 메인

- 로그인 없이 조회 가능하도록 수정
This commit is contained in:
Klaus 2025-03-22 06:10:28 +09:00
parent 0764247447
commit 6dd6be183b
4 changed files with 30 additions and 18 deletions

View File

@ -81,6 +81,10 @@ class SecurityConfig(
.antMatchers(HttpMethod.GET, "/faq").permitAll() .antMatchers(HttpMethod.GET, "/faq").permitAll()
.antMatchers(HttpMethod.GET, "/faq/category").permitAll() .antMatchers(HttpMethod.GET, "/faq/category").permitAll()
.antMatchers("/audition").permitAll() .antMatchers("/audition").permitAll()
.antMatchers("/live/recommend/channel").permitAll()
.antMatchers(HttpMethod.GET, "/live/room").permitAll()
.antMatchers(HttpMethod.GET, "/event").permitAll()
.antMatchers(HttpMethod.GET, "/live/recommend").permitAll()
.anyRequest().authenticated() .anyRequest().authenticated()
.and() .and()
.build() .build()

View File

@ -16,8 +16,6 @@ class LiveRecommendController(private val service: LiveRecommendService) {
fun getRecommendLive( fun getRecommendLive(
@AuthenticationPrincipal(expression = "#this == 'anonymousUser' ? null : member") member: Member? @AuthenticationPrincipal(expression = "#this == 'anonymousUser' ? null : member") member: Member?
) = run { ) = run {
if (member == null) throw SodaException("로그인 정보를 확인해주세요.")
ApiResponse.ok(service.getRecommendLive(member)) ApiResponse.ok(service.getRecommendLive(member))
} }
@ -25,8 +23,6 @@ class LiveRecommendController(private val service: LiveRecommendService) {
fun getRecommendChannelList( fun getRecommendChannelList(
@AuthenticationPrincipal(expression = "#this == 'anonymousUser' ? null : member") member: Member? @AuthenticationPrincipal(expression = "#this == 'anonymousUser' ? null : member") member: Member?
) = run { ) = run {
if (member == null) throw SodaException("로그인 정보를 확인해주세요.")
ApiResponse.ok(service.getRecommendChannelList(member)) ApiResponse.ok(service.getRecommendChannelList(member))
} }

View File

@ -20,7 +20,6 @@ class LiveRecommendRepository(
private val cloudFrontHost: String private val cloudFrontHost: String
) { ) {
fun getRecommendLive( fun getRecommendLive(
memberId: Long,
isBlocked: (Long) -> Boolean, isBlocked: (Long) -> Boolean,
isAdult: Boolean isAdult: Boolean
): List<GetRecommendLiveResponse> { ): List<GetRecommendLiveResponse> {
@ -51,7 +50,6 @@ class LiveRecommendRepository(
} }
fun getOnAirRecommendChannelList( fun getOnAirRecommendChannelList(
memberId: Long,
isBlocked: (Long) -> Boolean, isBlocked: (Long) -> Boolean,
isCreator: Boolean, isCreator: Boolean,
isAdult: Boolean isAdult: Boolean
@ -95,7 +93,6 @@ class LiveRecommendRepository(
} }
fun getRecommendChannelList( fun getRecommendChannelList(
memberId: Long,
withOutCreatorList: List<Long>, withOutCreatorList: List<Long>,
limit: Long, limit: Long,
isBlocked: (Long) -> Boolean isBlocked: (Long) -> Boolean

View File

@ -12,20 +12,30 @@ class LiveRecommendService(
private val blockMemberRepository: BlockMemberRepository private val blockMemberRepository: BlockMemberRepository
) { ) {
fun getRecommendLive(member: Member): List<GetRecommendLiveResponse> { fun getRecommendLive(member: Member?): List<GetRecommendLiveResponse> {
return repository.getRecommendLive( return repository.getRecommendLive(
memberId = member.id!!, isBlocked = {
isBlocked = { blockMemberRepository.isBlocked(blockedMemberId = member.id!!, memberId = it) }, if (member != null) {
isAdult = member.auth != null blockMemberRepository.isBlocked(blockedMemberId = member.id!!, memberId = it)
} else {
false
}
},
isAdult = member?.auth != null
) )
} }
fun getRecommendChannelList(member: Member): List<GetRecommendChannelResponse> { fun getRecommendChannelList(member: Member?): List<GetRecommendChannelResponse> {
val onAirChannelList = repository.getOnAirRecommendChannelList( val onAirChannelList = repository.getOnAirRecommendChannelList(
member.id!!, isBlocked = {
isBlocked = { blockMemberRepository.isBlocked(blockedMemberId = member.id!!, memberId = it) }, if (member != null) {
isCreator = member.role == MemberRole.CREATOR, blockMemberRepository.isBlocked(blockedMemberId = member.id!!, memberId = it)
isAdult = member.auth != null } else {
false
}
},
isCreator = member?.role == MemberRole.CREATOR,
isAdult = member?.auth != null
) )
if (onAirChannelList.size >= 20) { if (onAirChannelList.size >= 20) {
@ -35,10 +45,15 @@ class LiveRecommendService(
val onAirCreatorIdList = onAirChannelList.map { it.creatorId } val onAirCreatorIdList = onAirChannelList.map { it.creatorId }
val notOnAirCreatorList = repository.getRecommendChannelList( val notOnAirCreatorList = repository.getRecommendChannelList(
member.id!!,
withOutCreatorList = onAirCreatorIdList, withOutCreatorList = onAirCreatorIdList,
limit = (20 - onAirChannelList.size).toLong(), limit = (20 - onAirChannelList.size).toLong(),
isBlocked = { blockMemberRepository.isBlocked(blockedMemberId = member.id!!, memberId = it) } isBlocked = {
if (member != null) {
blockMemberRepository.isBlocked(blockedMemberId = member.id!!, memberId = it)
} else {
false
}
}
) )
return onAirChannelList + notOnAirCreatorList return onAirChannelList + notOnAirCreatorList