관리자 - 푸시 발송
- 본인 인증 여부에 따라 푸시 메시지를 발송할 수 있도록 isAuth 플래그 추가
This commit is contained in:
parent
3c72ae048e
commit
82ac381936
|
@ -20,7 +20,7 @@ class FcmEvent(
|
||||||
val container: String = "",
|
val container: String = "",
|
||||||
val recipients: List<Long> = listOf(),
|
val recipients: List<Long> = listOf(),
|
||||||
val recipientsMap: Map<String, List<List<String>>>? = null,
|
val recipientsMap: Map<String, List<List<String>>>? = null,
|
||||||
val isAuth: Boolean = false,
|
val isAuth: Boolean? = null,
|
||||||
val roomId: Long? = null,
|
val roomId: Long? = null,
|
||||||
val contentId: Long? = null,
|
val contentId: Long? = null,
|
||||||
val messageId: Long? = null,
|
val messageId: Long? = null,
|
||||||
|
@ -97,7 +97,7 @@ class FcmSendListener(
|
||||||
if (fcmEvent.container.isNotBlank()) {
|
if (fcmEvent.container.isNotBlank()) {
|
||||||
val pushTokens = memberRepository.getCreateLiveRoomNotificationRecipientPushTokens(
|
val pushTokens = memberRepository.getCreateLiveRoomNotificationRecipientPushTokens(
|
||||||
creatorId = fcmEvent.creatorId!!,
|
creatorId = fcmEvent.creatorId!!,
|
||||||
isAuth = fcmEvent.isAuth,
|
isAuth = fcmEvent.isAuth ?: false,
|
||||||
container = fcmEvent.container
|
container = fcmEvent.container
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -118,7 +118,7 @@ class FcmSendListener(
|
||||||
val pushTokens = memberRepository.getStartLiveRoomNotificationRecipientPushTokens(
|
val pushTokens = memberRepository.getStartLiveRoomNotificationRecipientPushTokens(
|
||||||
creatorId = fcmEvent.creatorId!!,
|
creatorId = fcmEvent.creatorId!!,
|
||||||
roomId = fcmEvent.roomId!!,
|
roomId = fcmEvent.roomId!!,
|
||||||
isAuth = fcmEvent.isAuth,
|
isAuth = fcmEvent.isAuth ?: false,
|
||||||
container = fcmEvent.container
|
container = fcmEvent.container
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -166,7 +166,7 @@ class FcmSendListener(
|
||||||
if (fcmEvent.container.isNotBlank()) {
|
if (fcmEvent.container.isNotBlank()) {
|
||||||
val pushTokens = memberRepository.getUploadContentNotificationRecipientPushTokens(
|
val pushTokens = memberRepository.getUploadContentNotificationRecipientPushTokens(
|
||||||
creatorId = fcmEvent.creatorId!!,
|
creatorId = fcmEvent.creatorId!!,
|
||||||
isAuth = fcmEvent.isAuth,
|
isAuth = fcmEvent.isAuth ?: false,
|
||||||
container = fcmEvent.container
|
container = fcmEvent.container
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -3,5 +3,6 @@ package kr.co.vividnext.sodalive.fcm
|
||||||
data class PushRequest(
|
data class PushRequest(
|
||||||
val memberIds: List<Long>,
|
val memberIds: List<Long>,
|
||||||
val title: String,
|
val title: String,
|
||||||
val message: String
|
val message: String,
|
||||||
|
val isAuth: Boolean?
|
||||||
)
|
)
|
||||||
|
|
|
@ -25,7 +25,7 @@ interface MemberQueryRepository {
|
||||||
fun findByPushToken(pushToken: String): List<Member>
|
fun findByPushToken(pushToken: String): List<Member>
|
||||||
fun findByNicknameAndOtherCondition(nickname: String, member: Member): List<Member>
|
fun findByNicknameAndOtherCondition(nickname: String, member: Member): List<Member>
|
||||||
fun findCreatorByIdOrNull(memberId: Long): Member?
|
fun findCreatorByIdOrNull(memberId: Long): Member?
|
||||||
fun getAllRecipientPushTokens(isAuth: Boolean, container: String): List<List<String>>
|
fun getAllRecipientPushTokens(isAuth: Boolean?, container: String): List<List<String>>
|
||||||
fun getCreateLiveRoomNotificationRecipientPushTokens(
|
fun getCreateLiveRoomNotificationRecipientPushTokens(
|
||||||
creatorId: Long,
|
creatorId: Long,
|
||||||
isAuth: Boolean,
|
isAuth: Boolean,
|
||||||
|
@ -46,7 +46,7 @@ interface MemberQueryRepository {
|
||||||
): List<List<String>>
|
): List<List<String>>
|
||||||
|
|
||||||
fun getMessageRecipientPushToken(messageId: Long): GetMessageRecipientPushTokenResponse
|
fun getMessageRecipientPushToken(messageId: Long): GetMessageRecipientPushTokenResponse
|
||||||
fun getIndividualRecipientPushTokens(recipients: List<Long>, isAuth: Boolean): Map<String, List<List<String>>>
|
fun getIndividualRecipientPushTokens(recipients: List<Long>, isAuth: Boolean?): Map<String, List<List<String>>>
|
||||||
fun getChangeNicknamePrice(memberId: Long): GetChangeNicknamePriceResponse
|
fun getChangeNicknamePrice(memberId: Long): GetChangeNicknamePriceResponse
|
||||||
fun getMemberByEmail(email: String): Member?
|
fun getMemberByEmail(email: String): Member?
|
||||||
|
|
||||||
|
@ -93,14 +93,18 @@ class MemberQueryRepositoryImpl(
|
||||||
.fetchFirst()
|
.fetchFirst()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getAllRecipientPushTokens(isAuth: Boolean, container: String): List<List<String>> {
|
override fun getAllRecipientPushTokens(isAuth: Boolean?, container: String): List<List<String>> {
|
||||||
var where = member.isActive.isTrue
|
var where = member.isActive.isTrue
|
||||||
.and(member.email.notIn("admin@sodalive.net"))
|
.and(member.email.notIn("admin@sodalive.net"))
|
||||||
.and(member.container.eq(container))
|
.and(member.container.eq(container))
|
||||||
.and(member.pushToken.isNotNull)
|
.and(member.pushToken.isNotNull)
|
||||||
|
|
||||||
if (isAuth) {
|
if (isAuth != null) {
|
||||||
where = where.and(member.auth.isNotNull)
|
where = if (isAuth) {
|
||||||
|
where.and(member.auth.isNotNull)
|
||||||
|
} else {
|
||||||
|
where.and(member.auth.isNull)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return queryFactory
|
return queryFactory
|
||||||
|
@ -276,15 +280,19 @@ class MemberQueryRepositoryImpl(
|
||||||
|
|
||||||
override fun getIndividualRecipientPushTokens(
|
override fun getIndividualRecipientPushTokens(
|
||||||
recipients: List<Long>,
|
recipients: List<Long>,
|
||||||
isAuth: Boolean
|
isAuth: Boolean?
|
||||||
): Map<String, List<List<String>>> {
|
): Map<String, List<List<String>>> {
|
||||||
var where = member.isActive.isTrue
|
var where = member.isActive.isTrue
|
||||||
.and(member.email.notIn("admin@sodalive.net"))
|
.and(member.email.notIn("admin@sodalive.net"))
|
||||||
.and(member.id.`in`(*recipients.toTypedArray()))
|
.and(member.id.`in`(*recipients.toTypedArray()))
|
||||||
.and(member.pushToken.isNotNull)
|
.and(member.pushToken.isNotNull)
|
||||||
|
|
||||||
if (isAuth) {
|
if (isAuth != null) {
|
||||||
where = where.and(member.auth.isNotNull)
|
where = if (isAuth) {
|
||||||
|
where.and(member.auth.isNotNull)
|
||||||
|
} else {
|
||||||
|
where.and(member.auth.isNull)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val aosPushTokens = queryFactory
|
val aosPushTokens = queryFactory
|
||||||
|
|
Loading…
Reference in New Issue