Skip to content
This repository has been archived by the owner on Aug 13, 2022. It is now read-only.

feat:Check OrderList(Host) #7

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

soundid
Copy link

@soundid soundid commented Aug 17, 2021

주문확인(Host)

  • 고객이 주문을 하게 되면 식당사장님(host)는 주문정보를 확인합니다.
  • 주문정보를 확인할때에 storeId와 OrderStatus가 주문중인상태를 파라미터로 보내어 주문목록을 확인합니다.
  • 추후 배달요청을 고려하여 OrderCheckRes(Response)로 다른 정보를 받도록 했습니다.

주문시 예외처리saveOrder

  1. 식당영업시간이 아닌 상태 StoreStatus.CLOSE 인 상태일경우에는 주문을 하지 못도록 한번 더 예외처리를 해주었습니다.
  2. 음식메뉴 재고 소진된 메뉴가 주문요청이 들어올수 있는 경우를 대비해 ItemStatus.On(메뉴주문가능인상태)인 메뉴만
    주문에 담도록 처리했습니다.

@soundid
Copy link
Author

soundid commented Aug 18, 2021

rollbackFor라는 옵션이 명시된 이유가 있을까요?

runtimeException 예외처리로 롤백처리를 위해 명시를 했습니다. 실제로는 @Transanctional은 rollback 없이도 디폴트로 runtimeException예외처리시에 롤백이 가능하긴 합니다.
결국 의도는 영업시간이 아닌 시간에는 주문이 이뤄지는 것을 막기 위함이라고 할 수 있습니다.

@soundid
Copy link
Author

soundid commented Aug 18, 2021

현재 주문이 들어온 상태의 리스트만 가져오는 것인가요?
주문이 완료되어 배달까지 종료된 리스트는 따로 호출을 통해 가져와야 하는 건가요?

기획서가 없어서 나온 질문이라고 생각합니다.
제가 알아본 주문->배달완료까지만 본다면 신규주문/처리 및 완료 각각 1depth 메뉴가 있습니다.

  1. 새롭게 들어온 주문내역이 들어옵니다. (신규주문/처리 메뉴)
  2. 주문내역을 확인하고 배달신청을 합니다. (신규주문/처리 메뉴)
  3. 배달완료시 주문내역이 배달완료 메뉴로 넘어갑니다. (완료)

제생각은 메뉴별로 api를 하나씩 두고 호출하는 것이 낫다는 판단하에 주문이 들어온 리스트만 불러오도록 개발했습니다.
주문완료 및 주문처리가 미완료된 데이터가 적을때에는 문제가 되진 않겠지만,
대량의 데이터(신규주문 및 배달완료)가 쌓여 있을 경우를 대비 하여 따로 불러오는 것이 좋을 듯합니다.

@soundid
Copy link
Author

soundid commented Aug 18, 2021

패키지 이름을 명시하여 사용하는 것이 Order 와 OrderItem 간의 양방향 연관관계가 없어서 라고 한다면
Order에 컬렉션 리스트를 추가하는 형식으로 변경이 가능하지 않을까요?

음.. 일단 jpa측면 보단, 파라미터상으로 보았을 때에 대량 또는 여러개의 orderId를 보내는것보다 storeId와, orderstatus로만 처리를 하는게 더 깔끔하다고 생각했기 때문에 storeId로 처리를 했습니다.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants