https://github.com/mohamedmetwalli5/bookstore
📘 Analysis, design, and implementation of a database system to support the operations of a simplified online bookstore. And the creation of the necessary forms to perform these operations.
https://github.com/mohamedmetwalli5/bookstore
analysis database jasper-reports javafx
Last synced: about 2 months ago
JSON representation
📘 Analysis, design, and implementation of a database system to support the operations of a simplified online bookstore. And the creation of the necessary forms to perform these operations.
- Host: GitHub
- URL: https://github.com/mohamedmetwalli5/bookstore
- Owner: MohamedMetwalli5
- License: apache-2.0
- Created: 2022-01-06T19:35:17.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-04-13T18:55:26.000Z (about 2 years ago)
- Last Synced: 2025-03-29T12:11:10.614Z (3 months ago)
- Topics: analysis, database, jasper-reports, javafx
- Language: Java
- Homepage:
- Size: 699 KB
- Stars: 2
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README



# The Database Project Motivation
This is Analysis, design, and implementation of a database system to support the operations of a simplified online bookstore. And the creation of the necessary forms to perform these operations.## The Main Operations
* Adding new books
To add a new book, the user enters the properties of the new book along with a threshold (the minimum
quantity in stock to be maintained for that book).
* Modifying existing books
For updating an existing book, the user first searches for the book then he does the required update. For a given
book, the user can update the quantity in stock when a copy or more of the book is sold. The user cannot update
the quantity of a book if this update will cause the quantity of a book in stock to be negative.
* Placing orders on books
An order with constant quantity is placed only when the quantity of a book drops from above a given threshold
(the minimum quantity in stock) to below the given threshold.
* Confirming orders
The user can confirm an order when receiving the ordered quantity from the book’s publisher; the quantity of
the book in store automatically increases with the quantity specified in the order. Assume that deleting the order
means that the order is received from publisher.
* Searching for books
The user can search for a book by ISBN, and title. The user can search for books of a specific Category, author
or publisher.## Customer Allowed Operations
* Editing his personal information including his password
* Searching for books by any of the book’s attributes. (Use indices to speed up searches when possible)
* Adding books to a shopping cart
* Managing his shopping cart. This includes the following.
* Viewing the items in the cart
* Viewing the individual and total prices of the books in the cart
* Removing items from the cart
* Checking out a shopping cart
* The customer is then required to provide a credit card number and its expiry date. This transaction is completed successfully if the credit card information is appropriate.
* The book’s quantities in the store are updated according to this transaction.
* Logging out of the system
* Doing this will remove all the items in the current cart.
## Manager Allowed Operations
* Adding new books
* Modifying existing books
* Placing orders for books
* Confirming orders
* Promoting registered customers to have managers credentials
* Viewing the following reports on sales
* The total sales for books in the previous month
* The top 5 customers who purchase the most purchase amount in descending order for the last three months
* The top 10 selling books for the last three months## The ER Diagram
---
## Screenshots





## The Online Bookstore Logo
