Beispiel #1
0
        public void RegisterMember(ArrayList memberArrayList, ArrayList bookArrayList)      // '회원 등록' 기능 실행
        {
            Console.Clear();
            MemberVO memberVO = new MemberVO();

            display.PrintMemberRegisterOrModify("등", "록");                                                                   // '회원 등록'창 출력
            Console.SetCursorPosition(54, 9);                                                                                // 커서 위치를 아이디 입력란으로 이동
            memberVO.MemberID = "";
            memberVO.MemberID = exception.EnglishOrNumberInput(memberArrayList, bookArrayList, memberVO.MemberID, "등", "록"); // 회원 아이디 입력이 영문자 혹은 숫자인지 확인하고 값 저장
            Console.SetCursorPosition(54, 11);                                                                               // 커서 위치를 비밀번호 입력란으로 이동
            memberVO.MemberPSW = "";
            memberVO.MemberPSW = exception.PasswordInput(memberVO.MemberPSW);                                                // 회원 비밀번호 입력이 영문자 혹은 숫자인지 확인 및 비밀번호를 *로 표기
            Console.SetCursorPosition(54, 13);
            memberVO.MemberName = "";
            memberVO.MemberName = exception.KoreanInput(memberVO.MemberName);
            Console.SetCursorPosition(54, 15);
            memberVO.MemberPhone = exception.PhoneNumberInput(memberVO.MemberPhone);        // 연락처 입력이 숫자인지 확인하고 값 저장
            memberArrayList.Add(memberVO);                                                  // 회원 정보를 ArrayList에 추가
            display.Outline();
            Console.SetCursorPosition(45, 11);
            Console.Write("회원 등록을 완료했습니다.");
            System.Threading.Thread.Sleep(2000);
            display.PrintMemberPage();                                                      // 회원 등록을 완료하고 '회원 관리' 페이지로 이동
            RunMemberPage(memberArrayList, bookArrayList);
        }
Beispiel #2
0
        public void RegisterBook(ArrayList memberArrayList, ArrayList bookArrayList)                                 // '도서 등록' 기능 실행
        {
            BookVO bookVO = new BookVO();

            display.PrintBookRegisterOrModify("등", "록");                                                           // '도서 등록' 페이지 출력
            Console.SetCursorPosition(46, 9);
            bookVO.BookName = exception.EnglishOrKoreanOrNumberInput(bookVO.BookName);                             // 도서 제목 입력값이 영문자 혹은 한글 혹은 숫자인지 확인
            Console.SetCursorPosition(46, 11);
            bookVO.BookAuthor = exception.EnglishOrKoreanOrNumberInput(bookVO.BookAuthor);                         // 도서 저자 입력값이 영문자 혹은 한글 혹은 숫자인지 확인
            Console.SetCursorPosition(46, 13);
            bookVO.BookPublisher = exception.EnglishOrKoreanOrNumberInput(bookVO.BookPublisher);                   // 도서 출판사 입력값이 영문자 혹은 한글 혹은 숫자인지 확인
            Console.SetCursorPosition(46, 15);
            bookVO.BookPrice = exception.NumberInput(bookVO.BookPrice);                                            // 도서 가격 입력값이 숫자인지 확인
            bookVO.BookNo    = countBookNo.ToString();                                                             // 도서 번호를 저장
            countBookNo++;                                                                                         // 도서 번호 count를 1씩 증가
            bookArrayList.Add(bookVO);                                                                             // bookArrayList에 도서 등록 정보 추가
            display.Outline();                                                                                     // 기본 네모 Outline 출력
            Console.SetCursorPosition(45, 11);
            Console.Write("도서 등록을 완료했습니다.");
            System.Threading.Thread.Sleep(2000);
            display.PrintBookPage();                                                                                 // 도서 관리 페이지로 이동
            RunBookPage(memberArrayList, bookArrayList);
        }
        public void RentBook(ArrayList memberArrayList, ArrayList bookArrayList)                        // 도서 대여 기능 실행
        {
            display.Outline();                                                                          // 기본 네모 Outline 출력
            Console.SetCursorPosition(36, 11);
            Console.Write("대여할 도서의 번호를 입력하세요. :");
            string rentBookNo = "";

            rentBookNo = exception.NumberInput(rentBookNo);                                             // 대여할 도서의 번호 입력값이 숫자인지 확인
            foreach (BookVO bookList in bookArrayList)
            {
                if (bookList.BookNo == rentBookNo && bookList.BookReservation == "대여 가능")            // 대여할 도서의 번호가 이미 등록된 도서의 번호 중 일치하는 값이 있고 해당 도서의 대여 정보가 '대여 가능'인 경우
                {
                    bookList.BookReservation = "대여중";                                                // 해당 도서의 대여 정보를 '대여중'으로 변경
                    bookList.BookReturnDate  = DateTime.Today.AddDays(7);                            // 반납 예정일을 현재 날짜에서 7을 더한 값으로 변경
                    display.Outline();
                    Console.SetCursorPosition(34, 11);
                    Console.Write(bookList.BookName + "을(를) " + bookList.BookReturnDate.Year + "년" + bookList.BookReturnDate.Month + "월" + bookList.BookReturnDate.Day + "일까지 대여합니다.");
                    Console.SetCursorPosition(80, 22);
                    Console.Write("뒤로 가려면 'q'를 입력하세요.");                                     // 'q' 또는 'ㅂ'을 입력 받으면 도서 대여 및 반납 페이지로 이동
                    ConsoleKeyInfo key;

                    while (true)
                    {
                        key = Console.ReadKey(true);
                        if (key.KeyChar == 'q' || key.KeyChar == 'ㅂ')
                        {
                            display.PrintRentAndReturnBook();
                            RunRentAndReturnBook(memberArrayList, bookArrayList);
                            break;
                        }
                        else
                        {
                            Console.Write("");
                        }
                    }
                }
                else if (bookList.BookNo == rentBookNo && bookList.BookReservation == "대여중")        // 대여할 도서의 번호가 이미 등록된 도서의 번호 중 일치하는 값이 있고 해당 도서의 대여 정보가 '대여중'인 경우
                {
                    display.Outline();
                    Console.SetCursorPosition(34, 11);
                    Console.Write("현재 " + bookList.BookName + "은(는) " + bookList.BookReturnDate.Year + "년" + bookList.BookReturnDate.Month + "월" + bookList.BookReturnDate.Day + "일까지 대여중입니다."); // 이미 대여중이기 때문에 해당 도서의 반납예정일을 출력
                    Console.SetCursorPosition(80, 22);
                    Console.Write("뒤로 가려면 'q'를 입력하세요.");                                                                                                                                         // 'q' 또는 'ㅂ'을 입력 받으면 뒤로 가기
                    ConsoleKeyInfo key;
                    while (true)
                    {
                        key = Console.ReadKey(true);
                        if (key.KeyChar == 'q' || key.KeyChar == 'ㅂ')
                        {
                            display.PrintRentAndReturnBook();
                            RunRentAndReturnBook(memberArrayList, bookArrayList);
                            break;
                        }
                        else
                        {
                            Console.Write("");
                        }
                    }
                }
            }
            display.Outline();                                                                          // 대여할 도서의 번호가 이미 등록된 도서의 번호 중 일치하는 값이 없는 경우
            Console.SetCursorPosition(34, 11);
            Console.Write(rentBookNo + "번의 도서 정보를 찾을 수 없습니다.");
            System.Threading.Thread.Sleep(2000);
            display.PrintRentAndReturnBook();                                                           // 도서 대여 및 반납 페이지로 이동
            RunRentAndReturnBook(memberArrayList, bookArrayList);
        }