라이브 예약 후 시작 시 푸시 - 테스트

This commit is contained in:
Klaus 2023-09-09 01:13:14 +09:00
parent 06bb2ea228
commit f081b9691f
1 changed files with 8 additions and 13 deletions

View File

@ -12,7 +12,6 @@ import kr.co.vividnext.sodalive.member.following.QCreatorFollowing.creatorFollow
import kr.co.vividnext.sodalive.member.nickname.QNicknameChangeLog.nicknameChangeLog import kr.co.vividnext.sodalive.member.nickname.QNicknameChangeLog.nicknameChangeLog
import kr.co.vividnext.sodalive.member.notification.QMemberNotification.memberNotification import kr.co.vividnext.sodalive.member.notification.QMemberNotification.memberNotification
import kr.co.vividnext.sodalive.message.QMessage.message import kr.co.vividnext.sodalive.message.QMessage.message
import org.slf4j.LoggerFactory
import org.springframework.data.jpa.repository.JpaRepository import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.stereotype.Repository import org.springframework.stereotype.Repository
@ -35,6 +34,7 @@ interface MemberQueryRepository {
fun getStartLiveRoomNotificationRecipientPushTokens( fun getStartLiveRoomNotificationRecipientPushTokens(
creatorId: Long, creatorId: Long,
roomId: Long,
isAuth: Boolean, isAuth: Boolean,
container: String container: String
): List<List<String>> ): List<List<String>>
@ -59,7 +59,6 @@ class MemberQueryRepositoryImpl(
private val queryFactory: JPAQueryFactory, private val queryFactory: JPAQueryFactory,
private val blockMemberRepository: BlockMemberRepository private val blockMemberRepository: BlockMemberRepository
) : MemberQueryRepository { ) : MemberQueryRepository {
private val logger = LoggerFactory.getLogger(this::class.java)
override fun findByPushToken(pushToken: String): List<Member> { override fun findByPushToken(pushToken: String): List<Member> {
return queryFactory return queryFactory
.selectFrom(member) .selectFrom(member)
@ -148,6 +147,7 @@ class MemberQueryRepositoryImpl(
override fun getStartLiveRoomNotificationRecipientPushTokens( override fun getStartLiveRoomNotificationRecipientPushTokens(
creatorId: Long, creatorId: Long,
roomId: Long,
isAuth: Boolean, isAuth: Boolean,
container: String container: String
): List<List<String>> { ): List<List<String>> {
@ -172,16 +172,13 @@ class MemberQueryRepositoryImpl(
.from(creatorFollowing) .from(creatorFollowing)
.where(where) .where(where)
.fetch() .fetch()
.toSet()
.chunked(500)
logger.info("팔로잉 한 사람: $followingMemberPushToken") where = liveReservation.isActive.isTrue
var where2 = liveReservation.isActive.isTrue
.and(liveReservation.member.notification.live.isTrue) .and(liveReservation.member.notification.live.isTrue)
.and(liveReservation.member.container.eq(container)) .and(liveReservation.member.container.eq(container))
.and(liveReservation.member.email.notIn("admin@sodalive.net")) .and(liveReservation.member.email.notIn("admin@sodalive.net"))
.and(liveReservation.member.pushToken.isNotNull) .and(liveReservation.member.pushToken.isNotNull)
.and(liveReservation.room.id.eq(roomId))
.and( .and(
liveReservation.member.id.notIn( liveReservation.member.id.notIn(
blockMemberRepository.getBlockedMemberList(creatorId) blockMemberRepository.getBlockedMemberList(creatorId)
@ -189,20 +186,18 @@ class MemberQueryRepositoryImpl(
) )
if (isAuth) { if (isAuth) {
where2 = where2.and(liveReservation.member.auth.isNotNull) where = where.and(liveReservation.member.auth.isNotNull)
} }
val reservationMemberPushToken = queryFactory val reservationMemberPushToken = queryFactory
.select(liveReservation.member.pushToken) .select(liveReservation.member.pushToken)
.from(liveReservation) .from(liveReservation)
.where(where2) .where(where)
.fetch() .fetch()
return (followingMemberPushToken + reservationMemberPushToken)
.toSet() .toSet()
.chunked(500) .chunked(500)
logger.info("예약한 사람: $reservationMemberPushToken")
return followingMemberPushToken + reservationMemberPushToken
} }
override fun getUploadContentNotificationRecipientPushTokens( override fun getUploadContentNotificationRecipientPushTokens(