1 package io.extact.rms.client.console.ui.admin; 2 3 import static io.extact.rms.client.console.ui.textio.TextIoUtils.*; 4 5 import lombok.RequiredArgsConstructor; 6 7 import io.extact.rms.client.api.dto.UserAccountClientDto; 8 import io.extact.rms.client.console.ui.TransitionMap.RmsScreen; 9 import io.extact.rms.client.console.ui.TransitionMap.Transition; 10 11 public class AdminMainScreen implements RmsScreen { 12 13 @RequiredArgsConstructor 14 public enum AdminMenuList { 15 16 ENTRY_RENTAL_ITEM("レンタル品登録", Transition.ENTRY_RENTAL_ITEM), 17 ENTRY_USER("ユーザ登録", Transition.ENTRY_USER), 18 EDIT_USER("ユーザ編集", Transition.EDIT_USER), 19 RELOGIN("再ログイン", Transition.LOGIN), 20 END("終了", Transition.END); 21 22 private final String name; 23 private final Transition transition; 24 25 Transition getTransition() { 26 return transition; 27 } 28 29 @Override 30 public String toString() { 31 return name; 32 } 33 } 34 35 @Override 36 public Transition play(UserAccountClientDto loginUser, boolean printHeader) { 37 38 printScreenHeader(loginUser, "管理者サービスメニュー画面"); 39 40 var selectedMenu = newEnumInputReader(AdminMenuList.class) 41 .read("メニュー番号を入力して下さい。"); 42 43 return selectedMenu.getTransition(); 44 } 45 }