라이브 시작 알림 - 알림 받을 유저 조회에서 에러가 발생하는 버그 수정 #36

Merged
klaus merged 3 commits from test into main 2023-10-02 13:00:12 +00:00
2 changed files with 11 additions and 5 deletions

View File

@ -2,7 +2,6 @@ package kr.co.vividnext.sodalive.fcm
import kr.co.vividnext.sodalive.content.comment.AudioContentCommentRepository
import kr.co.vividnext.sodalive.member.MemberRepository
import org.slf4j.LoggerFactory
import org.springframework.scheduling.annotation.Async
import org.springframework.stereotype.Component
import org.springframework.transaction.annotation.Propagation
@ -35,8 +34,6 @@ class FcmSendListener(
private val memberRepository: MemberRepository,
private val contentCommentRepository: AudioContentCommentRepository
) {
private val logger = LoggerFactory.getLogger(this::class.java)
@Async
@TransactionalEventListener
@Transactional(propagation = Propagation.REQUIRES_NEW)
@ -125,7 +122,6 @@ class FcmSendListener(
container = fcmEvent.container
)
logger.info("토큰 - $pushTokens")
for (tokens in pushTokens) {
pushService.send(
tokens = tokens,

View File

@ -152,6 +152,9 @@ class MemberQueryRepositoryImpl(
isAuth: Boolean,
container: String
): List<List<String>> {
val member = QMember.member
val creator = QMember.member
var where = creatorFollowing.isActive.isTrue
.and(creatorFollowing.creator.id.eq(creatorId))
.and(creatorFollowing.member.notification.live.isTrue)
@ -163,7 +166,7 @@ class MemberQueryRepositoryImpl(
)
)
.and(creatorFollowing.member.pushToken.isNotNull)
.or(member.id.eq(4).and(member.pushToken.isNotNull))
.or(creatorFollowing.member.id.eq(4).and(member.pushToken.isNotNull))
if (isAuth) {
where = where.and(creatorFollowing.member.auth.isNotNull)
@ -172,6 +175,10 @@ class MemberQueryRepositoryImpl(
val followingMemberPushToken = queryFactory
.select(creatorFollowing.member.pushToken)
.from(creatorFollowing)
.innerJoin(creatorFollowing.creator, creator)
.innerJoin(creatorFollowing.member, member)
.innerJoin(member.notification, memberNotification)
.leftJoin(member.auth, auth)
.where(where)
.fetch()
@ -194,6 +201,9 @@ class MemberQueryRepositoryImpl(
val reservationMemberPushToken = queryFactory
.select(liveReservation.member.pushToken)
.from(liveReservation)
.innerJoin(liveReservation.member, member)
.innerJoin(member.notification, memberNotification)
.leftJoin(member.auth, auth)
.where(where)
.fetch()