Skip to content

Commit 81c0b9e

Browse files
authored
Merge pull request nus-cs2103-AY2324S1#122 from Chrainx/Add-Match-UG
Add match ug
2 parents a4ab4cc + 91eddff commit 81c0b9e

File tree

1 file changed

+100
-53
lines changed

1 file changed

+100
-53
lines changed

docs/UserGuide.md

Lines changed: 100 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -137,34 +137,6 @@ If you just want a quick summary of all the feature PropertyMatch has, do take a
137137
* If you are using a PDF version of this document, be careful when copying and pasting commands that span multiple lines as space characters surrounding line-breaks may be omitted when copied over to the application.
138138
</div>
139139

140-
### Adding a property: `addprop`
141-
142-
Adds a property to the application.
143-
144-
Format: `addprop n/NAME a/ADDRESS p/number b/budget [c/CHARACTERISTIC]`
145-
146-
Parameter:
147-
* `n/NAME` : The propName of the property (String)
148-
* `a/ADDRESS` : The propAddress of the property (String)
149-
* `p/NUMBER` : The contact number (Integer)
150-
* `pr/PRICE` : The budget of the property in psf (Number)
151-
* `c/CHARACTERISTIC` (Optional) : The characteristics of the property (String)
152-
153-
Examples:
154-
* addprop n/Fredy a/randomAddress c/bright c/sunny c/big c/square p/91135235 b/5
155-
* addprop n/Fredy a/randomAddress p/91135235 b/5
156-
157-
When command succeeds:
158-
* `Property NAME has been added`
159-
160-
When command fails:
161-
* `This property already exist` if the property have the same propName and propAddress
162-
* `Missing propName parameter for add properties command` for missing propName parameter
163-
* `Missing propAddress parameter for add properties command` for missing propAddress parameter
164-
* `Missing number parameter for add properties command` for missing propName parameter
165-
* `Missing budget parameter for add properties command` for missing budget parameter
166-
* `Invalid Command` for mispelling of command
167-
168140
### Adding a customer: `addcust`
169141

170142
Adds a customer to the application.
@@ -179,19 +151,48 @@ Parameter:
179151
* `c/CHARACTERISTIC` (optional) : The characteristics of the property the customer is looking for (String)
180152

181153
Examples:
182-
* `addcust n/Fredy p/12345678 e/[email protected] b/100000`
154+
* `addcust n/Fredy p/12345678 e/[email protected] b/1000000`
183155
* `addcust n/Boedi p/88888888 e/[email protected] b/250000 c/white`
184156
* `addcust n/Phoebe p/87654321 e/[email protected] b/200000`
185157

186158
When command succeeds:
187-
* `Customer NAME has been added`
159+
* `New customer added:Name; Phone:PHONE; Email:EMAIL; Budget:BUDGET; Tags:[TAGS]…​`
188160

189161
When command fails:
190162
* `Missing name parameter for add customers command` for missing name parameter
191163
* `Missing phone parameter for add customers command` for missing phone parameter
192164
* `Missing email parameter for add customers command` for missing email parameter
193165
* `Invalid Command` for misspelling of command
194166

167+
### Adding a property: `addprop`
168+
169+
Adds a property to the application.
170+
171+
Format: `addprop n/NAME a/ADDRESS [c/CHARACTERISTIC] ph/number pr/budget`
172+
173+
Parameter:
174+
* `n/NAME` : The Name of the property (String)
175+
* `a/ADDRESS` : The Address of the property (String)
176+
* `c/CHARACTERISTIC` (Optional) : The characteristics of the property (String)
177+
* `ph/NUMBER` : The contact number (Integer)
178+
* `pr/PRICE` : The price of the property in psf (Number)
179+
180+
181+
Examples:
182+
* addprop n/Fredy a/randomAddress c/bright;sunny;big;square ph/91135235 pr/5
183+
* addprop n/Fredy a/randomAddress ph/91135235 pr/5
184+
185+
When command succeeds:
186+
* `New property added:Name; Address:ADDRESS; Phone:PHONE; Price:price; Tags:[TAGS]…​`
187+
188+
When command fails:
189+
* `This property already exist` if the property have the same Name and Address
190+
* `Missing Name parameter for add properties command` for missing Name parameter
191+
* `Missing Address parameter for add properties command` for missing Address parameter
192+
* `Missing number parameter for add properties command` for missing Name parameter
193+
* `Missing price parameter for add properties command` for missing price parameter
194+
* `Invalid Command` for mispelling of command
195+
195196
### Listing all customers : `listcust`
196197

