코인 충전, 코인 내역 API 추가
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
package kr.co.vividnext.sodalive.can.use
|
||||
|
||||
enum class CanUsage {
|
||||
LIVE,
|
||||
DONATION,
|
||||
CHANGE_NICKNAME,
|
||||
ORDER_CONTENT
|
||||
}
|
40
src/main/kotlin/kr/co/vividnext/sodalive/can/use/UseCan.kt
Normal file
40
src/main/kotlin/kr/co/vividnext/sodalive/can/use/UseCan.kt
Normal file
@@ -0,0 +1,40 @@
|
||||
package kr.co.vividnext.sodalive.can.use
|
||||
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import kr.co.vividnext.sodalive.live.room.LiveRoom
|
||||
import kr.co.vividnext.sodalive.member.Member
|
||||
import javax.persistence.CascadeType
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.EnumType
|
||||
import javax.persistence.Enumerated
|
||||
import javax.persistence.FetchType
|
||||
import javax.persistence.JoinColumn
|
||||
import javax.persistence.ManyToOne
|
||||
import javax.persistence.OneToMany
|
||||
|
||||
@Entity
|
||||
data class UseCan(
|
||||
@Enumerated(value = EnumType.STRING)
|
||||
val canUsage: CanUsage,
|
||||
|
||||
val can: Int,
|
||||
|
||||
val rewardCan: Int,
|
||||
|
||||
var isRefund: Boolean = false
|
||||
) : BaseEntity() {
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "member_id", nullable = false)
|
||||
var member: Member? = null
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "room_id", nullable = true)
|
||||
var room: LiveRoom? = null
|
||||
set(value) {
|
||||
value?.useCan?.add(this)
|
||||
field = value
|
||||
}
|
||||
|
||||
@OneToMany(mappedBy = "useCan", cascade = [CascadeType.ALL])
|
||||
val useCanCalculates: MutableList<UseCanCalculate> = mutableListOf()
|
||||
}
|
@@ -0,0 +1,37 @@
|
||||
package kr.co.vividnext.sodalive.can.use
|
||||
|
||||
import kr.co.vividnext.sodalive.can.payment.PaymentGateway
|
||||
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||
import javax.persistence.CascadeType
|
||||
import javax.persistence.Column
|
||||
import javax.persistence.Entity
|
||||
import javax.persistence.EnumType
|
||||
import javax.persistence.Enumerated
|
||||
import javax.persistence.FetchType
|
||||
import javax.persistence.JoinColumn
|
||||
import javax.persistence.ManyToOne
|
||||
|
||||
@Entity
|
||||
data class UseCanCalculate(
|
||||
val can: Int,
|
||||
|
||||
@Column(nullable = false)
|
||||
@Enumerated(value = EnumType.STRING)
|
||||
val paymentGateway: PaymentGateway,
|
||||
|
||||
@Column(nullable = false)
|
||||
@Enumerated(value = EnumType.STRING)
|
||||
var status: UseCanCalculateStatus
|
||||
) : BaseEntity() {
|
||||
@ManyToOne(fetch = FetchType.LAZY, cascade = [CascadeType.ALL])
|
||||
@JoinColumn(name = "use_can_id", nullable = false)
|
||||
var useCan: UseCan? = null
|
||||
set(value) {
|
||||
value?.useCanCalculates?.add(this)
|
||||
field = value
|
||||
}
|
||||
}
|
||||
|
||||
enum class UseCanCalculateStatus {
|
||||
RECEIVED, CALCULATE_COMPLETE, REFUND
|
||||
}
|
Reference in New Issue
Block a user