tp

easyLog User Guide

By: Ong Wei Sheng, Zhu Zikun, Qiu Yi Wen, Li Kexuan, Jiang Qixiong

Last Updated: 12 April 2021

Are you a home-based business owner tired of using a pen and paper to keep track of your inventory? Do you have limited budget to invest in a new system to manage your business? Fret not, easyLog, our cross-platform1 logistics management application will get you covered! It is the application to boost your productivity when it comes to managing your items and orders and best of all, it is free! Primarily, the current version of easyLog allows you to add new items and orders before updating, viewing and finding existing items and orders easily. easyLog also allows you to remove a specific item and order and clear all existing items and orders in the inventory at ease. You can also generate receipts for your customers and find out your best-selling product(s)2.

easyLog is highly optimized for home-based business owners like you via a carefully designed Command Line Interface (CLI); this means that you will run the application by typing commands into a command terminal3 . If you type fast, easyLog can get logistics management tasks done more efficiently than traditional Graphical User Interface (GUI) applications; GUI applications allow users to interact with the applications through visuals such as buttons, at the expense of lower precision and slower speed as compared to CLI.

If this sounds great to you, we encourage you to visit Quick start to start learning how to manage your inventory using easyLog. This guide also gives you a step-by-step instruction to use various features easyLog has to offer and we have prepared Frequently Asked Questions (FAQ) and a concise table of Command Summary for you. We invite you to explore easyLog.

  1. easyLog currently supports Windows, macOS and Linux machines which have Java 11 installed.
  2. The best-selling item refers to the item which has the most number of sales. That is, the item is added to orders for the most number of times. There can be multiple items which are the most popular. This happens when more than one item have the most number of sales.
  3. Depending on which operating system you are using, how to open the command terminal application to operate easyLog differs. Please refer to Quick start for more information.

Table of Contents


1. Quick start

Setting up easyLog is made really easy. It does not even require an installation and a few simple steps listed below will be good to go.

  1. Ensure your device has Java 11 installed.

To check if you have Java 11 installed, simply type java --version in the command terminal of your operating system.
For Windows users, you can type cmd in the Windows search box before pressing Enter to open the Command Prompt.
For macOS users, you can press Command and Space to launch Spotlight and type Terminal before pressing Enter.
For Ubuntu users, you can press Ctrl + Alt + T to open a terminal window.

  1. Download the latest easyLog.jar from here.
  2. Put the downloaded jar file in an empty folder in which easyLog is allowed to create files (i.e., do not use a write-protected folder).
  3. In the same command terminal, run the command java -jar easyLog.jar.
  4. The app should load and the welcome page is as shown below:

Initiation

  1. Type a command and press enter to continue using the app.
  2. Refer to the Features below for details of each command.

Return to Table of Contents


2. Features

Section 2 will explain the features available in easyLog.

Notes about the command format:

2.1 Viewing help: help

As a first-time user or whenever you forget some commands or just need to check a particular command format, the help feature will show all available commands of easyLog for you. At the same time, you can see the brief description of those commands.

Steps to check all available commands:

  1. Input help command.
  2. Press Enter.
  3. All available commands will then be shown.

Note:

πŸ“„ Anything typed after help will be ignored and the help command will execute as per normal. e.g., help asdas

Expected Output: help

Return to Table of Contents

2.2 Items

Section 2.2 will explain the features related to items.

As a first-time user, or whenever you forget some of items-related commands or just need to check a particular command format, the items feature will show all available commands related to items. At the same time, you can see the brief description of those commands. Also typing any invalid items-related commands would also show you all the available items-related commands.

Steps to check all items-related commands:

  1. Input items command.
  2. Press Enter.
  3. All available commands related to items will then be shown.

Expected Output: items related

Return to Table of Contents

2.2.2. Add an item: items add

When you are sometimes overwhelmed by handling a large variety of items, the items add feature allows you to record the details of those items one by one into the easyLog application.