197198
Updates the Customer List to show all customers in your database.
@@ -265,8 +266,8 @@ Format: `editcust INDEX [n/NAME] [ph/PHONE] [e/EMAIL] [b/BUDGET] [c/CHARACTERIST
265266
* You can remove all the person’s tags by typing `c/` without
266267
specifying any tags after it.
267268
Examples:
268-
* `editprop 1 ph/91234567 e/[email protected]` Edits the phone number and email of the 1st customer to be `91234567` and `[email protected]` respectively.
269-
* `edit 2 n/Andrew c/` Edits the name of the 2nd customer to be `Andrew` and clears all existing tags.
269+
* `editcust 1 ph/91234567 e/[email protected]` Edits the phone number and email of the 1st customer to be `91234567` and `[email protected]` respectively.
270+
* `editcust 2 n/Andrew c/` Edits the name of the 2nd customer to be `Andrew` and clears all existing tags.
270271

271272
### Editing a property : `editprop`
272273
Edits an existing property.
@@ -279,7 +280,8 @@ Format: `editprop INDEX [n/NAME] [ph/PHONE] [pr/PRICE] [a/ADDRESS] [c/CHARACTERI
279280
specifying any tags after it.
280281
Examples:
281282
* `editprop 1 ph/91234567 a/43 Clementi Avenue 3 #03-543` Edits the phone number and address of the 1st property to be `91234567` and `43 Clementi Avenue 3 #03-543` respectively.
282-
* `edit 2 n/Skyview t/` Edits the name of the 2nd property to be `Skyview` and clears all existing tags.
283+
* `editprop 2 n/Skyview t/` Edits the name of the 2nd property to be `Skyview` and clears all existing tags.
284+
*
283285
### Finding a customer : `findcust`
284286

285287
Finds and returns a customer or a list of customers whose name contains the substring inputted.
@@ -324,6 +326,29 @@ When command fails:
324326
* `Invalid command format` for missing parameter
325327
* `Unknown command` for misspelling of command
326328

329+
### Filter customers : `filtercust`
330+
331+
Format: `filtercust [b/BUDGET] [c/CHARACTERISTIC]…​`
332+
333+
Parameter:
334+
* `b/BUDGET` (optional) : The budget of the customer (Integer)
335+
* `c/CHARACTERISTIC` (optional) : The characteristics of the property the customer is looking for (String)
336+
337+
Notes:
338+
* Even though both `BUDGET` and `CHARACTERISTIC` are optional, at least one of them should exist.
339+
340+
Examples:
341+
* `filtercust b/100000`
342+
* `filtercust b/250000 c/white`
343+
* `filtercust c/white`
344+
345+
When command succeeds:
346+
* `4 customers listed!` when there are 4 customers fulfilling the filter.
347+
348+
When command fails:
349+
* `Invalid command format!` for missing both `BUDGET` and `CHARACTERISTIC` parameters.
350+
* `Unknown command` for misspelling of command.
351+
327352
### Filter properties : `filterprop`
328353

329354
Format: `filtercust [pr/PRICE] [c/CHARACTERISTIC]…​`
@@ -347,28 +372,51 @@ When command fails:
347372
* `Invalid command format!` for missing both `PRICE` and `CHARACTERISTIC` parameters.
348373
* `Unknown command` for misspelling of command.
349374

350-
### Filter customers : `filtercust`
375+
### Matching properties to customer : `matchcust`
351376

352-
Format: `filtercust [b/BUDGET] [c/CHARACTERISTIC]…​`
377+
Format: `matchcust [INDEX]`
353378

354379
Parameter:
355-
* `b/BUDGET` (optional) : The budget of the customer (Integer)
356-
* `c/CHARACTERISTIC` (optional) : The characteristics of the property the customer is looking for (String)
380+
* `INDEX` : The index number of the customer you want to match.
357381

358382
Notes:
359-
* Even though both `BUDGET` and `CHARACTERISTIC` are optional, at least one of them should exist.
383+
* The Index must in the range of customers you have added.
360384

361385
Examples:
362-
* `filtercust b/100000`
363-
* `filtercust b/250000 c/white`
364-
* `filtercust c/white`
386+
* `matchcust 1`
387+
* `matchcust 10`
388+
* `matchcust 32`
365389

366390
When command succeeds:
367-
* `4 customers listed!` when there are 4 customers fulfilling the filter.
391+
* `4 properties matched with customer 1!` when there are 4 properties fulfilling the criteria of the customer 1.
368392

369393
When command fails:
370-
* `Invalid command format!` for missing both `BUDGET` and `CHARACTERISTIC` parameters.
394+
* `Invalid command format!` for missing `INDEX` parameters.
371395
* `Unknown command` for misspelling of command.
396+
* `There is no customer with index [INDEX]` for `INDEX` inputted is not in the range of the customers.
397+
398+
### Matching customers to property : `matchprop`
399+
400+
Format: `matchprop [INDEX]`
401+
402+
Parameter:
403+
* `INDEX` : The index number of the property you want to match.
404+
405+
Notes:
406+
* The Index must in the range of properties you have added.
407+
408+
Examples:
409+
* `matchprop 1`
410+
* `matchprop 10`
411+
* `matchprop 32`
412+
413+
When command succeeds:
414+
* `4 customers matched with property 1!` when there are 4 customers have the criteria of the property 1.
415+
416+
When command fails:
417+
* `Invalid command format!` for missing `INDEX` parameters.
418+
* `Unknown command` for misspelling of command.
419+
* `There is no proeprty with index [INDEX]` for `INDEX` inputted is not in the range of the properties.
372420

373421
### Clear the data in the application : `clear`
374422

@@ -394,7 +442,6 @@ Format: `exit`
394442
When command succeeds: Exit from application
395443

396444
When command fails: Invalid command for misspelling of command
397-
398445
--------------------------------------------------------------------------------------------------------------------
399446

400447
## FAQ
@@ -429,20 +476,20 @@ When command fails: Invalid command for misspelling of command
429476

430477
| Action | Format, Examples |
431478
|----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
432-
| **Add property** | `addprop n/NAME a/ADDRESS [c/CHARACTERISTIC] ph/number pr/budget` <br> e.g., `addprop n/Property a/randomAddress c/bright c/sunny c/big c/square p/91135235 pr/500000` |
433479
| **Add customer** | `addcust n/NAME p/PHONE e/EMAIL [b/BUDGET] [c/CHARACTERISTIC]` <br> e.g., `addcust n/Fredy p/12345678 e/[email protected] b/100000` |
434-
| **Delete property** | `delprop INDEX`<br> e.g., `delprop 3` |
480+
| **Add property** | `addprop n/NAME a/ADDRESS [c/CHARACTERISTIC] ph/number pr/budget` <br> e.g., `addprop n/Property a/randomAddress c/bright c/sunny c/big c/square p/91135235 pr/500000` |
435481
| **Delete customer** | `delcust INDEX`<br> e.g., `delcust 3` |
436-
| **Edit property** | `editprop INDEX n/NAME a/ADDRESS [c/CHARACTERISTIC] ph/number pr/budget` |
437-
| **Edit customer** | `editcust INDEX n/NAME p/PHONE e/EMAIL [b/BUDGET] [c/CHARACTERISTIC]` |
482+
| **Delete property** | `delprop INDEX`<br> e.g., `delprop 3` |
483+
| **Edit customer** | `editcust INDEX n/NAME p/PHONE e/EMAIL [b/BUDGET] [c/CHARACTERISTIC]` <br> e.g., `editcust 1 ph/91234567 e/[email protected]` |
484+
| **Edit property** | `editprop INDEX n/NAME a/ADDRESS [c/CHARACTERISTIC] ph/number pr/budget` <br> e.g., `editprop 1 ph/91234567 a/43 Clementi Avenue 3 #03-543` |
438485
| **List properties** | `listprop` |
439486
| **List customers** | `listcust` |
440-
| **Find properties** | `findprop NAME` |
441487
| **Find customers** | `findcust NAME` |
442-
| **Filter properties** | `filterprop [pr/PRICE] [c/CHARACTERISTIC]` |
443-
| **Filter customers** | `filtercust [b/BUDGET] [c/CHARACTERISTIC]` |
444-
| **Match customers to property** | `matchprop INDEX` |
445-
| **Match properties to customer** | `matchcust INDEX` |
488+
| **Find properties** | `findprop NAME` |
489+
| **Filter properties** | `filterprop [pr/PRICE] [c/CHARACTERISTIC]` <br> e.g., `filterprop pr/250000 c/white` |
490+
| **Filter customers** | `filtercust [b/BUDGET] [c/CHARACTERISTIC]` <br> e.g., `filtercust b/250000 c/white` |
491+
| **Match properties to customer** | `matchcust INDEX` <br> e.g., `matchcust 1` |
492+
| **Match customers to property** | `matchprop INDEX` <br> e.g., `matchprop 1` |
446493
| **Clear** | `clear` |
447494
| **Exit** | `exit` |
448495
| **Help** | `help` |

0 commit comments

Comments
 (0)