feat(gift): 선물 가격과 신청번호 저장소를 추가한다
This commit is contained in:
+20
@@ -0,0 +1,20 @@
|
|||||||
|
package kr.co.vividnext.sodalive.v2.gift.adapter.out.persistence
|
||||||
|
|
||||||
|
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||||
|
import javax.persistence.Column
|
||||||
|
import javax.persistence.Entity
|
||||||
|
import javax.persistence.Table
|
||||||
|
import javax.persistence.UniqueConstraint
|
||||||
|
|
||||||
|
@Entity
|
||||||
|
@Table(
|
||||||
|
name = "gift_application_no_sequence",
|
||||||
|
uniqueConstraints = [UniqueConstraint(name = "uk_gift_application_no_sequence_date", columnNames = ["sequence_date"])]
|
||||||
|
)
|
||||||
|
class GiftApplicationNoSequence(
|
||||||
|
@Column(name = "sequence_date", nullable = false, length = 8)
|
||||||
|
val sequenceDate: String,
|
||||||
|
|
||||||
|
@Column(name = "last_sequence", nullable = false)
|
||||||
|
var lastSequence: Int
|
||||||
|
) : BaseEntity()
|
||||||
+15
@@ -0,0 +1,15 @@
|
|||||||
|
package kr.co.vividnext.sodalive.v2.gift.adapter.out.persistence
|
||||||
|
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository
|
||||||
|
import org.springframework.data.jpa.repository.Lock
|
||||||
|
import org.springframework.data.jpa.repository.Query
|
||||||
|
import org.springframework.data.repository.query.Param
|
||||||
|
import javax.persistence.LockModeType
|
||||||
|
|
||||||
|
interface GiftApplicationNoSequenceRepository : JpaRepository<GiftApplicationNoSequence, Long> {
|
||||||
|
fun findBySequenceDate(sequenceDate: String): GiftApplicationNoSequence?
|
||||||
|
|
||||||
|
@Lock(LockModeType.PESSIMISTIC_WRITE)
|
||||||
|
@Query("select s from GiftApplicationNoSequence s where s.sequenceDate = :sequenceDate")
|
||||||
|
fun findBySequenceDateForUpdate(@Param("sequenceDate") sequenceDate: String): GiftApplicationNoSequence?
|
||||||
|
}
|
||||||
+30
@@ -0,0 +1,30 @@
|
|||||||
|
package kr.co.vividnext.sodalive.v2.gift.adapter.out.persistence
|
||||||
|
|
||||||
|
import kr.co.vividnext.sodalive.common.BaseEntity
|
||||||
|
import kr.co.vividnext.sodalive.v2.gift.domain.GiftSize
|
||||||
|
import javax.persistence.Column
|
||||||
|
import javax.persistence.Entity
|
||||||
|
import javax.persistence.EnumType
|
||||||
|
import javax.persistence.Enumerated
|
||||||
|
import javax.persistence.Table
|
||||||
|
import javax.persistence.UniqueConstraint
|
||||||
|
|
||||||
|
@Entity
|
||||||
|
@Table(
|
||||||
|
name = "gift_size_price",
|
||||||
|
uniqueConstraints = [UniqueConstraint(name = "uk_gift_size_price_size_code", columnNames = ["size_code"])]
|
||||||
|
)
|
||||||
|
class GiftSizePrice(
|
||||||
|
@Enumerated(EnumType.STRING)
|
||||||
|
@Column(name = "size_code", nullable = false, length = 20)
|
||||||
|
val sizeCode: GiftSize,
|
||||||
|
|
||||||
|
@Column(name = "base_price_can", nullable = false)
|
||||||
|
var basePriceCan: Int,
|
||||||
|
|
||||||
|
@Column(name = "sale_price_can", nullable = false)
|
||||||
|
var salePriceCan: Int,
|
||||||
|
|
||||||
|
@Column(name = "is_active", nullable = false)
|
||||||
|
var isActive: Boolean = true
|
||||||
|
) : BaseEntity()
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
package kr.co.vividnext.sodalive.v2.gift.adapter.out.persistence
|
||||||
|
|
||||||
|
import kr.co.vividnext.sodalive.v2.gift.domain.GiftSize
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository
|
||||||
|
|
||||||
|
interface GiftSizePriceRepository : JpaRepository<GiftSizePrice, Long> {
|
||||||
|
fun findBySizeCode(sizeCode: GiftSize): GiftSizePrice?
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user