Steps to add an item in easyLog:

  1. Input items add <item_name> command.
  2. You will be prompted to key in the item (unit) price and the item stock.
  3. Input in this format <item_price> <item_stock> for the price and stock to be added to the items details.
  4. Press enter.
  5. You can see the confirmation message when the item is recorded successfully.

Note:

πŸ“„ There should be exactly 1 empty space between and .
πŸ“„ Valid item names cannot be empty or consist of purely white space(s).
πŸ“„ Valid item names cannot exceed 30 characters, including spaces. The name of an item starts after the first empty space after "add" in `items add`.
πŸ“„ If an item name is already found in the item list, adding new items with the same name will still be successful but take note that they will be tracked differently.
πŸ“„ A valid item price must be a number ranging from 0 (free item) to 1,000,000,000 (inclusive).
πŸ“„ Item price recorded has exactly 2 decimal places and will be rounded if applicable (e.g., 4.595 will be rounded to 4.60 and 68.58432 will be rounded to 68.58).
πŸ“„ If an invalid item price is entered, easyLog will not check the validity of item stock and will only notify the user that item price entered is wrong (e.g., empty item price, invalid item price).
πŸ“„ Item stock has to be a positive integer ranging from 1 to 1,000,000,000 (inclusive).
πŸ“„ When in doubt, do follow the prompts shown on the command terminal.

Expected Output: items add

Return to Table of Contents

2.2.3. Show the item list: items list

Whenever you would like to check all items and their prices and stocks in your inventory, the items list feature allows you to achieve it by quickly and accurately displaying the item list.

Steps to check the item list:

  1. Input items list command.
  2. Press enter.
  3. Item list will be shown, including the item index, name, price as well as stock.

Note:

πŸ“„ If there are no items in the system, a message will be shown to notify you to add at least one item first.
πŸ“„ Anything typed after items list will be ignored, and the command will execute as per normal e.g., items list asdsdad.

Expected Output: items list

Return to Table of Contents

2.2.4. Delete an item: items delete

When you want to delete an item in the system, the items delete feature allows you to achieve this easily.

Steps to delete an item in easyLog

  1. (Optional) Input items list command to check the item index to be deleted.
  2. Input items delete <space> <item_index> for the item to be removed from the item list.
  3. Press enter.
  4. You can see the confirmation message when the item is removed successfully.

Note:

πŸ“„ If there is no item in the system, a message will be shown to notify you to add items first.
πŸ“„ If you remember the item’s index, you can skip step 1.
πŸ“„ The item_index should only be in Arabic numerals.
πŸ“„ The item_index should not be more than the total number of items in the item list.

Expected Output: items delete

Return to Table of Contents

2.2.5. Empty the item list: items clear

If you would like to clear all existing items in your inventory, you can use the items clear feature to do that easily.

Steps to update an item:

  1. Input items clear command.
  2. Press enter.
  3. You can see a confirmation message when the item inventory is emptied successfully.

Note:

πŸ“„ If there is no single item in the item list, you will be notified that you should not use items clear command.

Expected Output: items clear

Return to Table of Contents

2.2.6. Update an item: items update

When you want to update either the price or stock of an item in the system, the items update feature allows you to achieve this easily.

Steps to update an item:

  1. Input items update command.
  2. If the item list is not empty, easyLog will show the complete item list to you and you will be prompted to key in the item index to indicate which item you would like to update; if the item list is empty, easyLog will show a message to remind you to add at least one item to the inventory first.
  3. After inputting a valid item index, you will be prompted to key in either p or s to let the system know you would like to update the item price or stock respectively.
  4. If p is entered in step 3, you need to enter the revised item price; if s is entered in step 3, you need to enter the revised item stock.
  5. Press enter.
  6. You can see a confirmation message when the item price/stock has been updated successfully.

Note:

