유저 행동 데이터, 포인트 추가 #309
|
@ -42,6 +42,7 @@ data class AudioContent(
|
|||
val isGeneratePreview: Boolean = true,
|
||||
var isOnlyRental: Boolean = false,
|
||||
var isAdult: Boolean = false,
|
||||
var isPointAvailable: Boolean = false,
|
||||
var isCommentAvailable: Boolean = true,
|
||||
var isFullDetailVisible: Boolean = true
|
||||
) : BaseEntity() {
|
||||
|
|
|
@ -25,6 +25,7 @@ data class Order(
|
|||
var isActive: Boolean = true
|
||||
) : BaseEntity() {
|
||||
var can: Int = 0
|
||||
var point: Int = 0
|
||||
|
||||
val startDate: LocalDateTime = LocalDateTime.now()
|
||||
var endDate: LocalDateTime? = null
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
package kr.co.vividnext.sodalive.point
|
||||
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import kr.co.vividnext.sodalive.useraction.ActionType
|
||||
import java.time.LocalDateTime
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.EnumType
|
||||
import javax.persistence.Enumerated
|
||||
|
||||
@Entity
|
||||
data class MemberPoint(
|
||||
val memberId: Long,
|
||||
var point: Int,
|
||||
@Enumerated(EnumType.STRING)
|
||||
val actionType: ActionType,
|
||||
val expiresAt: LocalDateTime
|
||||
) : BaseEntity()
|
|
@ -0,0 +1,16 @@
|
|||
package kr.co.vividnext.sodalive.point
|
||||
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import kr.co.vividnext.sodalive.useraction.ActionType
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.EnumType
|
||||
import javax.persistence.Enumerated
|
||||
|
||||
@Entity
|
||||
data class PointGrantLog(
|
||||
val memberId: Long,
|
||||
val point: Int,
|
||||
@Enumerated(EnumType.STRING)
|
||||
val actionType: ActionType,
|
||||
val policyId: Long?
|
||||
) : BaseEntity()
|
|
@ -0,0 +1,19 @@
|
|||
package kr.co.vividnext.sodalive.point
|
||||
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import kr.co.vividnext.sodalive.useraction.ActionType
|
||||
import java.time.LocalDateTime
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.EnumType
|
||||
import javax.persistence.Enumerated
|
||||
|
||||
@Entity
|
||||
data class PointRewardPolicy(
|
||||
@Enumerated(EnumType.STRING)
|
||||
val actionType: ActionType,
|
||||
val threshold: Int,
|
||||
val pointAmount: Int,
|
||||
var startDate: LocalDateTime,
|
||||
var endDate: LocalDateTime? = null,
|
||||
var isActive: Boolean = true
|
||||
) : BaseEntity()
|
|
@ -0,0 +1,10 @@
|
|||
package kr.co.vividnext.sodalive.point
|
||||
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import javax.persistence.Entity
|
||||
|
||||
@Entity
|
||||
data class UsePoint(
|
||||
val memberId: Long,
|
||||
val amount: Int
|
||||
) : BaseEntity()
|
|
@ -0,0 +1,5 @@
|
|||
package kr.co.vividnext.sodalive.useraction
|
||||
|
||||
enum class ActionType(val displayName: String) {
|
||||
SIGN_UP("회원가입")
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
package kr.co.vividnext.sodalive.useraction
|
||||
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.EnumType
|
||||
import javax.persistence.Enumerated
|
||||
|
||||
@Entity
|
||||
data class UserActionLog(
|
||||
val memberId: Long,
|
||||
@Enumerated(EnumType.STRING)
|
||||
val actionType: ActionType
|
||||
) : BaseEntity()
|
Loading…
Reference in New Issue