test #449

Merged
klaus merged 29 commits from test into main 2026-09-10 07:58:32 +00:00
2 changed files with 22 additions and 1 deletions
Showing only changes of commit 533007c14c - Show all commits
@@ -24,7 +24,11 @@ class CreatorCommunity(
var isActive: Boolean = true, var isActive: Boolean = true,
var isFixed: Boolean = false, var isFixed: Boolean = false,
@Column(nullable = true) @Column(nullable = true)
var fixedAt: LocalDateTime? = null var fixedAt: LocalDateTime? = null,
@Column(name = "language_code", nullable = true, length = 10)
var languageCode: String? = null,
@Column(name = "content_revision", nullable = false)
var contentRevision: Long = 0
) : BaseEntity() { ) : BaseEntity() {
@ManyToOne(fetch = FetchType.LAZY) @ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "member_id", nullable = false) @JoinColumn(name = "member_id", nullable = false)
@@ -7,12 +7,29 @@ import kr.co.vividnext.sodalive.explorer.profile.creatorCommunity.QCreatorCommun
import kr.co.vividnext.sodalive.member.QMember.member import kr.co.vividnext.sodalive.member.QMember.member
import kr.co.vividnext.sodalive.member.following.QCreatorFollowing.creatorFollowing import kr.co.vividnext.sodalive.member.following.QCreatorFollowing.creatorFollowing
import org.springframework.data.jpa.repository.JpaRepository import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.data.jpa.repository.Lock
import org.springframework.data.jpa.repository.Query
import org.springframework.data.repository.query.Param
import java.time.LocalDate import java.time.LocalDate
import java.time.LocalDateTime import java.time.LocalDateTime
import java.time.LocalTime import java.time.LocalTime
import javax.persistence.LockModeType
interface CreatorCommunityRepository : JpaRepository<CreatorCommunity, Long>, CreatorCommunityQueryRepository { interface CreatorCommunityRepository : JpaRepository<CreatorCommunity, Long>, CreatorCommunityQueryRepository {
fun countByMemberIdAndIsFixedIsTrueAndIsActiveIsTrue(memberId: Long): Long fun countByMemberIdAndIsFixedIsTrueAndIsActiveIsTrue(memberId: Long): Long
fun findByIdAndIsActiveTrue(postId: Long): CreatorCommunity?
@Lock(LockModeType.PESSIMISTIC_WRITE)
@Query("select c from CreatorCommunity c where c.id = :postId and c.isActive = true")
fun findByIdAndIsActiveTrueForUpdate(@Param("postId") postId: Long): CreatorCommunity?
@Lock(LockModeType.PESSIMISTIC_WRITE)
@Query("select c from CreatorCommunity c where c.id = :postId and c.member.id = :memberId")
fun findByIdAndMemberIdForUpdate(
@Param("postId") postId: Long,
@Param("memberId") memberId: Long
): CreatorCommunity?
} }
interface CreatorCommunityQueryRepository { interface CreatorCommunityQueryRepository {