Skip to content

Commit

Permalink
feat: 봉달 상품 수량 값객체 적용
Browse files Browse the repository at this point in the history
  • Loading branch information
TaeyeonRoyce committed Jan 30, 2024
1 parent d0a9c55 commit 18e179f
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 4 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.petqua.application.cart.dto

import com.petqua.domain.cart.CartProduct
import com.petqua.domain.cart.CartProductQuantity
import com.petqua.domain.cart.DeliveryMethod

data class SaveCartProductCommand(
Expand All @@ -14,7 +15,7 @@ data class SaveCartProductCommand(
return CartProduct(
memberId = memberId,
productId = productId,
quantity = quantity,
quantity = CartProductQuantity(quantity),
isMale = isMale,
deliveryMethod = deliveryMethod,
)
Expand Down
5 changes: 3 additions & 2 deletions src/main/kotlin/com/petqua/domain/cart/CartProduct.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package com.petqua.domain.cart

import com.petqua.common.domain.BaseEntity
import jakarta.persistence.Column
import jakarta.persistence.Embedded
import jakarta.persistence.Entity
import jakarta.persistence.EnumType
import jakarta.persistence.Enumerated
Expand All @@ -20,8 +21,8 @@ class CartProduct(
@Column(nullable = false)
val productId: Long,

@Column(nullable = false)
val quantity: Int = 1,
@Embedded
val quantity: CartProductQuantity,

@Column(nullable = false)
val isMale: Boolean,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,16 @@ import com.petqua.common.util.throwExceptionWhen
import com.petqua.exception.cart.CartProductException
import com.petqua.exception.cart.CartProductExceptionType.PRODUCT_QUANTITY_OVER_MAXIMUM
import com.petqua.exception.cart.CartProductExceptionType.PRODUCT_QUANTITY_UNDER_MINIMUM
import jakarta.persistence.Column
import jakarta.persistence.Embeddable

private const val MIN_QUANTITY = 1
private const val MAX_QUANTITY = 99

@Embeddable
class CartProductQuantity(
val quantity: Int,
@Column(nullable = false)
val quantity: Int = 1,
) {

init {
Expand Down

0 comments on commit 18e179f

Please sign in to comment.