test #214

Merged
klaus merged 13 commits from test into main 2024-09-23 06:24:12 +00:00
4 changed files with 28 additions and 11 deletions
Showing only changes of commit 1051846c5b - Show all commits

View File

@ -142,7 +142,14 @@ class MemberController(private val service: MemberService) {
) = run {
if (member == null) throw SodaException("로그인 정보를 확인해주세요.")
ApiResponse.ok(service.creatorFollow(creatorId = request.creatorId, memberId = member.id!!))
ApiResponse.ok(
service.creatorFollow(
creatorId = request.creatorId,
isNotify = request.isNotify ?: true,
isActive = request.isActive ?: true,
memberId = member.id!!
)
)
}
@PostMapping("/creator/unfollow")

View File

@ -331,7 +331,7 @@ class MemberService(
}
@Transactional
fun creatorFollow(creatorId: Long, memberId: Long) {
fun creatorFollow(creatorId: Long, isNotify: Boolean, isActive: Boolean, memberId: Long) {
val creatorFollowing = creatorFollowingRepository.findByCreatorIdAndMemberId(
creatorId = creatorId,
memberId = memberId
@ -340,9 +340,14 @@ class MemberService(
if (creatorFollowing == null) {
val creator = repository.findByIdOrNull(creatorId) ?: throw SodaException("크리에이터 정보를 확인해주세요.")
val member = repository.findByIdOrNull(memberId) ?: throw SodaException("로그인 정보를 확인해주세요.")
creatorFollowingRepository.save(CreatorFollowing(creator = creator, member = member))
val newCreatorFollowing = CreatorFollowing()
newCreatorFollowing.member = member
newCreatorFollowing.creator = creator
creatorFollowingRepository.save(newCreatorFollowing)
} else {
creatorFollowing.isActive = true
creatorFollowing.isNotify = isNotify
creatorFollowing.isActive = isActive
}
}

View File

@ -1,3 +1,7 @@
package kr.co.vividnext.sodalive.member.following
data class CreatorFollowRequest(val creatorId: Long)
data class CreatorFollowRequest(
val creatorId: Long,
val isNotify: Boolean?,
val isActive: Boolean?
)

View File

@ -8,16 +8,17 @@ import javax.persistence.JoinColumn
import javax.persistence.ManyToOne
@Entity
class CreatorFollowing(
data class CreatorFollowing(
var isNotify: Boolean = true,
var isActive: Boolean = true
) : BaseEntity() {
// 유저가 알림받기 한 크리에이터
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "creator_id", nullable = false)
var creator: Member,
var creator: Member? = null
// 크리에이터를 알림받기 한 유저
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "member_id", nullable = false)
var member: Member,
var isActive: Boolean = true
) : BaseEntity()
var member: Member? = null
}