커뮤니티 게시글 조회
- 응답값에 가격, 구매여부 추가
This commit is contained in:
@@ -3,6 +3,7 @@ package kr.co.vividnext.sodalive.can.use
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import kr.co.vividnext.sodalive.content.AudioContent
|
||||
import kr.co.vividnext.sodalive.content.order.Order
|
||||
import kr.co.vividnext.sodalive.explorer.profile.creatorCommunity.CreatorCommunity
|
||||
import kr.co.vividnext.sodalive.live.room.LiveRoom
|
||||
import kr.co.vividnext.sodalive.member.Member
|
||||
import javax.persistence.CascadeType
|
||||
@@ -42,10 +43,14 @@ data class UseCan(
|
||||
@JoinColumn(name = "order_id", nullable = true)
|
||||
var order: Order? = null
|
||||
|
||||
@OneToOne(fetch = FetchType.LAZY)
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "content_id", nullable = true)
|
||||
var audioContent: AudioContent? = null
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "creator_community_id", nullable = true)
|
||||
var communityPost: CreatorCommunity? = null
|
||||
|
||||
@OneToMany(mappedBy = "useCan", cascade = [CascadeType.ALL])
|
||||
val useCanCalculates: MutableList<UseCanCalculate> = mutableListOf()
|
||||
}
|
||||
|
@@ -1,7 +1,28 @@
|
||||
package kr.co.vividnext.sodalive.can.use
|
||||
|
||||
import com.querydsl.jpa.impl.JPAQueryFactory
|
||||
import kr.co.vividnext.sodalive.can.use.QUseCan.useCan
|
||||
import org.springframework.data.jpa.repository.JpaRepository
|
||||
import org.springframework.stereotype.Repository
|
||||
|
||||
@Repository
|
||||
interface UseCanRepository : JpaRepository<UseCan, Long>
|
||||
interface UseCanRepository : JpaRepository<UseCan, Long>, UseCanQueryRepository
|
||||
|
||||
interface UseCanQueryRepository {
|
||||
fun isExistOrdered(postId: Long, memberId: Long): Boolean
|
||||
}
|
||||
|
||||
class UseCanQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : UseCanQueryRepository {
|
||||
override fun isExistOrdered(postId: Long, memberId: Long): Boolean {
|
||||
val useCanId = queryFactory.select(useCan.id)
|
||||
.from(useCan)
|
||||
.where(
|
||||
useCan.member.id.eq(memberId)
|
||||
.and(useCan.isRefund.isFalse)
|
||||
.and(useCan.communityPost.id.eq(postId))
|
||||
)
|
||||
.fetchFirst()
|
||||
|
||||
return useCanId != null && useCanId > 0
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user