라이브 예약 후 시작 시 푸시 - join 제거
This commit is contained in:
parent
300e20dcd0
commit
8b30c1c319
|
@ -2,6 +2,7 @@ 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
|
||||
|
@ -34,10 +35,14 @@ 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)
|
||||
fun send(fcmEvent: FcmEvent) {
|
||||
logger.info("발송타입 - ${fcmEvent.type}")
|
||||
|
||||
when (fcmEvent.type) {
|
||||
FcmEventType.ALL -> {
|
||||
if (fcmEvent.container.isNotBlank()) {
|
||||
|
|
|
@ -149,9 +149,6 @@ 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)
|
||||
|
@ -165,16 +162,12 @@ class MemberQueryRepositoryImpl(
|
|||
.and(creatorFollowing.member.pushToken.isNotNull)
|
||||
|
||||
if (isAuth) {
|
||||
where = where.and(member.auth.isNotNull)
|
||||
where = where.and(creatorFollowing.member.auth.isNotNull)
|
||||
}
|
||||
|
||||
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()
|
||||
.toSet()
|
||||
|
@ -192,15 +185,12 @@ class MemberQueryRepositoryImpl(
|
|||
)
|
||||
|
||||
if (isAuth) {
|
||||
where = where.and(member.auth.isNotNull)
|
||||
where = where.and(liveReservation.member.auth.isNotNull)
|
||||
}
|
||||
|
||||
val reservationMemberPushToken = queryFactory
|
||||
.select(liveReservation.member.pushToken)
|
||||
.from(liveReservation)
|
||||
.innerJoin(liveReservation.member, member)
|
||||
.innerJoin(liveReservation.room, liveRoom)
|
||||
.innerJoin(liveRoom.member, creator)
|
||||
.where(where)
|
||||
.fetch()
|
||||
.toSet()
|
||||
|
|
Loading…
Reference in New Issue