Compare commits
No commits in common. "297f6555f31940087e77a83e7300211364490448" and "5820117c1a1109af1e6a2d2f1d72063ffb143459" have entirely different histories.
297f6555f3
...
5820117c1a
|
@ -56,7 +56,6 @@ interface LiveRoomQueryRepository {
|
||||||
fun getRoomActiveAndChannelNameIsNotNull(memberId: Long): List<LiveRoom>
|
fun getRoomActiveAndChannelNameIsNotNull(memberId: Long): List<LiveRoom>
|
||||||
fun getActiveRoomIdList(memberId: Long): Int
|
fun getActiveRoomIdList(memberId: Long): Int
|
||||||
fun getTotalHeartCount(roomId: Long): Int?
|
fun getTotalHeartCount(roomId: Long): Int?
|
||||||
fun getLiveRoomCreatorId(roomId: Long): Long?
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class LiveRoomQueryRepositoryImpl(
|
class LiveRoomQueryRepositoryImpl(
|
||||||
|
@ -335,15 +334,4 @@ class LiveRoomQueryRepositoryImpl(
|
||||||
.where(where)
|
.where(where)
|
||||||
.fetchOne()
|
.fetchOne()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getLiveRoomCreatorId(roomId: Long): Long? {
|
|
||||||
return queryFactory
|
|
||||||
.select(liveRoom.member.id)
|
|
||||||
.from(liveRoom)
|
|
||||||
.where(
|
|
||||||
liveRoom.isActive.isTrue
|
|
||||||
.and(liveRoom.id.eq(roomId))
|
|
||||||
)
|
|
||||||
.fetchFirst()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -885,18 +885,10 @@ class LiveRoomService(
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getDonationMessageList(roomId: Long, member: Member): List<LiveRoomDonationMessage> {
|
fun getDonationMessageList(roomId: Long, member: Member): List<LiveRoomDonationMessage> {
|
||||||
val liveRoomCreatorId = repository.getLiveRoomCreatorId(roomId)
|
|
||||||
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
|
||||||
|
|
||||||
val roomInfo = roomInfoRepository.findByIdOrNull(roomId)
|
val roomInfo = roomInfoRepository.findByIdOrNull(roomId)
|
||||||
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
||||||
|
|
||||||
return if (liveRoomCreatorId != member.id!!) {
|
return roomInfo.donationMessageList
|
||||||
roomInfo.donationMessageList
|
|
||||||
.filter { !it.isSecret || it.memberId == member.id!! }
|
|
||||||
} else {
|
|
||||||
roomInfo.donationMessageList
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun deleteDonationMessage(request: DeleteLiveRoomDonationMessage, member: Member) {
|
fun deleteDonationMessage(request: DeleteLiveRoomDonationMessage, member: Member) {
|
||||||
|
@ -1076,16 +1068,14 @@ class LiveRoomService(
|
||||||
container = request.container
|
container = request.container
|
||||||
)
|
)
|
||||||
|
|
||||||
if (request.message.isNotBlank()) {
|
if (!request.isSecret && request.message.isNotBlank()) {
|
||||||
val lock = getOrCreateLock(memberId = member.id!!)
|
val lock = getOrCreateLock(memberId = member.id!!)
|
||||||
lock.write {
|
lock.write {
|
||||||
val roomInfo = roomInfoRepository.findByIdOrNull(room.id!!)
|
val roomInfo = roomInfoRepository.findByIdOrNull(room.id!!)
|
||||||
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
||||||
|
|
||||||
roomInfo.addDonationMessage(
|
roomInfo.addDonationMessage(
|
||||||
memberId = member.id!!,
|
|
||||||
nickname = member.nickname,
|
nickname = member.nickname,
|
||||||
isSecret = request.isSecret,
|
|
||||||
can = request.can,
|
can = request.can,
|
||||||
donationMessage = request.message
|
donationMessage = request.message
|
||||||
)
|
)
|
||||||
|
@ -1122,16 +1112,14 @@ class LiveRoomService(
|
||||||
container = request.container
|
container = request.container
|
||||||
)
|
)
|
||||||
|
|
||||||
if (request.message.isNotBlank()) {
|
if (!request.isSecret && request.message.isNotBlank()) {
|
||||||
val lock = getOrCreateLock(memberId = member.id!!)
|
val lock = getOrCreateLock(memberId = member.id!!)
|
||||||
lock.write {
|
lock.write {
|
||||||
val roomInfo = roomInfoRepository.findByIdOrNull(room.id!!)
|
val roomInfo = roomInfoRepository.findByIdOrNull(room.id!!)
|
||||||
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
||||||
|
|
||||||
roomInfo.addDonationMessage(
|
roomInfo.addDonationMessage(
|
||||||
memberId = member.id!!,
|
|
||||||
nickname = member.nickname,
|
nickname = member.nickname,
|
||||||
isSecret = request.isSecret,
|
|
||||||
can = request.can,
|
can = request.can,
|
||||||
donationMessage = request.message
|
donationMessage = request.message
|
||||||
)
|
)
|
||||||
|
|
|
@ -4,9 +4,7 @@ import java.util.UUID
|
||||||
|
|
||||||
data class LiveRoomDonationMessage(
|
data class LiveRoomDonationMessage(
|
||||||
val uuid: String = UUID.randomUUID().toString(),
|
val uuid: String = UUID.randomUUID().toString(),
|
||||||
val memberId: Long,
|
|
||||||
val nickname: String,
|
val nickname: String,
|
||||||
val isSecret: Boolean,
|
|
||||||
val canMessage: String,
|
val canMessage: String,
|
||||||
val donationMessage: String
|
val donationMessage: String
|
||||||
)
|
)
|
||||||
|
|
|
@ -83,13 +83,11 @@ data class LiveRoomInfo(
|
||||||
managerCount = managerList.size
|
managerCount = managerList.size
|
||||||
}
|
}
|
||||||
|
|
||||||
fun addDonationMessage(memberId: Long, nickname: String, isSecret: Boolean, can: Int, donationMessage: String) {
|
fun addDonationMessage(nickname: String, can: Int, donationMessage: String) {
|
||||||
val donationMessageSet = donationMessageList.toMutableSet()
|
val donationMessageSet = donationMessageList.toMutableSet()
|
||||||
donationMessageSet.add(
|
donationMessageSet.add(
|
||||||
LiveRoomDonationMessage(
|
LiveRoomDonationMessage(
|
||||||
memberId = memberId,
|
|
||||||
nickname = nickname,
|
nickname = nickname,
|
||||||
isSecret = isSecret,
|
|
||||||
canMessage = "${can}캔을 후원하셨습니다.",
|
canMessage = "${can}캔을 후원하셨습니다.",
|
||||||
donationMessage = donationMessage
|
donationMessage = donationMessage
|
||||||
)
|
)
|
||||||
|
@ -97,13 +95,11 @@ data class LiveRoomInfo(
|
||||||
donationMessageList = donationMessageSet.toList()
|
donationMessageList = donationMessageSet.toList()
|
||||||
}
|
}
|
||||||
|
|
||||||
fun addRouletteMessage(memberId: Long, nickname: String, donationMessage: String) {
|
fun addRouletteMessage(nickname: String, donationMessage: String) {
|
||||||
val donationMessageSet = donationMessageList.toMutableSet()
|
val donationMessageSet = donationMessageList.toMutableSet()
|
||||||
donationMessageSet.add(
|
donationMessageSet.add(
|
||||||
LiveRoomDonationMessage(
|
LiveRoomDonationMessage(
|
||||||
memberId = memberId,
|
|
||||||
nickname = nickname,
|
nickname = nickname,
|
||||||
isSecret = false,
|
|
||||||
canMessage = "",
|
canMessage = "",
|
||||||
donationMessage = donationMessage
|
donationMessage = donationMessage
|
||||||
)
|
)
|
||||||
|
|
|
@ -162,7 +162,6 @@ class RouletteService(
|
||||||
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
?: throw SodaException("해당하는 라이브의 정보가 없습니다.")
|
||||||
|
|
||||||
roomInfo.addRouletteMessage(
|
roomInfo.addRouletteMessage(
|
||||||
memberId = member.id!!,
|
|
||||||
nickname = member.nickname,
|
nickname = member.nickname,
|
||||||
donationMessage = "[$result] 당첨!"
|
donationMessage = "[$result] 당첨!"
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in New Issue