πŸ“„ Item fields (i.e., p and s) must be lower-case.
πŸ“„ Item price must be a number ranging from 0 (free item) to 1,000,000,000 (inclusive).
πŸ“„ Item stock has to be a positive integer ranging from 1 to 1,000,000,000 (inclusive).
πŸ“„ You are allowed to update an item with its current price or current stock. It is interpreted as you no longer want to update any fields of the item.
πŸ“„ If you wish to update an item stock as 0, please use items delete command instead.
πŸ“„ When in doubt, do follow the prompts shown on the command terminal.

Expected Output: items update

Return to Table of Contents

2.2.7. Find items: items find

Whenever you would like to find relevant items and their prices and stocks in your inventory, the items find feature allows you to achieve it by quickly and accurately displaying the relevant item from the item list.

Steps to find an item:

  1. Input items find <space> <item_name> to obtain items related to the item name.
  2. Press enter.
  3. All items related to the item name will be shown.

Note:

πŸ“„ The input is case-sensitive, please be mindful of the exact wording.

Expected Output: items find

Return to Table of Contents

If you would like to gain some useful insights from the order history since you start using easyLog, the items stats feature will let you know the most popular item(s) ordered by customers. You will also be reminded to stock up.

Steps to obtain the most popular item(s) in the items list:

  1. Input items stats command.
  2. Press enter.
  3. The most popular item(s) will be shown.

Note:

πŸ“„ There can be multiple items which are the most popular. This happens when more than one item have the most number of sales.
πŸ“„ If the item no longer exists in the item list, the number of sales of that item is lost.
πŸ“„ The hard limit for items sales is 2147483647.

Expected Output: items stats

Return to Table of Contents

2.3. Orders

Section 2.3 will explain the features related to orders.

As a first-time user, or whenever you forget some of orders-related commands or just need to check a particular command format, orders feature will show all available commands related to orders. At the same time, you can see the brief description of those commands. Also typing any invalid orders-related commands would also show you all the available orders-related commands.

Steps to check all orders-related commands:

  1. Input orders command.
  2. Press Enter.
  3. All available commands related to orders will then be shown.

Expected Output: orders related

Return to Table of Contents

2.3.2. Add an order: orders add

When receiving an order from your customer, orders add feature allows you to input the details of the order from your customer into the easyLog app and allows you to manage your orders. (Further features to manage orders will be explained in future sections.)

Steps to add an order in easyLog:

  1. Input orders add <customer_name> command
  2. You will be prompted to key in the item number and quantity to be added to the order.
  3. Input in this format<item_number> <space> <item_quantity> for items to be added to the order.
  4. Repeat step 3 if there are more items to be added into the order.
  5. Input stop to stop adding items to the order.
  6. Order details will then be added into the system.

Note:

πŸ“„ Order has to contain at least 1 item to be added into the system.
πŸ“„ The customer name cannot exceed 30 characters including spaces.
πŸ“„ Item quantity to be inputted into the order cannot be less than 1 or more than the current stock in the inventory.
πŸ“„ Item quantity for each item inputted into the order would be removed from the inventory stock of that item and tracked separately. The quantity would only be returned and added back to the inventory count for that item if the order is not done and deleted.
πŸ“„ When adding the same item twice into the order, it will not combine the total stock of that item added but instead show as 2 separate additions of the same item.
πŸ“„ While adding items into the order, if the app encounters any format error in the input, it may cause order details to be added wrongly. Do use orders delete feature to delete the order and re-input the order details in the correct format.
πŸ“„ When in doubt, do follow the prompts shown on the command terminal.

Expected Output: orders add

Return to Table of Contents

2.3.3. Show the order list: orders list

You can use this command to track all the orders recorded in the system.

Steps to open your order list:

  1. Input orders list command.
  2. Press enter.
  3. Order list will be shown, including the order index, order name, items in the order and total price of the order.

Note:

πŸ“„ If there is no order in the system, a message will be shown to notify you to add at least one order first.
πŸ“„ Anything typed after orders list will be ignored and the command will execute as per normal e.g., order list asdasdadasd.

