차단유저(BlockMember) 엔티티

- Member와의 관계설정
This commit is contained in:
2024-09-03 22:04:14 +09:00
parent b0c7819b5a
commit ebd82ee2c7
4 changed files with 35 additions and 21 deletions

View File

@@ -1,12 +1,21 @@
package kr.co.vividnext.sodalive.member.block
import kr.co.vividnext.sodalive.common.BaseEntity
import kr.co.vividnext.sodalive.member.Member
import javax.persistence.Entity
import javax.persistence.FetchType
import javax.persistence.JoinColumn
import javax.persistence.ManyToOne
@Entity
data class BlockMember(
val blockedMemberId: Long,
val memberId: Long
) : BaseEntity() {
var isActive: Boolean = true
) : BaseEntity() {
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "blocked_member_id", nullable = false)
var blockedMember: Member? = null
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "member_id", nullable = false)
var member: Member? = null
}

View File

@@ -11,7 +11,7 @@ interface BlockMemberRepository : JpaRepository<BlockMember, Long>, BlockMemberQ
interface BlockMemberQueryRepository {
fun getBlockAccount(blockedMemberId: Long, memberId: Long): BlockMember?
fun isBlocked(blockedMemberId: Long, memberId: Long): Boolean
fun getBlockedMemberList(memberId: Long): List<Long>
fun getBlockedMemberIdList(memberId: Long): List<Long>
}
@Repository
@@ -20,8 +20,8 @@ class BlockMemberQueryRepositoryImpl(private val queryFactory: JPAQueryFactory)
return queryFactory
.selectFrom(blockMember)
.where(
blockMember.blockedMemberId.eq(blockedMemberId)
.and(blockMember.memberId.eq(memberId))
blockMember.blockedMember.id.eq(blockedMemberId)
.and(blockMember.member.id.eq(memberId))
)
.orderBy(blockMember.id.desc())
.fetchFirst()
@@ -32,8 +32,8 @@ class BlockMemberQueryRepositoryImpl(private val queryFactory: JPAQueryFactory)
.select(blockMember.id)
.from(blockMember)
.where(
blockMember.memberId.eq(memberId)
.and(blockMember.blockedMemberId.eq(blockedMemberId))
blockMember.member.id.eq(memberId)
.and(blockMember.blockedMember.id.eq(blockedMemberId))
.and(blockMember.isActive.isTrue)
)
.fetchOne()
@@ -41,12 +41,12 @@ class BlockMemberQueryRepositoryImpl(private val queryFactory: JPAQueryFactory)
return blockedAccount != null
}
override fun getBlockedMemberList(memberId: Long): List<Long> {
override fun getBlockedMemberIdList(memberId: Long): List<Long> {
return queryFactory
.select(blockMember.blockedMemberId)
.select(blockMember.blockedMember.id)
.from(blockMember)
.where(
blockMember.memberId.eq(memberId)
blockMember.member.id.eq(memberId)
.and(blockMember.isActive.isTrue)
)
.fetch()