A fictional company named BookSeek was used for this program, which is composed of three portals: (1) POS, (2) Inventory, and (3) Audits. The first portal is where purchases actually occurs. The inventory portal handles the stock management while the last portal consists of sales history, and ledger.
- POS
- Punch a book into a transaction.
- Void an item either through the list of all books, or list of punched items.
- Checks out of stock books.
- Checks insufficient quantity.
- Checks if cash is insufficient.
- Void an entire transaction.
- On payment, checks if list of punched items is empty.
- Prints receipts upon successful purchase.
- Inventory
- Add a book.
- Edit a book.
- Delete a book.
- Restore a deleted book.
- Change stock quantity of a book.
- Checks ISBN upon add and edit.
- Lists active books.
- Lists deactivated books.
- Adds a record to the ledger upon adding a book, editing a book's quantity, or deactivating a product.
- Audits
- Today's sales, and earnings figures along with the all time best seller.
- Lists all sales.
- Provision to re-print receipts.
- Provision to return an item following the 7-day policy.
- Cash Back
- Exchange Items
- Out of stock books are not shown as an option.
- Checks insufficient quantity.
- If the new item(s) to be exchanged costs less than the original purchase, the difference will be refunded.
- If the new items costs more, customer is charged for the difference in price.
- Checks if cash is insufficient.
- General
- If only 1 item was bought, it is automatically loaded to be returned.
- Number of items returned could never be greater than what was bought.
- Automatically loads item if quantity was changed.
- Will not proceed with returning books if no item was checked.
- Updates lists of sales according to: (1) partial or full refund, or (2) cash back or exchange of items.
- Provision for inventory restock.
- If invetory was not restocked after return, a record is added to the ledger.
- General
- Search for a product, transaction, ledger entry, etc.
- Validations for numeric inputs i.e., accounts non-numeric inputs or negative numbers.
- Checks invalid formats of string inputs.
- Checks for incomplete inputs on forms.
- Validation for date and time fields.
- Visual Studio 2019
- .NET Framework v4.7.2. or higher
- Entity Framework v6.0.0.0 or higher
- Microsoft SQL Server 2019
- Clone the repository.
git clone https://github.com/theresa-de-ocampo/book-seek.git
- Execute the commands in
setup.sql
through MS SQL Server. - In
BookSeek/app.config
, replace all occurrences oflg-pc
with your server name; which is by default your computer name. - Build and run the program.