diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 0627a01df07..f8eb7e0d5ff 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -100,6 +100,12 @@ Examples: `start 2` Initialises the second project in the project list. ## **Features** after project initialisation +### Task-related features +#### Checking the project dashboard `dashboard ` +Shows a summary of the important information regarding the project. + +Format: `dashboard` + #### Listing all tasks `list` Shows a list of all tasks in the task list sorted by priority. @@ -165,6 +171,15 @@ Instruction: Outcome: The task is assigned with the priority level. +#### Viewing tasks allocated to a team member `view ` +Displays a list of tasks allocated to the specified members. + +Format: `view NAME` +- NAME refers to the name of the team member when it was first input during project creation. + +Example: `view Niaaz` Displays a list of tasks allocated to Niaaz. + +-------------------------------------------------------------------------------------------------------------------- ### **Teammate**-related features #### Create new teammate `new teammate ` @@ -215,9 +230,6 @@ Format: `task participants TASK_NUMBER` Example: `task participants 1` Displays the teammates that are assigned to do task 1 - --------------------------------------------------------------------------------------------------------------------- - ## FAQ **Q**: How do I transfer my data to another Computer?
diff --git a/docs/images/Ui.png b/docs/images/Ui.png index 5bd77847aa2..030cfd2901c 100644 Binary files a/docs/images/Ui.png and b/docs/images/Ui.png differ diff --git a/src/main/java/seedu/address/logic/parser/AddCommandParser.java b/src/main/java/seedu/address/logic/parser/AddCommandParser.java index c0daf6715e5..5fb57b51eb4 100644 --- a/src/main/java/seedu/address/logic/parser/AddCommandParser.java +++ b/src/main/java/seedu/address/logic/parser/AddCommandParser.java @@ -34,10 +34,9 @@ public class AddCommandParser implements Parser { */ public AddCommand parse(String args) throws ParseException { ArgumentMultimap argMultimap = - ArgumentTokenizer.tokenize(args, PREFIX_NAME, PREFIX_PHONE, PREFIX_EMAIL, - PREFIX_ADDRESS, PREFIX_TAG, PREFIX_TASK); + ArgumentTokenizer.tokenize(args, PREFIX_NAME, PREFIX_PHONE, PREFIX_EMAIL, PREFIX_TAG, PREFIX_TASK); - if (!arePrefixesPresent(argMultimap, PREFIX_NAME, PREFIX_ADDRESS, PREFIX_PHONE, PREFIX_EMAIL) + if (!arePrefixesPresent(argMultimap, PREFIX_NAME, PREFIX_PHONE, PREFIX_EMAIL) || !argMultimap.getPreamble().isEmpty()) { throw new ParseException(String.format(MESSAGE_INVALID_COMMAND_FORMAT, AddCommand.MESSAGE_USAGE)); } diff --git a/src/main/java/seedu/address/model/person/Address.java b/src/main/java/seedu/address/model/person/Address.java deleted file mode 100644 index bae804ccb86..00000000000 --- a/src/main/java/seedu/address/model/person/Address.java +++ /dev/null @@ -1,57 +0,0 @@ -package seedu.address.model.person; - -import static java.util.Objects.requireNonNull; -import static seedu.address.commons.util.AppUtil.checkArgument; - -/** - * Represents a Project's address in the main catalogue. - * Guarantees: immutable; is valid as declared in {@link #isValidAddress(String)} - */ -public class Address { - - public static final String MESSAGE_CONSTRAINTS = "Addresses can take any values, and it should not be blank"; - - /* - * The first character of the address must not be a whitespace, - * otherwise " " (a blank string) becomes a valid input. - */ - public static final String VALIDATION_REGEX = "[^\\s].*"; - - public final String value; - - /** - * Constructs an {@code Address}. - * - * @param address A valid address - */ - public Address(String address) { - requireNonNull(address); - checkArgument(isValidAddress(address), MESSAGE_CONSTRAINTS); - value = address; - } - - /** - * Returns true if a given string is a valid email. - */ - public static boolean isValidAddress(String test) { - return test.matches(VALIDATION_REGEX); - } - - @Override - public String toString() { - return value; - } - - @Override - public boolean equals(Object other) { - return other == this // short circuit if same object - || (other instanceof Address // instanceof handles nulls - && value.equals(((Address) other).value)); // state check - } - - @Override - public int hashCode() { - return value.hashCode(); - } - -} diff --git a/src/main/java/seedu/address/model/person/Person.java b/src/main/java/seedu/address/model/person/Person.java index 5b198793407..328a0b23dd8 100644 --- a/src/main/java/seedu/address/model/person/Person.java +++ b/src/main/java/seedu/address/model/person/Person.java @@ -25,19 +25,17 @@ public class Person { private Email email; // Data fields - private Address address; private final Set tags = new HashSet<>(); private HashMap listOfParticipations = new HashMap<>(); /** * Every field must be present and not null. */ - public Person(PersonName name, Phone phone, Email email, Address address, Set tags) { - requireAllNonNull(name, phone, email, address, tags); + public Person(PersonName name, Phone phone, Email email, Set tags) { + requireAllNonNull(name, phone, email, tags); this.name = name; this.phone = phone; this.email = email; - this.address = address; this.tags.addAll(tags); } @@ -53,18 +51,10 @@ public Email getEmail() { return email; } - public Address getAddress() { - return address; - } - public void updateName(String newNameStr) { name = new PersonName(newNameStr); } - public void updateAddress(String newAddressStr) { - address = new Address(newAddressStr); - } - public void updatePhone(String newPhonestr) { phone = new Phone(newPhonestr); } @@ -97,8 +87,7 @@ public boolean isSameTeammate(Person otherTeammate) { return otherTeammate != null && otherTeammate.getName().equals(getName()) && (otherTeammate.getPhone().equals(getPhone()) - || otherTeammate.getEmail().equals(getEmail()) - || otherTeammate.getAddress().equals(getAddress())); + || otherTeammate.getEmail().equals(getEmail())); } /** @@ -119,14 +108,13 @@ public boolean equals(Object other) { return otherProject.getName().equals(getName()) && otherProject.getPhone().equals(getPhone()) && otherProject.getEmail().equals(getEmail()) - && otherProject.getAddress().equals(getAddress()) && otherProject.getTags().equals(getTags()); } @Override public int hashCode() { // use this method for custom fields hashing instead of implementing your own - return Objects.hash(name, phone, email, address, tags); + return Objects.hash(name, phone, email, tags); } @Override @@ -137,8 +125,6 @@ public String toString() { .append(getPhone()) .append(" Email: ") .append(getEmail()) - .append(" Address: ") - .append(getAddress()) .append(" Tags: "); getTags().forEach(builder::append); return builder.toString(); diff --git a/src/main/resources/view/ProjectListCard.fxml b/src/main/resources/view/ProjectListCard.fxml index 48d68e1eb79..4f1e3c9496c 100644 --- a/src/main/resources/view/ProjectListCard.fxml +++ b/src/main/resources/view/ProjectListCard.fxml @@ -29,7 +29,6 @@