신규 기능 추가
1. 관리자 프로그램 메뉴
2. 관리자 대기 주문 목록
3. 관리자 완료 주문 목록
4. 사용자 완료, 대기 주문 목록
private static void showManagement() {
System.out.println("\"SHAKESHAKE BURGER 관리자 페이지\"");
managementContext.showManagementMenu();
System.out.println("기능을 선택해주세요.");
int manageNum = sc.nextInt();
switch (manageNum) {
case 1: // 대기 주문 목록
managementContext.processWaitingOrders(order);
break;
case 2: // 완료 주문 목록
managementContext.completeOrders(order);
break;
default:
System.out.println("잘못된 선택지입니다.");
}
showManagement();
}
public void processWaitingOrders(Order orders) {
waitingOrders(orders);
System.out.println("대기중인 주문을 완료하시겠습니까?");
System.out.println("1.확인 2. 취소");
int choice = sc.nextInt();
System.out.println("완료 주문 번호: ");
int orderNumber = sc.nextInt();
if(choice == 1) {
for (Order order: orders.getOrderList()) {
if(order.getOrderNumber() == orderNumber) {
order.setComplete(true);
System.out.println("처리가 완료되었습니다.");
break;
}
}
}
}
public void waitingOrders(Order orders) {
System.out.println("[ 대기 주문 목록 ]");
for (Order order : orders.getOrderList()) {
if (!order.complete) {
order.show();
System.out.println();
}
}
}
public void show() {
System.out.println("대기 번호 : " + this.orderNumber);
System.out.println("주문 상품 목록");
for (Product products: orders) {
System.out.println(String.format("%-15s | W %.1f | %s", products.getName(), products.getPrice(), products.getDescription()));
}
System.out.println("주문 총 가격 : " + this.total);
System.out.println("요청 사항 : " + this.request);
System.out.println("주문 일시 : " + this.orderDate);
}
public void completeOrders(Order orders) {
System.out.println("[ 완료 주문 목록 ]");
for (Order order: orders.getOrderList()) {
if(order.complete) {
order.show();
System.out.println("완료주문 일시 : " + orders.completeDate);
System.out.println();
}
}
}
public void show() {
System.out.println("대기 번호 : " + this.orderNumber);
System.out.println("주문 상품 목록");
for (Product products: orders) {
System.out.println(String.format("%-15s | W %.1f | %s", products.getName(), products.getPrice(), products.getDescription()));
}
System.out.println("주문 총 가격 : " + this.total);
System.out.println("요청 사항 : " + this.request);
System.out.println("주문 일시 : " + this.orderDate);
}
private static void showOrderList() {
managementContext.completeOrders(order);
managementContext.waitingOrders(order);
showMainMenu();
}
잘 될거라고 생각했는데 실행시켜보니 뭔가 이상하다.
대기 주문 목록에서는 주문 상품 목록, 요청사항이 나오지 않았고
관리자 완료 대기 목록은 주문을 완료시켜도 대기 목록에 나오지 않았다.