// Precondition: None // Postcondition: The LibraryBook class has been tested public static void Main(string[] args) { decimal displayLateFee; LibraryBook book1 = new LibraryBook("The Wright Guide to C#", "Andrew Wright", "UofL Press", 2010, 2, "ZZ25 3G"); // 1st test book LibraryBook book2 = new LibraryBook("Harriet Pooter", "IP Thief", "Stealer Books", 2000, 3, "AG773 ZF"); // 2nd test book LibraryMovie movie1 = new LibraryMovie("The Hills have Eyes", "Emily Robertson", 2010, 10, "AA232", 2.0, "Molly Simmins", LibraryMediaItem.MediaType.DVD, LibraryMovie.MPAARatings.G); //1st test movie LibraryMovie movie2 = new LibraryMovie("The Child", "Tom Boyd", 2019, 10, "A0U32", 1.0, "Sean Smith", LibraryMediaItem.MediaType.DVD, LibraryMovie.MPAARatings.R); //2nd test movie LibraryJournal journal1 = new LibraryJournal("The Wall Street Journal", "The NY Press", 2016, 10, "WW234", 3, 5, "Business", "John Smith"); //1st test journal LibraryJournal journal2 = new LibraryJournal("The New Yorker", "The NY Press", 2018, 10, "W9234", 7, 12, "Business", "Yolanda Rogers"); //2nd test journal LibraryMusic music1 = new LibraryMusic("Theory of a Deadman", "The Press", 2018, 10, "QW234", 34.67, "Theory of a Deadman", LibraryMediaItem.MediaType.CD, 5); // 1st test music LibraryMusic music2 = new LibraryMusic("Kids Bop 45", "The Kidz", 2019, 10, "XC234", 56.67, "KIDS Inc.", LibraryMediaItem.MediaType.CD, 8); // 2nd test music LibraryMagazine magazine1 = new LibraryMagazine("Gossip Central", "Teen Vogue", 2015, 10, "TT189", 7, 6); //1st test magazine LibraryMagazine magazine2 = new LibraryMagazine("People", "The Press", 2019, 10, "KJ189", 9, 2); //2nd test magazine LibraryPatron patron1 = new LibraryPatron("Ima Reader", "123456"); // 1st test patron LibraryPatron patron2 = new LibraryPatron("Jane Doe", "112233"); // 2nd test patron LibraryPatron patron3 = new LibraryPatron(" John Smith ", " 654321 "); // 3rd test patron - Trims? LibraryPatron patron4 = new LibraryPatron("Jessie Hehn", "234567"); // 4th test patron LibraryPatron patron5 = new LibraryPatron("AJ Ross", "654321"); // 5th test patron List <LibraryItem> theLibraryItems = new List <LibraryItem> { book1, book2, movie1, movie2, journal1, journal2, music1, music2, magazine1, magazine2 }; // Test list of books, movies, journals,music,and magazines WriteLine("Original list of books"); WriteLine("----------------------"); PrintItems(theLibraryItems); Pause(); }
// GET: Users public object GetLibrary(int idUser) { var movies = from movie in db.Movies join rel in db.Rel_User_Movie on movie.Id equals rel.IdMovie where rel.IdUser == idUser select new { movie.Id, movie.ImagePath, movie.Title, Id_Rel_User_Movie = rel.Id }; foreach (var movie in movies) { var platforms = (from platform in db.Cat_Platforms join rel in db.Rel_User_Movie_Platform on platform.Id equals rel.IdPlatform where rel.Id_Rel_User_Movie == movie.Id_Rel_User_Movie select new Platform { Id = platform.Id, Name = platform.Platform }).ToList(); LibraryMovie libraryMovie = new LibraryMovie(movie.Id, movie.Title, movie.ImagePath, platforms); libraryMovies.Add(libraryMovie); } return(new { idUser = idUser, Movies = libraryMovies }); }
public HttpResponseMessage PostMovie(int idUser, LibraryMovie libraryMovie) { List <Movies> existing_movie = db.Movies.Where(o => o.Id.Equals(libraryMovie.Id)).ToList(); if (existing_movie.Count <= 0) { Movies new_movie = new Movies(); new_movie.Id = libraryMovie.Id; new_movie.ImagePath = libraryMovie.ImagePath; new_movie.Title = libraryMovie.Title; db.Movies.Add(new_movie); db.SaveChanges(); } Rel_User_Movie new_rel_User_Movie = new Rel_User_Movie(); new_rel_User_Movie.IdMovie = libraryMovie.Id; new_rel_User_Movie.IdUser = idUser; db.Rel_User_Movie.Add(new_rel_User_Movie); db.SaveChanges(); var existing_rel = from rels in db.Rel_User_Movie where rels.IdMovie == libraryMovie.Id && rels.IdUser == idUser select new { rels.Id }; foreach (Platform platform in libraryMovie.platforms) { Rel_User_Movie_Platform new_rel_user_Movie_Platform = new Rel_User_Movie_Platform(); new_rel_user_Movie_Platform.IdPlatform = platform.Id; new_rel_user_Movie_Platform.Id_Rel_User_Movie = existing_rel.First().Id; db.Rel_User_Movie_Platform.Add(new_rel_user_Movie_Platform); } db.SaveChanges(); return(new HttpResponseMessage(System.Net.HttpStatusCode.OK)); }
// Precondition: None // Postcondition: The LibraryBook class has been tested public static void Main(string[] args) { LibraryMovie movie1 = new LibraryMovie("the movie", "B", 1999, "a1234", 10, 120, "MR.T", LibraryMediaItem.MediaType.DVD, LibraryMovie.MPAARatings.PG13); LibraryMovie movie2 = new LibraryMovie("the film", "H", 2007, "ghghg1", 14, 100, "MR.A", LibraryMediaItem.MediaType.BLURAY, LibraryMovie.MPAARatings.R); LibraryJournal journal1 = new LibraryJournal("Scifi", "SCE", 2019, "f12367", 15, 201, 3, "chemistry", "uofl"); LibraryMusic music1 = new LibraryMusic("the music", "musicpub", 1976, "z120", 12, 120, LibraryMediaItem.MediaType.CD, "the who", 12); LibraryMagazine mag1 = new LibraryMagazine("The Mag", "MagPub", 1989, "12ACD", 30, 2, 15); LibraryBook book1 = new LibraryBook("The Wright Guide to C#", "Andrew Wright", "UofL Press", 2010, "ZZ25 3G", 10); // 1st test book LibraryBook book2 = new LibraryBook("Harriet Pooter", "IP Thief", "Stealer Books", 2000, "AG773 ZF", 10); // 2nd test book LibraryBook book3 = new LibraryBook("The Color Mauve", "Mary Smith", "Beautiful Books Ltd.", 1985, "JJ438 4T", 10); // 3rd test book LibraryBook book4 = new LibraryBook("The Guan Guide to SQL", "Jeff Guan", "UofL Press", 2016, "ZZ24 4F", 10); // 4th test book LibraryBook book5 = new LibraryBook(" The Big Book of Doughnuts ", " Homer Simpson ", " Doh Books ", 2001, " AE842 7A ", 10); // 5th test book - Trims? LibraryPatron patron1 = new LibraryPatron("Ima Reader", "123456"); // 1st test patron LibraryPatron patron2 = new LibraryPatron("Jane Doe", "112233"); // 2nd test patron LibraryPatron patron3 = new LibraryPatron(" John Smith ", " 654321 "); // 3rd test patron - Trims? List <LibraryBook> theBooks = new List <LibraryBook> { book1, book2, book3, book4, book5 }; // Test list of books //Library Movie test WriteLine("Testing the LibraryMovie class"); WriteLine("--------------------------------"); WriteLine(movie1); WriteLine($"Late Fee: {movie1.CalcLateFee(15):C}"); WriteLine($"Late Fee: {movie1.CalcLateFee(45):C}\n"); WriteLine("_____________________________________"); WriteLine(movie2); WriteLine($"Late Fee: {movie2.CalcLateFee(15):C}"); WriteLine($"Late Fee: {movie2.CalcLateFee(45):C}"); Pause(); //Library Journal test WriteLine("Testing the LibraryJournal class"); WriteLine("--------------------------------"); WriteLine(journal1); WriteLine($"Late Fee: {journal1.CalcLateFee(15):C}"); WriteLine($"Late Fee: {journal1.CalcLateFee(45):C}"); Pause(); //Library Music test WriteLine("Testing the LibraryMusic class"); WriteLine("--------------------------------"); WriteLine(music1); WriteLine($"Late Fee: {music1.CalcLateFee(15):C}"); WriteLine($"Late Fee: {music1.CalcLateFee(45):C}"); Pause(); //Library Magazine test WriteLine("Testing the LibraryMagazine class"); WriteLine("--------------------------------"); WriteLine(mag1); WriteLine($"Late Fee: {mag1.CalcLateFee(15):C}"); WriteLine($"Late Fee: {mag1.CalcLateFee(45):C}"); Pause(); WriteLine("Original list of books"); WriteLine("----------------------"); PrintBooks(theBooks); Pause(); // Make changes book1.CheckOut(patron1); book2.Publisher = "Borrowed Books"; try { book2.CheckOut(null); // Attempt invalid patron } catch (ArgumentNullException ex) { WriteLine("Caught invalid patron sent to CheckOut"); WriteLine(ex.Message); } book3.CheckOut(patron2); book4.CallNumber = " AB123 4A "; book5.CheckOut(patron3); try { book5.CopyrightYear = -1234; // Attempt invalid year } catch (ArgumentOutOfRangeException ex) { WriteLine("Caught invalid CopyrightYear set:"); WriteLine(ex.Message); WriteLine("Resetting to default year"); book5.CopyrightYear = book5.DEFAULT_YEAR; } WriteLine("After changes"); WriteLine("-------------"); PrintBooks(theBooks); Pause(); // Return the books book1.ReturnToShelf(); book3.ReturnToShelf(); book5.ReturnToShelf(); WriteLine("After returning the books"); WriteLine("-------------------------"); PrintBooks(theBooks); }
static void Main(string[] args) { LibraryItem book1 = new LibraryBook("The Wright Guide to C#", "Andrew Wright", "UofL Press", 2010, 0, "ZZ25 3G"); // 1st test book LibraryItem movie1 = new LibraryMovie("Harriet Pooter", "Stealer Books", 2000, 0, "AG773 ZF", 189.00, "Michael Bay", LibraryMovie.MediaType.BLURAY, LibraryMovie.MPAARatings.R); // 1st movie test LibraryItem cd1 = new LibraryMusic("The Color Mauve", "Beautiful Books Ltd.", 1985, 0, "JJ438 4T", 79, "Adele", LibraryMediaItem.MediaType.CD, 17); // CD test LibraryItem magazine1 = new LibraryMagazine("The Guan Guide to SQL", "UofL Press", 2016, 0, "ZZ24 4F", 1, 4); // Magazine test LibraryItem book5 = new LibraryBook(" The Big Book of Doughnuts ", " Homer Simpson ", " Doh Books ", 2001, 0, " AE842 7A "); // 5th test book - Trims? LibraryItem cSharpQterly = new LibraryJournal("C# Quarterly", "C Sharp Press", 2014, 0, "QRT2014", 4, 20, "Computer Science", "Dr. Wright"); //Journal Test LibraryItem book2 = new LibraryBook("Extreme Ownership", "Jocko Willink and LiefBabin", "St. Matrin's Press", 2015, 0, "978-1-250"); //Test Book 2 LibraryItem movie2 = new LibraryMovie("The Usual Suspects", "Mirmax", 1995, 0, "555897989", 106.00, "Bryan Singer", LibraryMovie.MediaType.VHS, LibraryMovie.MPAARatings.R); //Test Movie #2 LibraryItem cd2 = new LibraryMusic("2001", "Interscope", 2001, 0, "8988787984", 86, "Dr. Dre", LibraryMusic.MediaType.CD, 15); //Test CD 2 LibraryItem magazine2 = new LibraryMagazine("Time", "Andy Rooney", 1978, 0, "254547", 42, 23); //test magazine 2 LibraryItem jounral2 = new LibraryJournal("Planet Earth", "The Discrovery Channel", 2009, 0, "5654123557", 8, 24, "Nature", "Second"); //Test Journal #2 LibraryMagazine magazine3 = new LibraryMagazine("Time", "Andy Rooney", 1978, 0, "7897845", 2, 32); //Same magazine different edition and volume LibraryPatron patron1 = new LibraryPatron("Ima Reader", "123456"); // 1st test patron LibraryPatron patron2 = new LibraryPatron("Jane Doe", "112233"); // 2nd test patron LibraryPatron patron3 = new LibraryPatron(" John Smith ", " 654321 "); // 3rd test patron - Trims? LibraryPatron patron4 = new LibraryPatron("Tiger Woods", "6922251"); //4th test patron LibraryPatron patron5 = new LibraryPatron("John Daly", "251448"); //5th test patron List <LibraryItem> theItems = new List <LibraryItem> { book1, movie1, cd1, magazine1, book5, cSharpQterly, book2, movie2, cd2, magazine2, jounral2, magazine3 }; // Test list of items WriteLine("Original list of books"); WriteLine("----------------------"); PrintBooks(theItems); Pause(); // Check out books book1.CheckOut(patron1); cSharpQterly.CheckOut(patron3); book2.CheckOut(patron4); cd2.CheckOut(patron4); cd1.CheckOut(patron5); book5.CheckOut(patron2); movie1.CheckOut(patron5); var checkedOut = from i in theItems where i.Patron != null select i; foreach (var i in checkedOut) { WriteLine($"Currenlty Checked out books: \n"); WriteLine($"{i} \n"); WriteLine($"Total Checked out: {checkedOut.Count()}"); } var media = from thing in checkedOut where thing.Medium select thing; foreach (var thing in media) { WriteLine($"") } var oneAndOnly = from one in theItems where one // try //{ // movie1.CheckOut(null); // Attempt invalid patron // } //catch (ArgumentNullException ex) //{ // WriteLine("Caught invalid patron sent to CheckOut"); //WriteLine(ex.Message); //} //WriteLine("Recent Check outs: "); //WriteLine("-------------"); //PrintBooks(theBooks); //Pause(); // Return the books //book1.ReturnToShelf(); //cd1.ReturnToShelf(); //book5.ReturnToShelf(); //cSharpQterly.ReturnToShelf(); // WriteLine("After returning the books"); // WriteLine("-------------------------"); // PrintBooks(theBooks); }
static void Main(string[] args) { LibraryBook book1 = new LibraryBook("The Wright Guide to C#", "Andrew Wright", "UofL Press", 2010, "ZZ25 3G", 30); // 1st test book LibraryBook book2 = new LibraryBook("Harriet Pooter", "IP Thief", "Stealer Books", 2000, "AG773 ZF", 30); // 2nd test book LibraryBook book3 = new LibraryBook("The Color Mauve", "Mary Smith", "Beautiful Books Ltd.", 1985, "JJ438 4T", 30); // 3rd test book LibraryBook book4 = new LibraryBook("The Guan Guide to SQL", "Jeff Guan", "UofL Press", 2017, "ZZ24 4F", 30); // 4th test book LibraryBook book5 = new LibraryBook(" The Big Book of Doughnuts ", " Homer Simpson ", " Doh Books ", 2001, " AE842 7A ", 30); // 5th test book - Trims? LibraryMovie movie1 = new LibraryMovie("Avengers", "Me", 2008, "SFG13", 30, 30, "Me", LibraryMediaItem.MediaType.CD, LibraryMovie.MPAARatings.PG13); LibraryPatron patron1 = new LibraryPatron("Ima Reader", "123456"); // 1st test patron LibraryPatron patron2 = new LibraryPatron("Jane Doe", "112233"); // 2nd test patron LibraryPatron patron3 = new LibraryPatron(" John Smith ", " 654321 "); // 3rd test patron - Trims? List <LibraryBook> theBooks = new List <LibraryBook>(); // Test list of books List <LibraryMovie> theMovies = new List <LibraryMovie>(); // Test list of Movies // Add movies to the list theMovies.Add(movie1); // Add books to the list theBooks.Add(book1); theBooks.Add(book2); theBooks.Add(book3); theBooks.Add(book4); theBooks.Add(book5); Console.WriteLine("Original list of books"); PrintBooks(theBooks); // prints all books PrintMovies(theMovies); // prints movies // Make changes book1.CheckOut(patron1); book2.Publisher = "Borrowed Books"; book3.CheckOut(patron2); book4.CallNumber = "AB123 4A"; book5.CheckOut(patron3); Console.WriteLine("After changes"); PrintBooks(theBooks); // Return all the books for (int i = 0; i < theBooks.Count; ++i) { theBooks[i].ReturnToShelf(); } Console.WriteLine("After returning the books"); PrintBooks(theBooks); }
// Precondition: None // Postcondition: The LibraryItem hierarchy is sorted using the IComparable and IComparer classes public static void Main(string[] args) { List <LibraryItem> libraryItemList = new List <LibraryItem>(); //List of Library Items //Two test objects for each of the 5 concrete classes LibraryBook book1 = new LibraryBook(" Celia, A Slave ", "Avon", 1999, 7, "11111111", "Melton A. McLaurin");//Title is surrounded by white space to test trim LibraryBook book2 = new LibraryBook("Visual C#: How to Program 6th Edition", "Pearson", 2017, 10, "99999999", "Deitel"); LibraryJournal journal1 = new LibraryJournal("Fake Science Monthly", "Nick", 2002, 5, "22222222", 89, 3, "Sea Bears and Fairy Tales", "Patrick Star"); LibraryJournal journal2 = new LibraryJournal("Real Science Monthly", "NASA", 2016, 14, "88888888", 25, 4, "Climatology", "Bill Nye"); LibraryMagazine magazine1 = new LibraryMagazine("Sports Illustrated", "Time", 2016, 7, "33333333", 49, 10); LibraryMagazine magazine2 = new LibraryMagazine("Sports Illustrated", "Time", 2017, 10, "77777777", 50, 11); LibraryMovie movie1 = new LibraryMovie("Friday", "NLC", 1995, 7, "44444444", 91.0, "F. Gary Gray", LibraryMediaItem.MediaType.DVD, LibraryMovie.MPAARatings.R); LibraryMovie movie2 = new LibraryMovie("Captain America: Civil War", "Marvel", 2016, 14, "66666666", 147.0, "Anthony Russo", LibraryMediaItem.MediaType.BLURAY, LibraryMovie.MPAARatings.PG13); LibraryMusic music1 = new LibraryMusic("Album", "Studio", 2015, 2, "55555555", 27.0, "Singer", LibraryMediaItem.MediaType.SACD, 7); LibraryMusic music2 = new LibraryMusic("Record", "Older Studio", 1987, 5, "00000000", 18.0, "Older Singer", LibraryMediaItem.MediaType.VINYL, 4); //Adds each of the objects above to the List libraryItemList.Add(book1); libraryItemList.Add(book2); libraryItemList.Add(journal1); libraryItemList.Add(journal2); libraryItemList.Add(magazine1); libraryItemList.Add(magazine2); libraryItemList.Add(movie1); libraryItemList.Add(movie2); libraryItemList.Add(music1); libraryItemList.Add(music2); Console.Out.WriteLine("Original List of Library Items:"); Console.WriteLine(); foreach (LibraryItem item in libraryItemList) //Writes all items to the console { Console.WriteLine(item); Console.WriteLine(); } Pause(); libraryItemList.Sort(); //Sorts the list in ascending natural order Console.WriteLine("Sorted List in ascending natural order): "); Console.WriteLine(); foreach (LibraryItem item in libraryItemList) //Writes all items to the console { Console.WriteLine(item); Console.WriteLine(); } Pause(); libraryItemList.Sort(new DescendingItemOrder()); //Sorts using IComparer class DescendingItemOrder Console.WriteLine("Sorted List in descending natural order using IComparer: "); Console.WriteLine(); foreach (LibraryItem item in libraryItemList) //Writes all the items to the console { Console.WriteLine(item); Console.WriteLine(); } Pause(); }