Skip to content

Commit 461a67b

Browse files
Merge pull request nus-cs2103-AY1920S2#23 from NicholasCF/update-user-guide
Update user guide
2 parents ba576ba + 9bae0ff commit 461a67b

File tree

1 file changed

+138
-56
lines changed

1 file changed

+138
-56
lines changed

docs/UserGuide.adoc

Lines changed: 138 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -12,19 +12,19 @@ ifdef::env-github[]
1212
:tip-caption: :bulb:
1313
:note-caption: :information_source:
1414
endif::[]
15-
:repoURL: https://github.com/se-edu/addressbook-level3
15+
:repoURL: https://github.com/AY1920S2-CS2103-W14-2/main
1616

17-
By: `Team SE-EDU` Since: `Jun 2016` Licence: `MIT`
17+
By: `AY1920S2-CS2103-W14-2`      Since: `Feb 2020`      Licence: `MIT`
1818

1919
== Introduction
2020

21-
AddressBook Level 3 (AB3) is for those who *prefer to use a desktop app for managing contacts*. More importantly, AB3 is *optimized for those who prefer to work with a Command Line Interface* (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, AB3 can get your contact management tasks done faster than traditional GUI apps. Interested? Jump to the <<Quick Start>> to get started. Enjoy!
21+
InventoryManager is for those who *prefer to use a desktop app for managing their inventory*. More importantly, InventoryManager is *optimized for those who prefer to work with a Command Line Interface* (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, InventoryManager can get your inventory management tasks done faster than traditional GUI apps. Interested? Jump to the <<Quick Start>> to get started. Enjoy!
2222

2323
== Quick Start
2424

2525
. Ensure you have Java `11` or above installed in your Computer.
26-
. Download the latest `addressbook.jar` link:{repoURL}/releases[here].
27-
. Copy the file to the folder you want to use as the home folder for your Address Book.
26+
. Download the latest `inventorymanager.jar` link:{repoURL}/releases[here].
27+
. Copy the file to the folder you want to use as the home folder for your InventoryManager.
2828
. Double-click the file to start the app. The GUI should appear in a few seconds.
2929
+
3030
image::Ui.png[width="790"]
@@ -33,9 +33,9 @@ image::Ui.png[width="790"]
3333
e.g. typing *`help`* and pressing kbd:[Enter] will open the help window.
3434
. Some example commands you can try:
3535

36-
* *`list`* : lists all contacts
37-
* **`add`**`n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01` : adds a contact named `John Doe` to the Address Book.
38-
* **`delete`**`3` : deletes the 3rd contact shown in the current list
36+
* *`list-s`* : lists all suppliers
37+
* **`add`**`n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01 gp/apple 4.50` : adds a supplier named `John Doe` selling apples at 4.50 each to the InventoryManager.
38+
* **`delete-s`**`3` : deletes the 3rd supplier shown in the current list
3939
* *`exit`* : exits the app
4040

4141
. Refer to <<Features>> for details of each command.
@@ -47,56 +47,57 @@ e.g. typing *`help`* and pressing kbd:[Enter] will open the help window.
4747
*Command Format*
4848
4949
* Words in `UPPER_CASE` are the parameters to be supplied by the user e.g. in `add n/NAME`, `NAME` is a parameter which can be used as `add n/John Doe`.
50-
* Items in square brackets are optional e.g `n/NAME [t/TAG]` can be used as `n/John Doe t/friend` or as `n/John Doe`.
51-
* Items with `…`​ after them can be used multiple times including zero times e.g. `[t/TAG]...` can be used as `{nbsp}` (i.e. 0 times), `t/friend`, `t/friend t/family` etc.
50+
* Items in square brackets are optional e.g `n/NAME [gp/GOOD PRICE]` can be used as `n/John Doe gp/apple 4.50` or as `n/John Doe`.
51+
* Items with `…`​ after them can be used multiple times including zero times e.g. `[gp/GOOD PRICE]...` can be used as `{nbsp}` (i.e. 0 times), `gp/apple 4.50`, `gp/orange 2.00 gp/pear 5.00` etc.
5252
* Parameters can be in any order e.g. if the command specifies `n/NAME p/PHONE_NUMBER`, `p/PHONE_NUMBER n/NAME` is also acceptable.
53+
* All dates follow the format `yyyy-MM-dd`
5354
====
5455

5556
=== Viewing help : `help`
5657

5758
Format: `help`
5859

59-
=== Adding a person: `add`
60+
=== Adding a supplier: `add`
6061

61-
Adds a person to the address book +
62-
Format: `add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]...`
62+
Adds a supplier to the inventory manager +
63+
Format: `add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [gp/GOOD PRICE]...`
6364

6465
[TIP]
65-
A person can have any number of tags (including 0)
66+
A supplier can have any number of good-price pairs (including 0)
6667

6768
Examples:
6869

6970
* `add n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01`
70-
* `add n/Betsy Crowe t/friend e/[email protected] a/Newgate Prison p/1234567 t/criminal`
71+
* `add n/Betsy Crowe t/friend e/[email protected] a/Newgate Prison p/1234567 gp/drugs 500`
7172

72-
=== Listing all persons : `list`
73+
=== Listing all suppliers : `list-s`
7374

74-
Shows a list of all persons in the address book. +
75-
Format: `list`
75+
Shows a list of all suppliers in the inventory manager. +
76+
Format: `list-s`
7677

77-
=== Editing a person : `edit`
78+
=== Editing a supplier : `edit-s`
7879

79-
Edits an existing person in the address book. +
80-
Format: `edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [t/TAG]...`
80+
Edits an existing supplier in the inventory manager. +
81+
Format: `edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [gp/GOOD PRICE]...`
8182

8283
****
83-
* Edits the person at the specified `INDEX`. The index refers to the index number shown in the displayed person list. The index *must be a positive integer* 1, 2, 3, ...
84+
* Edits the supplier at the specified `INDEX`. The index refers to the index number shown in the displayed supplier list. The index *must be a positive integer* 1, 2, 3, ...
8485
* At least one of the optional fields must be provided.
8586
* Existing values will be updated to the input values.
86-
* When editing tags, the existing tags of the person will be removed i.e adding of tags is not cumulative.
87-
* You can remove all the person's tags by typing `t/` without specifying any tags after it.
87+
* When editing good-price pairs, the existing good-price pairs of the person will be removed i.e adding of good-price pairs is not cumulative.
88+
* You can remove all the person's good-price pairs by typing `gp/` without specifying any tags after it.
8889
****
8990

9091
Examples:
9192

92-
* `edit 1 p/91234567 e/[email protected]` +
93-
Edits the phone number and email address of the 1st person to be `91234567` and `[email protected]` respectively.
94-
* `edit 2 n/Betsy Crower t/` +
95-
Edits the name of the 2nd person to be `Betsy Crower` and clears all existing tags.
93+
* `edit-s 1 p/91234567 e/[email protected]` +
94+
Edits the phone number and email address of the 1st supplier to be `91234567` and `[email protected]` respectively.
95+
* `edit-s 2 n/Betsy Crower gp/` +
96+
Edits the name of the 2nd person to be `Betsy Crower` and clears all existing good-price pairs.
9697

97-
=== Locating persons by name: `find`
98+
=== Locating suppliers by name: `find`
9899

99-
Finds persons whose names contain any of the given keywords. +
100+
Finds suppliers whose names contain any of the given keywords. +
100101
Format: `find KEYWORD [MORE_KEYWORDS]`
101102

102103
****
@@ -112,34 +113,102 @@ Examples:
112113
* `find John` +
113114
Returns `john` and `John Doe`
114115
* `find Betsy Tim John` +
115-
Returns any person having names `Betsy`, `Tim`, or `John`
116+
Returns any supplier having names `Betsy`, `Tim`, or `John`
116117

117118
// tag::delete[]
118-
=== Deleting a person : `delete`
119+
=== Deleting a supplier : `delete-s`
119120

120-
Deletes the specified person from the address book. +
121-
Format: `delete INDEX`
121+
Deletes the specified supplier from the address book. +
122+
Format: `delete-s INDEX`
122123

123124
****
124-
* Deletes the person at the specified `INDEX`.
125-
* The index refers to the index number shown in the displayed person list.
125+
* Deletes the supplier at the specified `INDEX`.
126+
* The index refers to the index number shown in the displayed supplier list.
126127
* The index *must be a positive integer* 1, 2, 3, ...
127128
****
128129

129130
Examples:
130131

131-
* `list` +
132-
`delete 2` +
133-
Deletes the 2nd person in the address book.
132+
* `list-s` +
133+
`delete-s 2` +
134+
Deletes the 2nd supplier in the inventory manager.
134135
* `find Betsy` +
135-
`delete 1` +
136-
Deletes the 1st person in the results of the `find` command.
136+
`delete-s 1` +
137+
Deletes the 1st supplier in the results of the `find` command.
137138

138139
// end::delete[]
139-
=== Clearing all entries : `clear`
140+
=== Clearing all supplier entries : `clear-s`
140141

141-
Clears all entries from the address book. +
142-
Format: `clear`
142+
Clears all supplier entries from the address book. +
143+
Format: `clear-s`
144+
145+
=== Buying goods from supplier: `buy`
146+
147+
Buys a particular goods from the supplier. +
148+
Format: `buy n/SUPPLIER_NAME g/GOOD_NAME q/QUANTITY x/EXPIRY_DATE d/TRANSACTION_DATE`
149+
150+
[TIP]
151+
If the goods does not exist in the inventory, this will also create an entry for the goods.
152+
153+
Example:
154+
155+
* `buy n/Dave g/apple q/4 x/2003-08-01 d/2002-07-03` +
156+
Buys 4 apples from a certain supplier named Dave with the above transaction and expiry dates.
157+
158+
=== Selling goods: `sell`
159+
160+
Sells a particular goods from the inventory.. +
161+
Format: `sell g/GOOD_NAME q/QUANTITY d/TRANSACTION_DATE`
162+
163+
Example:
164+
165+
* `sell g/apple q/4 d/2030-01-05` +
166+
Sells 4 apples at the above date.
167+
168+
=== Listing all goods: `list-i`
169+
170+
Lists all goods in the inventory. +
171+
Format: `list-i`
172+
173+
=== Listing all expiring goods: `list-e`
174+
175+
Lists all expiring goods batches in the inventory. +
176+
Format: `list-e`
177+
178+
=== Listing all transaction-history: `list-t`
179+
180+
Displays all the transactions (buy and sell orders) in the past, in reverse chronological order. +
181+
Format: `list-t`
182+
183+
=== Sourcing suppliers for a particular goods: `source`
184+
185+
Displays all the suppliers selling the specified goods, sorted in increasing price. +
186+
Format: `source g/GOOD_NAME`
187+
188+
=== Listing goods in low in quantity: `list-l`
189+
190+
Displays all items that have fallen below their respective minimum quantity thresholds in the inventory. +
191+
Format: `list-l`
192+
193+
=== Clearing all transaction history: `clear-t`
194+
195+
Clears all the transaction entries from the inventory manager. +
196+
Format: `clear-t`
197+
198+
=== Editing a buy order: `edit-bo`
199+
200+
Edits an existing buy order in the transaction history. +
201+
Format: `edit-bo INDEX [n/SUPPLIER_NAME] [g/GOOD_NAME] [q/QUANTITY] [d/TRANSACTION_DATE] [x/EXPIRY_DATE]`
202+
203+
=== Editing a sell order: `edit-so`
204+
205+
Edits an existing sell order in the transaction history. +
206+
Format: `edit-so INDEX [g/GOOD_NAME][q/QUANTITY][d/TRANSACTION_DATE]`
207+
208+
=== Setting minimum quantity for goods: `set`
209+
210+
Sets the minimum quantity threshold for a certain goods. All goods with quantity below this threshold will appear in the list of goods in shortage. +
211+
Format: `set g/GOOD_NAME q/MIN_QUANTITY`
143212

144213
=== Exiting the program : `exit`
145214

@@ -148,30 +217,43 @@ Format: `exit`
148217

149218
=== Saving the data
150219

151-
Address book data are saved in the hard disk automatically after any command that changes the data. +
220+
Inventory manager data are saved in the hard disk automatically after any command that changes the data. +
152221
There is no need to save manually.
153222

154223
// tag::dataencryption[]
155224
=== Encrypting data files `[coming in v2.0]`
156225

157-
_{explain how the user can enable/disable data encryption}_
226+
For security concerns, all data will be encrypted by default.
158227
// end::dataencryption[]
159228

160229
== FAQ
161230

162231
*Q*: How do I transfer my data to another Computer? +
163-
*A*: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous Address Book folder.
232+
*A*: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous InventoryManager folder.
164233

165234
== Command Summary
166235

167-
* *Add* `add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]...` +
168-
e.g. `add n/James Ho p/22224444 e/[email protected] a/123, Clementi Rd, 1234665 t/friend t/colleague`
169-
* *Clear* : `clear`
170-
* *Delete* : `delete INDEX` +
171-
e.g. `delete 3`
172-
* *Edit* : `edit INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [t/TAG]...` +
173-
e.g. `edit 2 n/James Lee e/[email protected]`
174-
* *Find* : `find KEYWORD [MORE_KEYWORDS]` +
236+
* *Add supplier* `add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [gp/GOOD PRICE]...` +
237+
e.g. `add n/James Ho p/22224444 e/[email protected] a/123, Clementi Rd, 1234665 gp/pen 1.00`
238+
* *List supplier* : `list-s`
239+
* *Clear suppliers* : `clear-s`
240+
* *Delete supplier* : `delete-s INDEX` +
241+
e.g. `delete-s 3`
242+
* *Edit supplier* : `edit-s INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [gp/GOOD PRICE]...` +
243+
e.g. `edit-s 2 n/James Lee e/[email protected]`
244+
* *Find supplier* : `find KEYWORD [MORE_KEYWORDS]` +
175245
e.g. `find James Jake`
176-
* *List* : `list`
246+
* *List goods*: `list-i`
247+
* *List supplier for a goods*: `source`
248+
* *Buy goods*: `buy n/SUPPLIER_NAME g/GOOD_NAME q/QUANTITY x/EXPIRY_DATE d/TRANSACTION_DATE` +
249+
e.g. `buy n/Dave g/apple q/4 x/2003-08-01 d/2002-07-03`
250+
* *Sell goods*: `sell g/GOOD_NAME q/QUANTITY d/TRANSACTION_DATE` +
251+
e.g. `sell g/apple q/4 d/2030-01-05`
252+
* *List goods low in quantity*: `list-l`
253+
* *Set minimum quantity for goods*: `set g/GOOD_NAME q/MIN_QUANTITY`
254+
* *List expiring goods*: `list-e`
255+
* *List transaction history*: `list-t`
256+
* *Clear transaction history*: `clear-t`
257+
* *Edit buy order*: `edit-bo INDEX [n/SUPPLIER_NAME] [g/GOOD_NAME] [q/QUANTITY] [d/TRANSACTION_DATE] [x/EXPIRY_DATE]`
258+
* *Edit sell order*: `edit-so INDEX [g/GOOD_NAME][q/QUANTITY][d/TRANSACTION_DATE]`
177259
* *Help* : `help`

0 commit comments

Comments
 (0)