Compare commits

...

2 Commits

Author SHA1 Message Date
Klaus aa682aa10a 라이브 후원리스트, 후원합계
- 비밀 후원은 조회되지 않도록 수정
2024-08-23 15:14:53 +09:00
Klaus e373e6ab0f 라이브 후원
- 비밀 후원 추가
2024-08-23 15:10:34 +09:00
5 changed files with 13 additions and 4 deletions

View File

@ -36,6 +36,7 @@ class CanPaymentService(
memberId: Long,
needCan: Int,
canUsage: CanUsage,
isSecret: Boolean = false,
liveRoom: LiveRoom? = null,
order: Order? = null,
audioContent: AudioContent? = null,
@ -65,7 +66,8 @@ class CanPaymentService(
val useCan = UseCan(
canUsage = canUsage,
can = useChargeCan?.total ?: 0,
rewardCan = useRewardCan.total
rewardCan = useRewardCan.total,
isSecret = isSecret
)
var recipientId: Long? = null

View File

@ -25,7 +25,9 @@ data class UseCan(
val rewardCan: Int,
var isRefund: Boolean = false
var isRefund: Boolean = false,
val isSecret: Boolean = false
) : BaseEntity() {
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "member_id", nullable = false)

View File

@ -229,6 +229,7 @@ class LiveRoomQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : L
liveRoom.id.eq(roomId)
.and(useCan.canUsage.eq(CanUsage.DONATION).or(useCan.canUsage.eq(CanUsage.SPIN_ROULETTE)))
.and(useCan.isRefund.isFalse)
.and(useCan.isSecret.isFalse)
)
.fetchOne()
}
@ -253,6 +254,7 @@ class LiveRoomQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : L
useCan.room.id.eq(roomId)
.and(useCan.canUsage.eq(CanUsage.DONATION).or(useCan.canUsage.eq(CanUsage.SPIN_ROULETTE)))
.and(useCan.isRefund.isFalse)
.and(useCan.isSecret.isFalse)
)
.orderBy(useCan.can.sum().add(useCan.rewardCan.sum()).desc())
.fetch()

View File

@ -1052,11 +1052,12 @@ class LiveRoomService(
memberId = member.id!!,
needCan = request.can,
canUsage = CanUsage.DONATION,
isSecret = request.isSecret,
liveRoom = room,
container = request.container
)
if (request.message.isNotBlank()) {
if (!request.isSecret && request.message.isNotBlank()) {
val lock = getOrCreateLock(memberId = member.id!!)
lock.write {
val roomInfo = roomInfoRepository.findByIdOrNull(room.id!!)
@ -1095,11 +1096,12 @@ class LiveRoomService(
memberId = member.id!!,
needCan = request.can,
canUsage = CanUsage.DONATION,
isSecret = request.isSecret,
liveRoom = room,
container = request.container
)
if (request.message.isNotBlank()) {
if (!request.isSecret && request.message.isNotBlank()) {
val lock = getOrCreateLock(memberId = member.id!!)
lock.write {
val roomInfo = roomInfoRepository.findByIdOrNull(room.id!!)

View File

@ -3,6 +3,7 @@ package kr.co.vividnext.sodalive.live.room.donation
data class LiveRoomDonationRequest(
val roomId: Long,
val can: Int,
val isSecret: Boolean,
val container: String,
val message: String = ""
)