코인 충전, 코인 내역 API 추가

This commit is contained in:
2023-07-29 05:37:06 +09:00
parent c06de5f9f6
commit 7c8084bdd4
25 changed files with 846 additions and 2 deletions

View File

@@ -0,0 +1,8 @@
package kr.co.vividnext.sodalive.can.use
enum class CanUsage {
LIVE,
DONATION,
CHANGE_NICKNAME,
ORDER_CONTENT
}

View 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()
}

View File

@@ -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
}