This group project is a web application that provides an online platform for selling and purchasing books. This application allows the Bookstore Owner to upload and edit Book information, including ISBN, picture, description, author, publisher, and inventory. The users can search for, browse through, and sort/filter the books based on the above information. The users can also purchase books by adding them to the Shopping Cart and proceeding to Checkout.
- Alex Cameron
- Josh King
- Ben Munro
- Thomas Dunnigan
- Clone the SYSC4806_Project5-main project from Github
- Run maven install. A .jar file will be created in the project "./SYSC4806_Project5/target/..." directory.
- Run the following command in command line/terminal:
java -jar path/to/your/jarfile/SYSC4806_Project5/target/AmazinBookStore-0.0.1-SNAPSHOT.jar fully.qualified.package.Application
Todo | In Progress | Done |
---|---|---|
Issue #11 | ||
Issue #2 | ||
Issue #1 | ||
Issue #16 | ||
Issue #14 | ||
Issue #10 | ||
Issue #7 | ||
Issue #21 | ||
Issue #27 | ||
Issue #3 | ||
Issue #4 | ||
Issue #19 | ||
Issue #5 | ||
Issue #26 | ||
Issue #26 | ||
Issue #32 | ||
Issue #29 | ||
Issue #34 | ||
Issue #33 | ||
Issue #29 | ||
Issue #36 | ||
Issue #44 | ||
Issue #42 | ||
Issue #43 | ||
Issue #13 | ||
Issue #74 | ||
Issue #55 | ||
Issue #58 | ||
Issue #60 | ||
Issue #69 | ||
Issue #5 | ||
Issue #12 | ||
Issue #76 | ||
Issue #84 | ||
Issue #85 | ||
Issue #89 | ||
Issue #100 |
- Users can view the main Bookstore user interface
- Book component implementation includes retrieving a list of all books or a single book, creating a new book, deleting a book and updating information about an existing book.
- Author component implementation includes retrieving a list of all authors or a single author, creating a new author, deleting an author or updating information about an existing author.
- Publisher component implementation includes retrieving a list of all publishers or a single publisher, creating a new publisher or deleting an publisher or updating information about an existing publisher.
- BookStore component implementation includes creating a new bookstore, retrieving information about a bookstore, creating and retrieving many or one listings and adding, updating or removing listings from a bookstore.
- User authentication and login will be configured.
- Users can search, browse, sort/filter based on Book information (ISBN, name, description, author, publisher).
- User can select and add or remove books from a shopping cart and proceed to checkout/purchase the book if inventory is not exceeded.
- User can view book recommendations based on user past purchase history and similar purchases from other users.
- Persistent database configuration.
- Users can register and login to application.
- Users are authenticated during login process.
- System can create bookstores, listings, books, authors, publishers, genres, and shopping carts.
- User can browse a collecton of books and view the book description.
- User can add a listing to their shopping cart. User can remove items, clear cart or checkout cart.
- User book recommendaton feature implemented using jaccard similarity calculations.
- Shopping Cart logic to grey out/prohibit quantity counter buttons when total listings reached.
- Once a user purchases a book, the associated listing quantity needs to be decreased.
- Shopping cart logic to display appropriate banner message if shopping cart is empty.
- Additonal authenticaton/authorization on endpoints.
- Persistent database configuration.
- User book, bookstore, listing configuration user interface
- View interface for search
- Logic to add bought books to purchase history
- Shopping Cart feature expanded to allow for user to enter shipping and payment information.
- Shopping cart additional error message handling & listing quantities adjusted based on # of books purchased in checkout.
- Listing card component reflects if 0 copies of a book are available by indicating Out of Stock.
- Ability to create a bookstore and book in the application interface.
- Feature to search for books by filtering by bookstore, book, genre, author or publisher.
Java Version: Java 17