후원
- 결과값에 시그니처 이미지 URL 데이터 추가
This commit is contained in:
@@ -43,6 +43,7 @@ import kr.co.vividnext.sodalive.live.room.menu.LiveRoomMenuService
|
||||
import kr.co.vividnext.sodalive.live.room.menu.UpdateLiveMenuRequest
|
||||
import kr.co.vividnext.sodalive.live.room.visit.LiveRoomVisitService
|
||||
import kr.co.vividnext.sodalive.live.roulette.NewRouletteRepository
|
||||
import kr.co.vividnext.sodalive.live.signature.SignatureCanRepository
|
||||
import kr.co.vividnext.sodalive.live.tag.LiveTagRepository
|
||||
import kr.co.vividnext.sodalive.member.Gender
|
||||
import kr.co.vividnext.sodalive.member.Member
|
||||
@@ -76,6 +77,7 @@ class LiveRoomService(
|
||||
private val roomCancelRepository: LiveRoomCancelRepository,
|
||||
private val kickOutService: LiveRoomKickOutService,
|
||||
private val blockMemberRepository: BlockMemberRepository,
|
||||
private val signatureCanRepository: SignatureCanRepository,
|
||||
|
||||
private val applicationEventPublisher: ApplicationEventPublisher,
|
||||
private val useCanCalculateRepository: UseCanCalculateRepository,
|
||||
@@ -970,7 +972,7 @@ class LiveRoomService(
|
||||
}
|
||||
|
||||
@Transactional
|
||||
fun donation(request: LiveRoomDonationRequest, member: Member) {
|
||||
fun donation(request: LiveRoomDonationRequest, member: Member): String? {
|
||||
val room = repository.findByIdOrNull(request.roomId)
|
||||
?: throw SodaException("해당하는 라이브가 없습니다.")
|
||||
|
||||
@@ -1003,6 +1005,12 @@ class LiveRoomService(
|
||||
roomInfoRepository.save(roomInfo)
|
||||
}
|
||||
}
|
||||
|
||||
return signatureCanRepository.findImageByCreatorIdAndCan(
|
||||
creatorId = host.id!!,
|
||||
can = request.can,
|
||||
imageHost = cloudFrontHost
|
||||
)
|
||||
}
|
||||
|
||||
@Transactional
|
||||
|
@@ -0,0 +1,25 @@
|
||||
package kr.co.vividnext.sodalive.live.signature
|
||||
|
||||
import com.querydsl.jpa.impl.JPAQueryFactory
|
||||
import kr.co.vividnext.sodalive.live.signature.QSignatureCan.signatureCan
|
||||
import org.springframework.data.jpa.repository.JpaRepository
|
||||
|
||||
interface SignatureCanRepository : JpaRepository<SignatureCan, Long>, SignatureCanQueryRepository
|
||||
|
||||
interface SignatureCanQueryRepository {
|
||||
fun findImageByCreatorIdAndCan(creatorId: Long, can: Int, imageHost: String): String?
|
||||
}
|
||||
|
||||
class SignatureCanQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : SignatureCanQueryRepository {
|
||||
override fun findImageByCreatorIdAndCan(creatorId: Long, can: Int, imageHost: String): String? {
|
||||
return queryFactory
|
||||
.select(signatureCan.image.prepend("/").prepend(imageHost))
|
||||
.from(signatureCan)
|
||||
.where(
|
||||
signatureCan.creator.id.eq(creatorId)
|
||||
.and(signatureCan.can.eq(can))
|
||||
.and(signatureCan.isActive.isTrue)
|
||||
)
|
||||
.fetchFirst()
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user