commit
2282a49563
|
@ -25,10 +25,7 @@ import java.time.temporal.TemporalAdjusters
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/audio-content")
|
@RequestMapping("/audio-content")
|
||||||
class AudioContentController(
|
class AudioContentController(private val service: AudioContentService) {
|
||||||
private val service: AudioContentService,
|
|
||||||
private val repository: AudioContentRepository
|
|
||||||
) {
|
|
||||||
@PostMapping
|
@PostMapping
|
||||||
@PreAuthorize("hasRole('CREATOR')")
|
@PreAuthorize("hasRole('CREATOR')")
|
||||||
fun createAudioContent(
|
fun createAudioContent(
|
||||||
|
@ -197,12 +194,6 @@ class AudioContentController(
|
||||||
@PostMapping("/release")
|
@PostMapping("/release")
|
||||||
@PreAuthorize("hasRole('BOT')")
|
@PreAuthorize("hasRole('BOT')")
|
||||||
fun releaseContent() = run {
|
fun releaseContent() = run {
|
||||||
val contentIdList = repository.getNotReleaseContentId()
|
ApiResponse.ok(service.releaseContent())
|
||||||
|
|
||||||
for (contentId in contentIdList) {
|
|
||||||
service.releaseContent(contentId)
|
|
||||||
}
|
|
||||||
|
|
||||||
ApiResponse.ok(null)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -387,35 +387,39 @@ class AudioContentService(
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
fun releaseContent(contentId: Long) {
|
fun releaseContent() {
|
||||||
val audioContent = repository.findByIdOrNull(contentId)
|
val contentIdList = repository.getNotReleaseContentId()
|
||||||
?: throw SodaException("잘못된 요청입니다.")
|
|
||||||
|
|
||||||
audioContent.isActive = true
|
for (contentId in contentIdList) {
|
||||||
|
val audioContent = repository.findByIdOrNull(contentId)
|
||||||
|
?: throw SodaException("잘못된 요청입니다.")
|
||||||
|
|
||||||
applicationEventPublisher.publishEvent(
|
audioContent.isActive = true
|
||||||
FcmEvent(
|
|
||||||
type = FcmEventType.UPLOAD_CONTENT,
|
applicationEventPublisher.publishEvent(
|
||||||
title = audioContent.member!!.nickname,
|
FcmEvent(
|
||||||
message = "콘텐츠를 업로드 하였습니다. - ${audioContent.title}",
|
type = FcmEventType.UPLOAD_CONTENT,
|
||||||
isAuth = audioContent.isAdult,
|
title = audioContent.member!!.nickname,
|
||||||
contentId = contentId,
|
message = "콘텐츠를 업로드 하였습니다. - ${audioContent.title}",
|
||||||
creatorId = audioContent.member!!.id,
|
isAuth = audioContent.isAdult,
|
||||||
container = "ios"
|
contentId = contentId,
|
||||||
|
creatorId = audioContent.member!!.id,
|
||||||
|
container = "ios"
|
||||||
|
)
|
||||||
)
|
)
|
||||||
)
|
|
||||||
|
|
||||||
applicationEventPublisher.publishEvent(
|
applicationEventPublisher.publishEvent(
|
||||||
FcmEvent(
|
FcmEvent(
|
||||||
type = FcmEventType.UPLOAD_CONTENT,
|
type = FcmEventType.UPLOAD_CONTENT,
|
||||||
title = audioContent.member!!.nickname,
|
title = audioContent.member!!.nickname,
|
||||||
message = "콘텐츠를 업로드 하였습니다. - ${audioContent.title}",
|
message = "콘텐츠를 업로드 하였습니다. - ${audioContent.title}",
|
||||||
isAuth = audioContent.isAdult,
|
isAuth = audioContent.isAdult,
|
||||||
contentId = contentId,
|
contentId = contentId,
|
||||||
creatorId = audioContent.member!!.id,
|
creatorId = audioContent.member!!.id,
|
||||||
container = "aos"
|
container = "aos"
|
||||||
|
)
|
||||||
)
|
)
|
||||||
)
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getDetail(id: Long, member: Member, timezone: String): GetAudioContentDetailResponse {
|
fun getDetail(id: Long, member: Member, timezone: String): GetAudioContentDetailResponse {
|
||||||
|
|
|
@ -5,7 +5,7 @@ data class CreateAudioContentRequest(
|
||||||
val detail: String,
|
val detail: String,
|
||||||
val tags: String,
|
val tags: String,
|
||||||
val price: Int,
|
val price: Int,
|
||||||
val timezone: String,
|
val timezone: String = "Asia/Seoul",
|
||||||
val releaseDate: String? = null,
|
val releaseDate: String? = null,
|
||||||
val themeId: Long = 0,
|
val themeId: Long = 0,
|
||||||
val isAdult: Boolean = false,
|
val isAdult: Boolean = false,
|
||||||
|
|
|
@ -186,13 +186,15 @@ class FcmSendListener(
|
||||||
FcmEventType.SEND_MESSAGE -> {
|
FcmEventType.SEND_MESSAGE -> {
|
||||||
val response = memberRepository.getMessageRecipientPushToken(messageId = fcmEvent.messageId!!)
|
val response = memberRepository.getMessageRecipientPushToken(messageId = fcmEvent.messageId!!)
|
||||||
|
|
||||||
pushService.send(
|
if (response != null) {
|
||||||
tokens = listOf(response.pushToken),
|
pushService.send(
|
||||||
title = fcmEvent.title,
|
tokens = listOf(response.pushToken),
|
||||||
message = fcmEvent.message,
|
title = fcmEvent.title,
|
||||||
container = response.container,
|
message = fcmEvent.message,
|
||||||
messageId = fcmEvent.messageId
|
container = response.container,
|
||||||
)
|
messageId = fcmEvent.messageId
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
FcmEventType.CHANGE_NOTICE -> {
|
FcmEventType.CHANGE_NOTICE -> {
|
||||||
|
|
|
@ -45,7 +45,7 @@ interface MemberQueryRepository {
|
||||||
container: String
|
container: String
|
||||||
): 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?
|
||||||
|
@ -259,7 +259,7 @@ class MemberQueryRepositoryImpl(
|
||||||
.chunked(500)
|
.chunked(500)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getMessageRecipientPushToken(messageId: Long): GetMessageRecipientPushTokenResponse {
|
override fun getMessageRecipientPushToken(messageId: Long): GetMessageRecipientPushTokenResponse? {
|
||||||
return queryFactory
|
return queryFactory
|
||||||
.select(
|
.select(
|
||||||
QGetMessageRecipientPushTokenResponse(
|
QGetMessageRecipientPushTokenResponse(
|
||||||
|
|
Loading…
Reference in New Issue