Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

πŸš€ 3단계 - κΈ°λŠ₯ μš°μ„  νŒ¨ν‚€μ§€ κ΅¬μ„±ν•˜κΈ° #433

Open
wants to merge 1 commit into
base: deepredk
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.infra;
package kitchenpos.common.infra;

import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.stereotype.Component;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.infra;
package kitchenpos.common.infra;

public interface PurgomalumClient {
boolean containsProfanity(String text);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package kitchenpos.application;
package kitchenpos.legacy.application;

import kitchenpos.domain.Menu;
import kitchenpos.domain.MenuRepository;
import kitchenpos.domain.Order;
import kitchenpos.domain.OrderLineItem;
import kitchenpos.domain.OrderRepository;
import kitchenpos.domain.OrderStatus;
import kitchenpos.domain.OrderTable;
import kitchenpos.domain.OrderTableRepository;
import kitchenpos.domain.OrderType;
import kitchenpos.infra.KitchenridersClient;
import kitchenpos.menu.domain.Menu;
import kitchenpos.menu.domain.MenuRepository;
import kitchenpos.legacy.domain.Order;
import kitchenpos.legacy.domain.OrderLineItem;
import kitchenpos.legacy.domain.OrderRepository;
import kitchenpos.legacy.domain.OrderStatus;
import kitchenpos.order.delivery_order.domain.OrderTable;
import kitchenpos.order.delivery_order.domain.OrderTableRepository;
import kitchenpos.legacy.domain.OrderType;
import kitchenpos.order.delivery_order.infra.KitchenridersClient;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.legacy.domain;

import org.springframework.data.jpa.repository.JpaRepository;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.legacy.domain;

import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
Expand All @@ -12,6 +12,7 @@
import jakarta.persistence.OneToMany;
import jakarta.persistence.Table;
import jakarta.persistence.Transient;
import kitchenpos.order.delivery_order.domain.OrderTable;

import java.time.LocalDateTime;
import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.legacy.domain;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
Expand All @@ -10,6 +10,7 @@
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import jakarta.persistence.Transient;
import kitchenpos.menu.domain.Menu;

import java.math.BigDecimal;
import java.util.UUID;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
package kitchenpos.domain;
package kitchenpos.legacy.domain;

import kitchenpos.order.delivery_order.domain.OrderTable;

import java.util.List;
import java.util.Optional;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.legacy.domain;

public enum OrderStatus {
WAITING, ACCEPTED, SERVED, DELIVERING, DELIVERED, COMPLETED
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.legacy.domain;

public enum OrderType {
DELIVERY, TAKEOUT, EAT_IN
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package kitchenpos.ui;
package kitchenpos.legacy.ui;

import kitchenpos.application.OrderService;
import kitchenpos.domain.Order;
import kitchenpos.legacy.application.OrderService;
import kitchenpos.legacy.domain.Order;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package kitchenpos.application;
package kitchenpos.menu.application;

import kitchenpos.domain.MenuGroup;
import kitchenpos.domain.MenuGroupRepository;
import kitchenpos.menu.domain.MenuGroup;
import kitchenpos.menu.domain.MenuGroupRepository;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
package kitchenpos.application;
package kitchenpos.menu.application;

import kitchenpos.domain.Menu;
import kitchenpos.domain.MenuGroup;
import kitchenpos.domain.MenuGroupRepository;
import kitchenpos.domain.MenuProduct;
import kitchenpos.domain.MenuRepository;
import kitchenpos.domain.Product;
import kitchenpos.domain.ProductRepository;
import kitchenpos.infra.PurgomalumClient;
import kitchenpos.menu.domain.Menu;
import kitchenpos.menu.domain.MenuGroup;
import kitchenpos.menu.domain.MenuGroupRepository;
import kitchenpos.menu.domain.MenuProduct;
import kitchenpos.menu.domain.MenuRepository;
import kitchenpos.product.domain.Product;
import kitchenpos.product.domain.ProductRepository;
import kitchenpos.common.infra.PurgomalumClient;
import org.springframework.stereotype.Service;
Comment on lines +3 to 11
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

menu λŠ” product 에 λŒ€ν•œ μ˜μ‘΄μ„ μ–΄λŠμ •λ„ κ°€μ§ˆ 수 μžˆλ‹€κ³  μƒκ°ν•΄μš”!
λ‹€λ§Œ ν•™μŠ΅μ„ μœ„ν•΄μ„œ 뢄리λ₯Ό μ‹œλ„ν•΄λ³΄λŠ” 것도 쒋을 것 같은데... μ–΄λ–€ 방법이 μžˆμ„κΉŒμš”? πŸ˜‰

import org.springframework.transaction.annotation.Transactional;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.menu.domain;

import org.springframework.data.jpa.repository.JpaRepository;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.menu.domain;

import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.menu.domain;

import jakarta.persistence.CascadeType;
import jakarta.persistence.Column;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.menu.domain;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.menu.domain;

import java.util.List;
import java.util.Optional;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.menu.domain;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
Expand All @@ -10,6 +10,7 @@
import jakarta.persistence.ManyToOne;
import jakarta.persistence.Table;
import jakarta.persistence.Transient;
import kitchenpos.product.domain.Product;

import java.util.UUID;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.menu.domain;

import java.util.List;
import java.util.Optional;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package kitchenpos.ui;
package kitchenpos.menu.ui;

import kitchenpos.application.MenuGroupService;
import kitchenpos.domain.MenuGroup;
import kitchenpos.menu.application.MenuGroupService;
import kitchenpos.menu.domain.MenuGroup;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package kitchenpos.ui;
package kitchenpos.menu.ui;

import kitchenpos.application.MenuService;
import kitchenpos.domain.Menu;
import kitchenpos.menu.application.MenuService;
import kitchenpos.menu.domain.Menu;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
Expand Down
8 changes: 8 additions & 0 deletions src/main/java/kitchenpos/order/common/domain/Order.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package kitchenpos.order.common.domain;

import java.util.List;

public abstract class Order {

protected List<OrderLineItem> orderLineItems;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.common.domain;

public class OrderLineItem {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.delivery_order.application;

public class DeliveryOrderService {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package kitchenpos.order.delivery_order.domain;

import kitchenpos.order.common.domain.Order;

public class DeliveryOrder extends Order {
}
Comment on lines +1 to +6
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

상속을 μ΄μš©ν•΄μ£Όμ…¨κ΅°μš”!

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.delivery_order.domain;

public interface DeliveryOrderRepository {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package kitchenpos.order.delivery_order.domain;

public enum DeliveryOrderStatus {
WAITING, ACCEPTED, SERVED, DELIVERING, DELIVERED, COMPLETED
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.order.delivery_order.domain;

import org.springframework.data.jpa.repository.JpaRepository;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.order.delivery_order.domain;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.order.delivery_order.domain;

import java.util.List;
import java.util.Optional;
Comment on lines +1 to 4
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

μ£Όλ¬Έ ν…Œμ΄λΈ”μ΄ 배달주문에 포함?! 😱

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.infra;
package kitchenpos.order.delivery_order.infra;

import org.springframework.stereotype.Component;

Comment on lines +1 to 4
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

배달 κ΅¬ν˜„μ²΄κ°€ μ™ΈλΆ€ ν”„λ‘œκ·Έλž¨(ν΄λΌμ΄μ–ΈνŠΈ)μž„μ„ 우리 λΉ„μ¦ˆλ‹ˆμŠ€μ—μ„œ κΌ­ μ•Œμ•„μ•Όν• κΉŒμš”? πŸ€”

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.infra;
package kitchenpos.order.delivery_order.infra;

import java.math.BigDecimal;
import java.util.UUID;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.delivery_order.ui;

public class DeliveryOrderRestController {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.eat_in_order.application;

public class EatInOrderService {
}
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package kitchenpos.application;
package kitchenpos.order.eat_in_order.application;

import kitchenpos.domain.OrderRepository;
import kitchenpos.domain.OrderStatus;
import kitchenpos.domain.OrderTable;
import kitchenpos.domain.OrderTableRepository;
import kitchenpos.legacy.domain.OrderRepository;
import kitchenpos.legacy.domain.OrderStatus;
import kitchenpos.order.delivery_order.domain.OrderTable;
import kitchenpos.order.delivery_order.domain.OrderTableRepository;
import org.springframework.stereotype.Service;
Comment on lines +1 to 7
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

맀μž₯주문에 λ ˆκ±°μ‹œμ™€ 배달주문이 λ’€μ„žμ—¬ μžˆλŠ” 것 κ°™μ•„μš” 😱

import org.springframework.transaction.annotation.Transactional;

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package kitchenpos.order.eat_in_order.domain;

import kitchenpos.order.common.domain.Order;

public class EatInOrder extends Order {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.eat_in_order.domain;

public interface EatInOrderRepository {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package kitchenpos.order.eat_in_order.domain;

public enum EatInOrderStatus {
WAITING, ACCEPTED, SERVED, COMPLETED
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.eat_in_order.ui;

public class EatInOrderRestController {
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package kitchenpos.ui;
package kitchenpos.order.eat_in_order.ui;

import kitchenpos.application.OrderTableService;
import kitchenpos.domain.OrderTable;
import kitchenpos.order.eat_in_order.application.OrderTableService;
import kitchenpos.order.delivery_order.domain.OrderTable;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.take_out_order.application;

public class TakeOutOrderService {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package kitchenpos.order.take_out_order.domain;

import kitchenpos.order.common.domain.Order;

public class TakeOutOrder extends Order {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.take_out_order.domain;

public interface TakeOutOrderRepository {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package kitchenpos.order.take_out_order.domain;

public enum TakeOutOrderStatus {
WAITING, ACCEPTED, SERVED, COMPLETED
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package kitchenpos.order.take_out_order.ui;

public class TakeOutOrderRestController {
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package kitchenpos.application;
package kitchenpos.product.application;

import kitchenpos.domain.Menu;
import kitchenpos.domain.MenuProduct;
import kitchenpos.domain.MenuRepository;
import kitchenpos.domain.Product;
import kitchenpos.domain.ProductRepository;
import kitchenpos.infra.PurgomalumClient;
import kitchenpos.menu.domain.Menu;
import kitchenpos.menu.domain.MenuProduct;
import kitchenpos.menu.domain.MenuRepository;
import kitchenpos.product.domain.Product;
import kitchenpos.product.domain.ProductRepository;
import kitchenpos.common.infra.PurgomalumClient;
Comment on lines +1 to +8
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ν˜„μž¬ product νŒ¨ν‚€μ§€μ—μ„œ menu νŒ¨ν‚€μ§€μ— λŒ€ν•œ 의쑴이 μ§„ν–‰λ˜κ³  μžˆλŠ”λ°μš”, 이λ₯Ό μ—†μ•¨λ§Œν•œ 방법은 무엇이 μžˆμ„κΉŒμš”?
기술적인 해결방법 뿐만 μ•„λ‹ˆλΌ, 섀계적인 μΈ‘λ©΄μ—μ„œ "κΌ­ product κ°€ menu λ₯Ό μ•Œμ•„μ•Όν• κΉŒ?" 고민해보면 λ”μš± μ’‹κ² λ„€μš”!

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.product.domain;

import org.springframework.data.jpa.repository.JpaRepository;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kitchenpos.domain;
package kitchenpos.product.domain;

import jakarta.persistence.Column;
import jakarta.persistence.Entity;
Expand Down
Loading