Skip to content

Commit 5de956e

Browse files
authored
Merge pull request #62 from redcolorbicycle/branch-house
House, Buyer/Seller Capabilities
2 parents 40ab66c + 92b8a4e commit 5de956e

40 files changed

+572
-604
lines changed

src/main/java/seedu/address/logic/Messages.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,8 @@ public static String format(Person person) {
4141
.append(person.getPhone())
4242
.append("; Email: ")
4343
.append(person.getEmail())
44-
.append("; Address: ")
45-
.append(person.getAddress())
46-
.append("; Postal Code: ")
47-
.append(person.getPostalCode())
44+
.append("; Housing Type: ")
45+
.append(person.getHousingType())
4846
.append("; Tags: ");
4947
person.getTags().forEach(builder::append);
5048
return builder.toString();

src/main/java/seedu/address/logic/commands/AddBuyerCommand.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
package seedu.address.logic.commands;
22

33
import static java.util.Objects.requireNonNull;
4-
import static seedu.address.logic.parser.CliSyntax.PREFIX_ADDRESS;
54
import static seedu.address.logic.parser.CliSyntax.PREFIX_EMAIL;
5+
import static seedu.address.logic.parser.CliSyntax.PREFIX_HOUSINGTYPE;
66
import static seedu.address.logic.parser.CliSyntax.PREFIX_NAME;
77
import static seedu.address.logic.parser.CliSyntax.PREFIX_PHONE;
8-
import static seedu.address.logic.parser.CliSyntax.PREFIX_POSTALCODE;
98
import static seedu.address.logic.parser.CliSyntax.PREFIX_TAG;
109

1110
import seedu.address.commons.util.ToStringBuilder;
@@ -26,15 +25,13 @@ public class AddBuyerCommand extends Command {
2625
+ PREFIX_NAME + "NAME "
2726
+ PREFIX_PHONE + "PHONE "
2827
+ PREFIX_EMAIL + "EMAIL "
29-
+ PREFIX_ADDRESS + "ADDRESS "
30-
+ PREFIX_POSTALCODE + "POSTAL CODE "
28+
+ PREFIX_HOUSINGTYPE + "HOUSINGTYPE"
3129
+ "[" + PREFIX_TAG + "TAG]...\n"
3230
+ "Example: " + COMMAND_WORD + " "
3331
+ PREFIX_NAME + "John Doe "
3432
+ PREFIX_PHONE + "98765432 "
3533
+ PREFIX_EMAIL + "johnd@example.com "
36-
+ PREFIX_ADDRESS + "311, Clementi Ave 2, #02-25 "
37-
+ PREFIX_POSTALCODE + "578578 "
34+
+ PREFIX_HOUSINGTYPE + "HDB "
3835
+ PREFIX_TAG + "friends "
3936
+ PREFIX_TAG + "owesMoney";
4037

src/main/java/seedu/address/logic/commands/AddCommand.java

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
package seedu.address.logic.commands;
22

33
import static java.util.Objects.requireNonNull;
4-
import static seedu.address.logic.parser.CliSyntax.PREFIX_ADDRESS;
4+
import static seedu.address.logic.parser.CliSyntax.PREFIX_BLOCK;
55
import static seedu.address.logic.parser.CliSyntax.PREFIX_EMAIL;
6+
import static seedu.address.logic.parser.CliSyntax.PREFIX_HOUSINGTYPE;
7+
import static seedu.address.logic.parser.CliSyntax.PREFIX_LEVEL;
68
import static seedu.address.logic.parser.CliSyntax.PREFIX_NAME;
79
import static seedu.address.logic.parser.CliSyntax.PREFIX_PHONE;
810
import static seedu.address.logic.parser.CliSyntax.PREFIX_POSTALCODE;
11+
import static seedu.address.logic.parser.CliSyntax.PREFIX_STREET;
912
import static seedu.address.logic.parser.CliSyntax.PREFIX_TAG;
13+
import static seedu.address.logic.parser.CliSyntax.PREFIX_UNITNUMBER;
1014

1115
import seedu.address.commons.util.ToStringBuilder;
1216
import seedu.address.logic.Messages;
@@ -15,7 +19,7 @@
1519
import seedu.address.model.person.Person;
1620

1721
/**
18-
* Adds a person to the address book.
22+
* Adds a person to the address book. Currently obsolete
1923
*/
2024
public class AddCommand extends Command {
2125

@@ -26,14 +30,22 @@ public class AddCommand extends Command {
2630
+ PREFIX_NAME + "NAME "
2731
+ PREFIX_PHONE + "PHONE "
2832
+ PREFIX_EMAIL + "EMAIL "
29-
+ PREFIX_ADDRESS + "ADDRESS "
33+
+ PREFIX_HOUSINGTYPE + "HOUSINGTYPE"
34+
+ PREFIX_STREET + "STREET "
35+
+ PREFIX_BLOCK + "BLOCK "
36+
+ PREFIX_LEVEL + "LEVEL "
37+
+ PREFIX_UNITNUMBER + "UNITNUMBER "
3038
+ PREFIX_POSTALCODE + "POSTAL CODE "
3139
+ "[" + PREFIX_TAG + "TAG]...\n"
3240
+ "Example: " + COMMAND_WORD + " "
3341
+ PREFIX_NAME + "John Doe "
3442
+ PREFIX_PHONE + "98765432 "
3543
+ PREFIX_EMAIL + "johnd@example.com "
36-
+ PREFIX_ADDRESS + "311, Clementi Ave 2, #02-25 "
44+
+ PREFIX_HOUSINGTYPE + "HDB "
45+
+ PREFIX_STREET + "Clementi Ave 2 "
46+
+ PREFIX_BLOCK + "311 "
47+
+ PREFIX_LEVEL + "02 "
48+
+ PREFIX_UNITNUMBER + "25 "
3749
+ PREFIX_POSTALCODE + "578578 "
3850
+ PREFIX_TAG + "friends "
3951
+ PREFIX_TAG + "owesMoney";

src/main/java/seedu/address/logic/commands/AddSellerCommand.java

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
package seedu.address.logic.commands;
22

33
import static java.util.Objects.requireNonNull;
4-
import static seedu.address.logic.parser.CliSyntax.PREFIX_ADDRESS;
4+
import static seedu.address.logic.parser.CliSyntax.PREFIX_BLOCK;
55
import static seedu.address.logic.parser.CliSyntax.PREFIX_EMAIL;
6+
import static seedu.address.logic.parser.CliSyntax.PREFIX_HOUSINGTYPE;
7+
import static seedu.address.logic.parser.CliSyntax.PREFIX_LEVEL;
68
import static seedu.address.logic.parser.CliSyntax.PREFIX_NAME;
79
import static seedu.address.logic.parser.CliSyntax.PREFIX_PHONE;
810
import static seedu.address.logic.parser.CliSyntax.PREFIX_POSTALCODE;
11+
import static seedu.address.logic.parser.CliSyntax.PREFIX_STREET;
912
import static seedu.address.logic.parser.CliSyntax.PREFIX_TAG;
13+
import static seedu.address.logic.parser.CliSyntax.PREFIX_UNITNUMBER;
1014

1115
import seedu.address.commons.util.ToStringBuilder;
1216
import seedu.address.logic.Messages;
@@ -26,14 +30,22 @@ public class AddSellerCommand extends Command {
2630
+ PREFIX_NAME + "NAME "
2731
+ PREFIX_PHONE + "PHONE "
2832
+ PREFIX_EMAIL + "EMAIL "
29-
+ PREFIX_ADDRESS + "ADDRESS "
33+
+ PREFIX_HOUSINGTYPE + "HOUSINGTYPE"
34+
+ PREFIX_STREET + "STREET "
35+
+ PREFIX_BLOCK + "BLOCK "
36+
+ PREFIX_LEVEL + "LEVEL "
37+
+ PREFIX_UNITNUMBER + "UNITNUMBER "
3038
+ PREFIX_POSTALCODE + "POSTAL CODE "
3139
+ "[" + PREFIX_TAG + "TAG]...\n"
3240
+ "Example: " + COMMAND_WORD + " "
3341
+ PREFIX_NAME + "John Doe "
3442
+ PREFIX_PHONE + "98765432 "
3543
+ PREFIX_EMAIL + "johnd@example.com "
36-
+ PREFIX_ADDRESS + "311, Clementi Ave 2, #02-25 "
44+
+ PREFIX_HOUSINGTYPE + "HDB "
45+
+ PREFIX_STREET + "Clementi Ave 2 "
46+
+ PREFIX_BLOCK + "Block 311 "
47+
+ PREFIX_LEVEL + "Level 02"
48+
+ PREFIX_UNITNUMBER + "Unit 25"
3749
+ PREFIX_POSTALCODE + "578578 "
3850
+ PREFIX_TAG + "friends "
3951
+ PREFIX_TAG + "owesMoney";

src/main/java/seedu/address/logic/commands/EditCommand.java

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package seedu.address.logic.commands;
22

33
import static java.util.Objects.requireNonNull;
4-
import static seedu.address.logic.parser.CliSyntax.PREFIX_ADDRESS;
54
import static seedu.address.logic.parser.CliSyntax.PREFIX_EMAIL;
65
import static seedu.address.logic.parser.CliSyntax.PREFIX_NAME;
76
import static seedu.address.logic.parser.CliSyntax.PREFIX_PHONE;
@@ -21,7 +20,6 @@
2120
import seedu.address.logic.Messages;
2221
import seedu.address.logic.commands.exceptions.CommandException;
2322
import seedu.address.model.Model;
24-
import seedu.address.model.person.Address;
2523
import seedu.address.model.person.Email;
2624
import seedu.address.model.person.Name;
2725
import seedu.address.model.person.Person;
@@ -42,7 +40,6 @@ public class EditCommand extends Command {
4240
+ "[" + PREFIX_NAME + "NAME] "
4341
+ "[" + PREFIX_PHONE + "PHONE] "
4442
+ "[" + PREFIX_EMAIL + "EMAIL] "
45-
+ "[" + PREFIX_ADDRESS + "ADDRESS] "
4643
+ "[" + PREFIX_TAG + "TAG]...\n"
4744
+ "Example: " + COMMAND_WORD + " 1 "
4845
+ PREFIX_PHONE + "91234567 "
@@ -98,11 +95,18 @@ private static Person createEditedPerson(Person personToEdit, EditPersonDescript
9895
Name updatedName = editPersonDescriptor.getName().orElse(personToEdit.getName());
9996
Phone updatedPhone = editPersonDescriptor.getPhone().orElse(personToEdit.getPhone());
10097
Email updatedEmail = editPersonDescriptor.getEmail().orElse(personToEdit.getEmail());
101-
Address updatedAddress = editPersonDescriptor.getAddress().orElse(personToEdit.getAddress());
98+
String updatedHouse = editPersonDescriptor.getHousingType().orElse(personToEdit.getHousingType());
99+
/*
100+
Street updatedStreet = editPersonDescriptor.getStreet().orElse(personToEdit.getStreet());
101+
Level updatedLevel = editPersonDescriptor.getLevel().orElse(personToEdit.getLevel());
102+
Block updatedBlock = editPersonDescriptor.getBlock().orElse(personToEdit.getBlock());
103+
UnitNumber unitNumber = editPersonDescriptor.getUnitNumber().orElse(personToEdit.getUnitNumber());
104+
PostalCode postalCode = editPersonDescriptor.getPostalCode().orElse(personToEdit.getPostalCode());
105+
*/
102106
Set<Tag> updatedTags = editPersonDescriptor.getTags().orElse(personToEdit.getTags());
103107

104-
return new Person(updatedName, updatedPhone, updatedEmail, updatedAddress,
105-
personToEdit.getPostalCode(), updatedTags);
108+
return new Person(updatedName, updatedPhone, updatedEmail, updatedHouse,
109+
updatedTags);
106110
}
107111

108112
@Override
@@ -137,7 +141,7 @@ public static class EditPersonDescriptor {
137141
private Name name;
138142
private Phone phone;
139143
private Email email;
140-
private Address address;
144+
private String housingType;
141145
private Set<Tag> tags;
142146

143147
public EditPersonDescriptor() {
@@ -151,15 +155,16 @@ public EditPersonDescriptor(EditPersonDescriptor toCopy) {
151155
setName(toCopy.name);
152156
setPhone(toCopy.phone);
153157
setEmail(toCopy.email);
154-
setAddress(toCopy.address);
158+
setHousingType(toCopy.housingType);
155159
setTags(toCopy.tags);
156160
}
157161

162+
158163
/**
159164
* Returns true if at least one field is edited.
160165
*/
161166
public boolean isAnyFieldEdited() {
162-
return CollectionUtil.isAnyNonNull(name, phone, email, address, tags);
167+
return CollectionUtil.isAnyNonNull(name, phone, email, housingType, tags);
163168
}
164169

165170
public void setName(Name name) {
@@ -186,12 +191,12 @@ public Optional<Email> getEmail() {
186191
return Optional.ofNullable(email);
187192
}
188193

189-
public void setAddress(Address address) {
190-
this.address = address;
194+
public void setHousingType(String housingType) {
195+
this.housingType = housingType;
191196
}
192197

193-
public Optional<Address> getAddress() {
194-
return Optional.ofNullable(address);
198+
public Optional<String> getHousingType() {
199+
return Optional.ofNullable(housingType);
195200
}
196201

197202
/**
@@ -226,7 +231,7 @@ public boolean equals(Object other) {
226231
return Objects.equals(name, otherEditPersonDescriptor.name)
227232
&& Objects.equals(phone, otherEditPersonDescriptor.phone)
228233
&& Objects.equals(email, otherEditPersonDescriptor.email)
229-
&& Objects.equals(address, otherEditPersonDescriptor.address)
234+
&& Objects.equals(housingType, otherEditPersonDescriptor.housingType)
230235
&& Objects.equals(tags, otherEditPersonDescriptor.tags);
231236
}
232237

@@ -236,7 +241,7 @@ public String toString() {
236241
.add("name", name)
237242
.add("phone", phone)
238243
.add("email", email)
239-
.add("address", address)
244+
.add("housingType", housingType)
240245
.add("tags", tags)
241246
.toString();
242247
}

src/main/java/seedu/address/logic/parser/AddBuyerCommandParser.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
package seedu.address.logic.parser;
22

33
import static seedu.address.logic.Messages.MESSAGE_INVALID_COMMAND_FORMAT;
4-
import static seedu.address.logic.parser.CliSyntax.PREFIX_ADDRESS;
54
import static seedu.address.logic.parser.CliSyntax.PREFIX_EMAIL;
5+
import static seedu.address.logic.parser.CliSyntax.PREFIX_HOUSINGTYPE;
66
import static seedu.address.logic.parser.CliSyntax.PREFIX_NAME;
77
import static seedu.address.logic.parser.CliSyntax.PREFIX_PHONE;
8-
import static seedu.address.logic.parser.CliSyntax.PREFIX_POSTALCODE;
98
import static seedu.address.logic.parser.CliSyntax.PREFIX_TAG;
109

1110
import java.util.Set;
1211
import java.util.stream.Stream;
1312

1413
import seedu.address.logic.commands.AddBuyerCommand;
1514
import seedu.address.logic.parser.exceptions.ParseException;
16-
import seedu.address.model.house.PostalCode;
17-
import seedu.address.model.person.Address;
1815
import seedu.address.model.person.Email;
1916
import seedu.address.model.person.Name;
2017
import seedu.address.model.person.Person;
@@ -33,24 +30,23 @@ public class AddBuyerCommandParser implements Parser<AddBuyerCommand> {
3330
*/
3431
public AddBuyerCommand parse(String args) throws ParseException {
3532
ArgumentMultimap argMultimap =
36-
ArgumentTokenizer.tokenize(args, PREFIX_NAME, PREFIX_PHONE, PREFIX_EMAIL, PREFIX_ADDRESS,
37-
PREFIX_POSTALCODE, PREFIX_TAG);
33+
ArgumentTokenizer.tokenize(args, PREFIX_NAME, PREFIX_PHONE, PREFIX_EMAIL, PREFIX_HOUSINGTYPE,
34+
PREFIX_TAG);
3835

39-
if (!arePrefixesPresent(argMultimap, PREFIX_NAME, PREFIX_ADDRESS, PREFIX_PHONE, PREFIX_EMAIL, PREFIX_POSTALCODE)
36+
if (!arePrefixesPresent(argMultimap, PREFIX_NAME, PREFIX_PHONE, PREFIX_EMAIL, PREFIX_HOUSINGTYPE)
4037
|| !argMultimap.getPreamble().isEmpty()) {
4138
throw new ParseException(String.format(MESSAGE_INVALID_COMMAND_FORMAT, AddBuyerCommand.MESSAGE_USAGE));
4239
}
4340

4441
argMultimap.verifyNoDuplicatePrefixesFor(PREFIX_NAME, PREFIX_PHONE, PREFIX_EMAIL,
45-
PREFIX_ADDRESS, PREFIX_POSTALCODE);
42+
PREFIX_HOUSINGTYPE);
4643
Name name = ParserUtil.parseName(argMultimap.getValue(PREFIX_NAME).get());
4744
Phone phone = ParserUtil.parsePhone(argMultimap.getValue(PREFIX_PHONE).get());
4845
Email email = ParserUtil.parseEmail(argMultimap.getValue(PREFIX_EMAIL).get());
49-
Address address = ParserUtil.parseAddress(argMultimap.getValue(PREFIX_ADDRESS).get());
50-
PostalCode postalCode = ParserUtil.parsePostalCode(argMultimap.getValue(PREFIX_POSTALCODE).get());
46+
String housingtype = ParserUtil.parseHousing(argMultimap.getValue(PREFIX_HOUSINGTYPE).get());
5147
Set<Tag> tagList = ParserUtil.parseTags(argMultimap.getAllValues(PREFIX_TAG));
5248

53-
Person person = new Person(name, phone, email, address, postalCode, tagList);
49+
Person person = new Person(name, phone, email, housingtype, tagList);
5450

5551
return new AddBuyerCommand(person);
5652
}

src/main/java/seedu/address/logic/parser/AddCommandParser.java

Lines changed: 0 additions & 66 deletions
This file was deleted.

0 commit comments

Comments
 (0)