예약된 라이브 시작
- 예약된 라이브 시작시 라이브 시작시간을 현재시간으로 변경 - 예약한 시간 - 10분 보다 더 먼저 시작하는 경우 알림 메시지의 dateformat 변경
This commit is contained in:
parent
9afc44b7b1
commit
62797eb3f5
|
@ -56,7 +56,9 @@ import org.springframework.web.multipart.MultipartFile
|
|||
import java.time.LocalDateTime
|
||||
import java.time.ZoneId
|
||||
import java.time.format.DateTimeFormatter
|
||||
import java.time.format.FormatStyle
|
||||
import java.util.Date
|
||||
import java.util.Locale
|
||||
import java.util.concurrent.locks.ReentrantReadWriteLock
|
||||
import kotlin.concurrent.write
|
||||
|
||||
|
@ -384,27 +386,30 @@ class LiveRoomService(
|
|||
val room = repository.getLiveRoomAndAccountId(request.roomId, member.id!!)
|
||||
?: throw SodaException("해당하는 라이브가 없습니다.")
|
||||
|
||||
val dateTime = LocalDateTime.now()
|
||||
.atZone(ZoneId.of("UTC"))
|
||||
.withZoneSameInstant(ZoneId.of(request.timezone))
|
||||
.toLocalDateTime()
|
||||
val nowDateTime = LocalDateTime.now()
|
||||
|
||||
val beginDateTime = room.beginDateTime
|
||||
.atZone(ZoneId.of("UTC"))
|
||||
.withZoneSameInstant(ZoneId.of(request.timezone))
|
||||
.toLocalDateTime()
|
||||
if (nowDateTime.plusMinutes(10).isBefore(room.beginDateTime)) {
|
||||
val startAvailableDateTimeString = room.beginDateTime
|
||||
.minusMinutes(10)
|
||||
.atZone(ZoneId.of("UTC"))
|
||||
.withZoneSameInstant(ZoneId.of(request.timezone))
|
||||
.toLocalDateTime()
|
||||
.format(DateTimeFormatter.ofLocalizedDateTime(FormatStyle.FULL).withLocale(Locale.KOREAN))
|
||||
|
||||
if (dateTime.plusMinutes(10).isBefore(beginDateTime)) {
|
||||
val startAvailableDateTimeString = beginDateTime.minusMinutes(10).format(
|
||||
DateTimeFormatter.ofPattern("yyyy.MM.dd E hh:mm a")
|
||||
)
|
||||
throw SodaException("$startAvailableDateTimeString 이후에 시작할 수 있습니다.")
|
||||
}
|
||||
|
||||
val dateTime = nowDateTime
|
||||
.atZone(ZoneId.of("UTC"))
|
||||
.withZoneSameInstant(ZoneId.of(request.timezone))
|
||||
.toLocalDateTime()
|
||||
|
||||
room.channelName = "SODA_LIVE_CHANNEL_" +
|
||||
"${member.id}_${dateTime.year}_${dateTime.month}_${dateTime.dayOfMonth}_" +
|
||||
"${dateTime.hour}_${dateTime.minute}"
|
||||
|
||||
room.beginDateTime = nowDateTime
|
||||
|
||||
applicationEventPublisher.publishEvent(
|
||||
FcmEvent(
|
||||
type = FcmEventType.START_LIVE,
|
||||
|
|
Loading…
Reference in New Issue