Expected Output: orders list

Return to Table of Contents

2.3.4. Remove an order: orders delete

When your customer would like to cancel his or her order, the orders delete feature allows you to achieve it.

Steps to remove an order from the order list:

  1. (Optional) Input orders list command to check the customer’s order index to be deleted.
  2. Input orders delete <space> <order_index> for the order to be removed from the order list.
  3. Press enter.
  4. You can see the confirmation message when the order is removed successfully.

Note:

πŸ“„ If there is no order in the system, a message will be shown to notify you to add at least one order first.
πŸ“„ If you remember the customer’s order index, you can skip step 1.
πŸ“„ Unless the item has been deleted from the item list, every item under the deleted order will be added back to the inventory.
πŸ“„ If an out-of-range order index is entered, easyLog will not check if the order index is an integer. For instance, if there are only 2 orders placed by customers, inputting orders delete 2.6 will cause easyLog show that it is an out-of-range error.
πŸ“„ Orders delete can make item stock temporarily go more than 1,000,000,000. If it happens, please move them out of the inventory due to limited space available.

Expected Output: orders delete

Return to Table of Contents

2.3.5. Empty the order list: orders clear

In the very unlikely event that all orders are cancelled, instead of deleting them one by one, you can use the orders clear feature to do it efficiently.

Steps to clear the order list:

  1. Input orders clear command.
  2. Press enter.
  3. You can see the confirmation message that there is no single order now.

Note:

πŸ“„ If there is no single order in the system, a message will be shown to notify you that you should not use orders clear feature.
πŸ“„ Items which belong to the orders cleared will be added back to the inventory. It is the same as executing orders delete feature for every order in the order list.
πŸ“„ orders clear can make item stock temporarily go more than 1,000,000,000. If it happens, please move them out of the inventory due to potentially limited space available.

Expected Output: orders clear

Return to Table of Contents

2.3.6. Find orders: orders find

You can use this command to search for any order in the system quickly without looking through the order list one bye one.

Steps to find an order:

  1. Input orders find <space> <order_name> to obtain orders related to the order name.
  2. Press enter.
  3. All orders related to the order name will be shown.

Note:

πŸ“„ The input is case-sensitive, please be mindful of the exact wording.

Expected Output: orders find

Return to Table of Contents

2.3.7. Get the total price of an order: orders price

You can use this command to check the total price of a specific order.

Steps to obtain the price of an order:

  1. Input orders price <space> <order_index> to obtain the price for a specific order.
  2. Press enter.
  3. Total price of an order will be shown.

Note:

πŸ“„ If the order index keyed in is not an integer or an integer that does not exist in the order list, an error message will be shown to the user.

Expected Output: orders price

Return to Table of Contents

2.3.8. Update the status of an order: orders done

You can use this command to change the status of an order once it is completed.

