- 상품 등록
- 가격은 반드시 0원 이상이어야 함
- 모든 상품 조회
- 메뉴 등록
- 등록 메뉴 가격은 반드시 0원 초과여야 함
- 등록 메뉴의 메뉴 그룹이 존재해야 함
- 등록 메뉴에 속한 상품 수량과 상품가격을 곱했을 때 결과가 0원 초과여야 함
- 모든 메뉴 조회
- 메뉴 그룹 등록
- 모든 메뉴 그룹 조회
- 주문 등록
- 주문 메뉴와 주문 수량이 존재해야 함
- 주문 메뉴(들)은 반드시 존재하는 메뉴(들)여야 함
- 주문을 받을 테이블은 존재해야 함
- 주문을 받을 테이블은 빈(empty) 상태여야 함
- 주문을 받을 테이블 상태를 요리 중으로 변경 함
- 등록한 주문과 주문한 메뉴 정보를 주문메뉴로 정리 함
- 모든 주문(주문메뉴 포함) 조회
- 주문 상태 갱신
- 해당 주문이 존재해야 함
- 해당 주문이 완료(completion) 상태 아니여야 함
- 주문을 받을 수 있는 테이블 등록(고객: 0, 상태: empty)
- 모든 테이블의 현재 상태 조회
- 해당 테이블을 주문 받는 테이블로 갱신
- 해당 테이블이 존재햐야 함
- 해당 테이블의 테이블 그룹이 존재하지 않아야 함
- 해당 테이블의 상태가 요리 중 또는 식사 중 상태 아니어야 함
- 테이블을 비어있지 않은(not empty) 상태로 만듬
- 해당 테이블의 고객수 갱신
- 해당 테이블 고객수가 0명 초과여야 함
- 주문을 받을 테이블이 존재해야 함
- 갱신 대상 테이블이 비어있지 않은(not empty) 상태여야 함
- 주문을 받을 수 있는 여러개의 테이블을 하나의 그룹으로 통합 등록
- 통합할 테이블을 지목한 값이 존재해야 함
- 통합할 테이블은 2개 이상이어야 함
- 통합할 테이블이 실제 모두 존재해야 함
- 통합할 테이블은 빈(empty) 상태여야 하고 어느 테이블 그룹에도 속하지 않아야 함
- 통합할 테이블을 그룹화 하고 각 테이블을 비어있지 않은(not empty) 상태로 만듬
- 그룹화 된 테이블들의 그룹화 해제
- 그룹화 된 테이블이 요리 중 식사 중 상태 아니어야 함
한글명 | 영문명 | 설명 |
---|---|---|
상품 | product | 메뉴를 관리하는 기준이 되는 데이터 |
메뉴 그룹 | menu group | 메뉴 묶음, 분류 |
메뉴 | menu | 메뉴 그룹에 속하는 실제 주문 가능 단위 |
메뉴 상품 | menu product | 메뉴에 속하는 수량이 있는 상품 |
금액 | amount | 가격 * 수량 |
주문 테이블 | order table | 매장에서 주문이 발생하는 영역 |
빈 테이블 | empty table | 주문을 등록할 수 없는 주문 테이블 |
주문 | order | 매장에서 발생하는 주문 |
주문 상태 | order status | 주문은 조리 ➜ 식사 ➜ 계산 완료 순서로 진행된다. |
방문한 손님 수 | number of guests | 필수 사항은 아니며 주문은 0명으로 등록할 수 있다. |
단체 지정 | table group | 통합 계산을 위해 개별 주문 테이블을 그룹화하는 기능 |
주문 항목 | order line item | 주문에 속하는 수량이 있는 메뉴 |
매장 식사 | eat in | 포장하지 않고 매장에서 식사하는 것 |