コード例 #1
0
        //Lists all movies and their information currently borrowed in the _current Member's name
        //Input: None
        //Output: Movie data for all movies in _current Member's personal MovieCollection
        static void ListBorrowed()
        {
            int size = MemberCollection.GetMovies(_current).Size();

            int.TryParse(Math.Ceiling(size / 2.0).ToString(), out int pages);
            int currentPage = 1;

DisplayMyMovies:
            Console.Clear();
            Console.WriteLine("Logged in as {0} {1}", _current.FirstName, _current.Surname);
            Console.WriteLine("========List current borrowed movie DVDs========");
            MovieCollection currentMovies = MemberCollection.GetMovies(_current).Subcollection((currentPage - 1) * 2, (currentPage) * 2);

            currentMovies.Display();
            Console.Write("\n    Page: 0 (Return)");
            for (int i = 1; i <= pages; i++)
            {
                if (i == currentPage)
                {
                    Console.Write(" [{0}]", i.ToString());
                }
                else
                {
                    Console.Write("  {0} ", i.ToString());
                }
            }
            Console.WriteLine("\n================================================");
            ConsoleKeyInfo c = Console.ReadKey(true);

            if (c.Key == ConsoleKey.Escape)
            {
                return;
            }
            if (c.KeyChar.ToString() == "0")
            {
                return;
            }
            int.TryParse(c.KeyChar.ToString(), out int v);
            if (v > 0 && v <= pages)
            {
                currentPage = v <0 ? 0 : v> pages ? pages : v;
            }
            goto DisplayMyMovies;
        }
コード例 #2
0
        //Return a movie to the library
        //Input: title of a movie currently borrowed by the _current Member
        //Output: Movie removed from _current Member's personal MovieCollection and Movie's copies++
        static void Return()
        {
            Console.Clear();
            Console.WriteLine("Logged in as {0} {1}", _current.FirstName, _current.Surname);
            Console.WriteLine("===============Return a movie DVD===============");
            Console.WriteLine("   Which movie would you like to return?\n");
            Console.WriteLine("   Or press 'Escape' to exit");
            Console.WriteLine("================================================");
            Console.Write(" Title: ");
            ConsoleKeyInfo key   = Console.ReadKey();
            string         title = "";

            if (key.Key == ConsoleKey.Escape)
            {
                return;
            }
            else
            {
                title += key.KeyChar.ToString();
            }
            title += Console.ReadLine();
            Movie movie = MemberCollection.GetMovies(_current).Find(title);

            if (movie == null)
            {
                Console.WriteLine("\n   You are not currently borrowing {0}", title);
                Console.ReadKey(true);
                Return();
                return;
            }
            _current.Return(MemberCollection.GetMovies(_current).Find(title));
            _library.Find(title).Return();
            Console.WriteLine("\n   Successfully returned {0}", title);
            Console.ReadKey(true);
            Return();
        }