Steps to change the status of an order:

  1. (Optional) Input orders list command to check the order index.
  2. Input orders done <space> <order_index> to change the status of a specific order.
  3. Press enter.
  4. You can see the confirmation message when the order status is changed correctly. ` Note:

    πŸ“„ If the order index keyed in is not an integer or an integer that is not exist in the order list, an error message will be shown to the user.
    πŸ“„ Once an order is completed, it will be deleted automatically from the system and a receipt will be generated.
    πŸ“„ More details on receipt generation can be seen here.

Expected Output: Orders done

Return to Table of Contents

2.4. Storage

Section 2.4 will explain storage related features.

2.4.1. Load, create and save data

While initializing easyLog, it automatically looks for an available save file to load so that you can continue your progress from the previous exit. If there are no save file available to load, easyLog will automatically create a save file for you and save your data and information when exiting the app. The save file will be named as easyLog.txt and will be located in the same folder/directory as the easyLog app.

The save file can be copied to another device and placed in the same folder/directory that contains the easyLog app. Do take note that only one easyLog.txt should be in the directory or there would be an error. This transfer of save file allows you to work on multiple devices if you choose to do so.

It is not recommended that you manipulate/edit the data in easyLog.txt. However, if you are an expert user and confident, do feel free to manipulate the data in easyLog.txt manually if it enhances your workflow.

Note:

πŸ“„ Item details save format are as followed below.
items <item_price> <item_stock> <item_sales> <item_name>
πŸ“„ Order details save format are as followed below.
orders <customer_name> <item_index> itemQuantity <item_quantity>
πŸ“„ Receipt counter save format are as followed below.
ReceiptCounter <receipt_count>

Return to Table of Contents

2.4.2. Generate receipts

When orders done feature is executed, a receipt will be automatically generated that contains the order details that was deleted. The generated receipts can be found in the same directory as the location of the easyLog app inside a Receipts folder. The receipts generated will be in a .txt format. This allows the list of orders while using the app to be kept clean with only the orders that are not done for easier viewing. Also, the generated receipts allows you to keep track of your revenue or to handle your taxes. Furthermore, receipts are numbered to show you how many orders you have fulfilled.

Note:

πŸ“„ The receipts generated can only be seen in the directory where you start the app from when you exit the app.

receipt

Return to Table of Contents

2.5. Exit the program: exit

Exit the app.

Note:

πŸ“„ Anything typed after exit will be ignored, and the command will execute as per normal e.g., exit adasadadas.

Format: exit

Expected Output: exit

Return to Table of Contents


3. FAQ

Q1: easyLog keeps showing a β€œbad init” error message despite the fact that I first use it.

Please check and ensure that easyLog has write permissions in the folder. Do not use a write-protected folder.

Q2: Do I lose all my data after exiting easyLog?

No, all relevant records are saved upon exit command.

Q3: I do not seem to be able to add an item. Why is this so?

There could be many possibilities which can result in you not being able to add an item. We advise you to follow the below steps when intending to add an item.

Please note that you need to specify the description of the item. For instance, you can do this by typing items add Competitive Programming 4.

After that, input the price per item (unit price) and item stock. Please note that the unit price is either zero (free item) or a positive number smaller or equal to 1,000,000,000 while item stock is a positive number smaller or equal to 1,000,000,000. For example, you can enter 20 100.

Q4: I do not seem to be able to add an order. Why is this so?

There could be many possibilities which can result in you not being able to add an order. We advise you to follow the below steps when intending to add an order.

Please note that you need to specify a customer’s name as he or she is the one whom the order of interest will be sent to. For instance, you can do this by typing orders add Alice.

After that, input the item index found in the item list (if unsure, simply type items list to check) and the quantity. For example, you could type 1 2.

Q5: I am scared that I input any command which I do not intend to execute. Is there a way to revert changes in the system?

If you input any invalid command (e.g., an unrecognized command or a clearing command for the item list when the list is already empty), it will not be executed.

In the event that you accidentally add an item or order, you can always undo it by deleting the item or order. Likewise, you can add an item or order back if you delete it mistakenly. For now, easyLog does not have a command to revert any changes. We may consider adding it in the upcoming version.

Return to Table of Contents


4. Command Summary

Command Format Example
help help help
items items items
items add items add <item_name>
Please input item price and stock.
<item_price> <item_quantity>
items add PS5
Please input item price and stock.
1 2
items list items list items list
items delete items delete <item_index> items delete 2
items clear items clear items clear
items find items find items find <item_name>
items update items update items update
items stats items stats items stats
orders orders orders
orders add orders add <customer_name>
Input the items to be added to this order.
<item_index> <item_quantity>
orders add weisheng
Input the items to be added to this order.
1 2
orders list orders list orders list
orders delete orders delete <order_index> orders delete 2
orders clear orders clear orders clear
orders find orders find orders find <order_name>
orders price orders price <order_index> orders price 2
orders done orders done <order_index> orders done 2
exit exit exit

Return to Table of Contents