feat: 구매한 콘텐츠 댓글 이벤트 추가

This commit is contained in:
2025-05-17 18:07:02 +09:00
parent 6fc372c898
commit 1bca1b27ed
3 changed files with 35 additions and 2 deletions

View File

@@ -3,6 +3,7 @@ package kr.co.vividnext.sodalive.useraction
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kr.co.vividnext.sodalive.content.order.OrderRepository
import kr.co.vividnext.sodalive.fcm.FcmService
import kr.co.vividnext.sodalive.point.MemberPoint
import kr.co.vividnext.sodalive.point.MemberPointRepository
@@ -15,6 +16,7 @@ import java.time.LocalDateTime
@Service
class UserActionService(
private val repository: UserActionLogRepository,
private val orderRepository: OrderRepository,
private val policyRepository: PointRewardPolicyRepository,
private val grantLogRepository: PointGrantLogRepository,
private val memberPointRepository: MemberPointRepository,
@@ -27,7 +29,7 @@ class UserActionService(
fun recordAction(
memberId: Long,
actionType: ActionType,
orderId: Long? = null,
contentId: Long? = null,
pushTokenList: List<String> = emptyList()
) {
coroutineScope.launch {
@@ -44,6 +46,17 @@ class UserActionService(
todayAt15
}
val order = if (contentId != null) {
orderRepository.findByMemberIdAndContentId(
memberId = memberId,
contentId = contentId,
createdAt = if (policyType == PolicyType.DAILY) policyTypeDailyStartDate else policy.startDate
)
} else {
null
}
if (actionType == ActionType.ORDER_CONTENT_COMMENT && order == null) return@launch
val actionCount = repository.countByMemberIdAndActionTypeAndCreatedAtBetween(
memberId = memberId,
actionType = actionType,
@@ -65,7 +78,7 @@ class UserActionService(
point = policy.pointAmount,
actionType = actionType,
policyId = policy.id!!,
orderId = orderId
orderId = order?.id
)
)