1. Menu
package library;
import java.util.Scanner;
import BookRent.BookRentService;
import VideoRent.VideoRentService;
import board.Boardservice;
import board.Boardvo;
import book.BookService;
import book.BookVo;
import member.MemberService;
import video.VideoService;
import video.VideoVo;
public class menu {
private MemberService ps;
private Boardservice bs;
private BookRentService br;
private BookService books;
private VideoService vs;
private VideoRentService vr;
public menu() {
ps = new MemberService();
bs = new Boardservice();
br = new BookRentService();
books = new BookService();
vs = new VideoService();
vr = new VideoRentService();
}
public void run(Scanner sc) {
boolean flag = true;
while (flag) {
System.out.println("로그인하세요");
System.out.println("1.회원 전용 2.관리자 전용 ");
int n = sc.nextInt();
switch (n) {
case 1:
psrun(sc);
break;
case 2:
System.out.println("아이디를 입력하세요");
String m = sc.next();
System.out.println("비밀번호를 입력하세요");
String p = sc.next();
if (m.equals("admin") && p.equals("3333")) {
MemberService.Loginid = "admin";
System.out.println("< 관리자계정 로그인 >");
boolean flag1 = true;
while (flag1) {
System.out.println("1.책 관리 2.비디오 관리 3.게시판 관리 4.종료");
int t = sc.nextInt();
switch (t) {
case 1:
bookForAdmin(sc);
break;
case 2:
videoForAdmin(sc);
break;
case 3:
boardForAdmin(sc);
break;
case 4:
System.out.println("프로그램 종료");
flag1 = false;
break;
default:
System.out.println("잘못된 값입니다. 다시 입력해주세요");
break;
}
}
} else {
System.out.println("아이디 또는 비밀번호가 잘못되었습니다");
System.out.println("다시 입력해주세요");
break;
}
case 3:
flag = false;
break;
}
}
}
public void psrun(Scanner sc) {
int m = 0;
boolean flag = true;
while (flag) {
System.out.println("1.회원가입 2.로그인");
m = sc.nextInt();
switch (m) {
case 1:
ps.join(sc);
membermenu(sc);
break;
case 2:
ps.login(sc);
membermenu(sc);
break;
default:
flag = false;
break;
}
}
}
public void membermenu(Scanner sc) {
boolean flag = true;
if (ps.Loginid != null) {
while (flag) {
System.out.println("메뉴를 선택해주세요");
System.out.println("1.책 2.비디오 3.게시판 4.내정보 설정 5.로그아웃");
int m = sc.nextInt();
switch (m) {
case 1:
bookForMember(sc);
break;
case 2:
videoForMember(sc);
break;
case 3:
boardForMember(sc);
break;
case 4:
MyAccount(sc);
break;
case 5:
ps.logout();
flag = false;
break;
default :
System.out.println("잘못누르셨습니다");
System.out.println("오류로 인지하여 로그아웃 됩니다.");
ps.logout();
flag = false;
break;
}
}
}
}
public void MyAccount(Scanner sc) {
int m = 0;
boolean flag = true;
while (flag) {
System.out.println("< 내 정보 >");
System.out.println("1.내정보 확인 2.내정보 수정 3.나의 대여 목록 4.회원 탈퇴 5.이전메뉴");
m = sc.nextInt();
switch (m) {
case 1:
ps.printMyInfo();
break;
case 2:
ps.editMyInfo(sc);
break;
case 3:
br.selectById();
vr.selectById();
break;
case 4:
ps.out();
break;
default:
System.out.println("이전 메뉴로 돌아갑니다");
flag = false;
break;
}
}
}
public void bookForMember(Scanner sc) {
boolean flag = true;
while (flag) {
System.out.println("< 도서관리 >");
System.out.println("1.전체목록 2.작가 검색 3.제목 검색 4.책 대여 5.책 반납 6.이전메뉴");
int m = sc.nextInt();
switch (m) {
case 1:
books.getAll();
break;
case 2:
books.selectbywriter(sc);
break;
case 3:
books.selectbytitle(sc);
break;
case 4:
br.BookRent(sc);
break;
case 5:
br.BookReturn(sc);
break;
default:
System.out.println("이전 메뉴로 돌아갑니다");
flag = false;
break;
}
}
}
public void videoForMember(Scanner sc) {
boolean flag = true;
while (flag) {
System.out.println("< 비디오관리 >");
System.out.println("1.전체목록 2.장르 검색 3.제목 검색 4.대여 5.반납 6.이전메뉴");
int m = sc.nextInt();
switch (m) {
case 1:
vs.getAll();
break;
case 2:
vs.selectbygerne(sc);
break;
case 3:
vs.selectbytitle(sc);
break;
case 4:
vr.VideoRent(sc);
break;
case 5:
vr.VideoReturn(sc);
break;
default:
System.out.println("이전 메뉴로 돌아갑니다");
flag = false;
break;
}
}
}
public void boardForMember(Scanner sc) {
boolean flag = true;
int m = 0;
while (flag) {
System.out.println("< 게시판 >");
System.out.println("1.글 작성 2.글 목록 3.번호 검색 4.작성자 검색 5.제목 검색 6.글 수정 7.글 삭제 8.이전메뉴");
m = sc.nextInt();
switch (m) {
case 1:
bs.addboard(sc);
break;
case 2:
bs.getAll();
break;
case 3:
bs.getByNum(sc);
break;
case 4:
bs.getByWriterAll(sc);
break;
case 5:
bs.getByTitleAll(sc);
break;
case 6:
bs.editboard(sc);
break;
case 7:
bs.delBoard(sc);
break;
default:
System.out.println("이전 메뉴로 돌아갑니다");
flag = false;
break;
}
}
}
// 관리자 메서드
public void bookForAdmin(Scanner sc) {
boolean flag = true;
BookVo vo = new BookVo();
while (flag) {
System.out.println("< 책 관리 >");
System.out.println("1.등록 2.정보 수정 3.삭제 4.전체목록 5.대여 기록 6.미반납 7.이전메뉴");
int m = sc.nextInt();
switch (m) {
case 1:
books.insert(sc);
break;
case 2:
books.edit(sc);
break;
case 3:
books.delBook(sc);
break;
case 4:
books.getAll();
break;
case 5:
br.getAll();
break;
case 6:
br.selectByReturnOver();
break;
default:
System.out.println("이전 메뉴로 돌아갑니다");
flag = false;
break;
}
}
}
public void videoForAdmin(Scanner sc) {
boolean flag = true;
VideoVo vo = new VideoVo();
while (flag) {
System.out.println("< 비디오 관리 >");
System.out.println("1.등록 2.정보 수정 3.삭제 4.전체목록 5.대여 기록 6.미반납 7.이전메뉴");
int m = sc.nextInt();
switch (m) {
case 1:
vs.insert(sc);
break;
case 2:
vs.edit(sc);
break;
case 3:
vs.delVideo(sc);
break;
case 4:
vs.getAll();
break;
case 5:
vr.getAll();
break;
case 6:
vr.selectByReturnOver();
break;
default:
System.out.println("이전 메뉴로 돌아갑니다");
flag = false;
break;
}
}
}
public void boardForAdmin(Scanner sc) {
boolean flag = true;
Boardvo vo = new Boardvo();
while (flag) {
System.out.println("< 게시판 관리 >");
System.out.println("1.게시글 등록 2.글 목록 3.게시글 삭제 4.게시글 수정 5.작성자 검색");
int m = sc.nextInt();
switch (m) {
case 1:
bs.addboard(sc);
break;
case 2:
bs.getAll();
break;
case 3:
bs.delBoard(sc);
break;
case 4:
bs.editboard(sc);
break;
case 5:
bs.getByWriterAll(sc);
break;
default:
System.out.println("이전 메뉴로 돌아갑니다");
flag = false;
break;
}
}
}
}
2. Main
package library;
import java.util.Scanner;
public class main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
menu m = new menu();
m.run(sc);
}
}
메뉴 잘 돌아갈때가
'프로젝트 > Mini project' 카테고리의 다른 글
[mini project] 10. 도서관 관리 시스템 (0) | 2023.03.19 |
---|---|
[mini project] 8. 도서관 관리 시스템 - 대여 테이블 (0) | 2023.03.19 |
[mini project] 7. 도서관 관리 시스템 - 비디오 관리 테이블 (0) | 2023.03.19 |
[mini project] 6. 도서관 관리 시스템 - 책 관리 테이블 (0) | 2023.03.19 |
[mini project] 5. 도서관 관리 시스템 - 게시판 테이블 (0) | 2023.03.19 |