From ad6f10990f417abde06a35a4573ccaa9cb119d34 Mon Sep 17 00:00:00 2001 From: Alteqa Date: Fri, 12 Apr 2024 18:36:01 +0800 Subject: [PATCH 1/7] Updatge DG --- docs/DeveloperGuide.md | 77 +++++++++++++++++- .../DeleteAppointmentActivityDiagram.puml | 2 +- .../EditAppointmentActivityDiagram.puml | 26 ++++++ .../EditAppointmentSequenceDiagram.puml | 65 +++++++++++++++ docs/diagrams/EditPersonActivityDiagram.puml | 26 ++++++ docs/diagrams/EditPersonSequenceDiagram.puml | 65 +++++++++++++++ .../images/EditAppointmentActivityDiagram.png | Bin 0 -> 43676 bytes .../images/EditAppointmentSequenceDiagram.png | Bin 0 -> 29674 bytes docs/images/EditPersonActivityDiagram.png | Bin 0 -> 49456 bytes docs/images/EditPersonSequenceDiagram.png | Bin 0 -> 26927 bytes 10 files changed, 259 insertions(+), 2 deletions(-) create mode 100644 docs/diagrams/EditAppointmentActivityDiagram.puml create mode 100644 docs/diagrams/EditAppointmentSequenceDiagram.puml create mode 100644 docs/diagrams/EditPersonActivityDiagram.puml create mode 100644 docs/diagrams/EditPersonSequenceDiagram.puml create mode 100644 docs/images/EditAppointmentActivityDiagram.png create mode 100644 docs/images/EditAppointmentSequenceDiagram.png create mode 100644 docs/images/EditPersonActivityDiagram.png create mode 100644 docs/images/EditPersonSequenceDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 5eab1d430e4..b657b0dbb30 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -196,10 +196,47 @@ The sequence diagram below closely describes the interaction between the various * Pros: Better performance, since this only requires searching through the person list once. * Cons: The order of person list will be lost, since `Name` of a `Person` may be edited. + +### Edit `doctor` or `patient` + +Edits a `doctor` or `patient` entry by indicating their `Index`. +This command is implemented through the `EditCommand` class which extends the `Command` class. + +* Step 1. User enters an `edit` command. +* Step 2. The `AddressBookParser` will call `parseCommand` on the user's input string and return an instance of `editCommandParser`. +* Step 3. The `parse` command in `editCommandParser` calls `ParserUtil` to create instances of objects for each of the fields. + * If there are any missing fields, a `CommandException` is thrown. + * If input arguments does not match contraints for the fields, a `IllegalArgumentException` is thrown. + * If the provided `index` is invalid, a `CommandException` is thrown. + +The activity diagram below demonstrates this error handling process in more detail. + + + +* Step 4. The `parse` command in `editCommandParser` return an instance of `editCommand`. +* Step 5. The `LogicManager` calls the `execute` method in `editCommand`. +* Step 6. The `execute` method in `editCommand` executes and creates a new edited person. +* Step 6. The `execute` method in `editCommand` calls the `setPerson` in model to update the details of the respective person. +* Step 7. The `execute` method in `editCommand` also iterates through the `ObservableList` and retrieves all appointments that have the person to be edited, and calls the `setDoctorNric` or `setPatientNric` methods to update all relevant appointments related to the patient or doctor. +* Step 8. Success message gets printed onto the results display to notify user. + +The sequence diagram below closely describes the interaction between the various components during the execution of the `DeleteCommand`. + + + + +Why is this implemented this way? +1. Making both `Doctor` and `Patient` class extend the `Person` class makes it easier to execute edit operations. +2. `Doctor` and `Patient` all exhibit similar qualities, and thus can inherit from the `Person` superclass. +3. Eliminates the need for separate edit commands for doctor and patient. +4. Since appointments are constructed with unique `Person` `Nric` fields, it does not make sense to have an appointment that does not have valid or outdated doctor or patient entries. +5. As such, the solution that is inbuilt to editing a `Person`, comes with the added functionality on the backend to augment all related `Appointment` entries as well. +6. This results in an updated `Appointments` panel, and saves the user from the hassle of needing to manually edit outdated `Appointment` entries one by one. + ### Delete `doctor` or `patient` Deletes a `doctor` or `patient` entry by indicating their `Index`. -This command is implemented through the `DeleteCommand` class which extend the `Command` class. +This command is implemented through the `DeleteCommand` class which extends the `Command` class. * Step 1. User enters an `delete` command. * Step 2. The `AddressBookParser` will call `parseCommand` on the user's input string and return an instance of `deleteCommandParser`. @@ -284,6 +321,44 @@ The sequence diagram below closely describes the interaction between the various * Furthermore, it might get confusing for the user if everything was dumped into the same list of them to sieve through. Perhaps the user was only concerned with looking up patients in which case the appointments would simple be added clutter. * The increased level of integration would also be problems for implementation and testing as existing functionality would have to be adapated exposing the system to more risks and potential for bugs. Eg: the classes would have to change from `Person` to `Entry` in a number of different places. + +### Edit `Appointment` +Edits an `Appointment` entry by indicating their `Index`. +This command is implemented through the `EditAppointmentCommand` class which extend the `Command` class. + +* Step 1. User enters an `editappt` command. +* Step 2. The `AddressBookParser` will call `parseCommand` on the user's input string and return an instance of `editAppointmentCommandParser`. +* Step 3. The `parse` command in `editAppointmentCommandParser` calls `ParserUtil` to create instances of objects for each of the fields. + * If there are any missing fields, a `CommandException` is thrown. + * If input arguments does not match contraints for the fields, a `IllegalArgumentException` is thrown. + * If the provided `index` is invalid, a `CommandException` is thrown. + +The activity diagram below demonstrates this error handling process in more detail. + + + +* Step 4. The `parse` command in `editAppointmentCommandParser` return an instance of `editAppointmentCommand`. +* Step 5. The `LogicManager` calls the `execute` method in `editAppointmentCommand`. +* Step 6. The `execute` method in `editAppointmentCommand` executes and calls `setAppointment` in model to set an updated appointment into the system. +* Step 7. Success message gets printed onto the results display to notify user. + +The sequence diagram below closely describes the interaction between the various components during the execution of the `DeleteAppointmentCommand`. + + + +Why is this implemented this way? +1. The `Appointment` class has very similar functionalities to that of the `Person` class, in which both classes deal with edit operations. +2. Furthermore on the UI, the `Appointment` column runs parallel to the `Person` column, as such, the behaviours (UX) of operating on the `Person` panel should have a similar feel and experience when dealing with `Appointment` objects. +3. This parallelism is also reflected in the backend code, and hence is very similar to how editing a `Person` is implemented - this is mostly seen through the naming conventions of the classes related to `EditPerson`, such as `EditAppointment` +4. This results in a more familiar experience for both users and developers alike as there is familiarity and some level of consistency when dealing with `Person` and `Appointment` classes. + +Alternative implementation for consideration +1. Since both classes exhibit similarities in both code structure and behaviour, we might consider creating a generic class distinguished between `Person` and `Appointment` via enums to handle edits. +2. This will centralise the behaviours, and reduce the amount of code needed to perform the edit function. + 3. A further extension is to do so with all other overlapping functionalities, such as `add` or `delete`, however we leave that possibility for future discussion and refinement. + + + ### Delete `Appointment` Deletes an `Appointment` entry by indicating their `Index`. This command is implemented through the `DeleteAppointmentCommand` class which extend the `Command` class. diff --git a/docs/diagrams/DeleteAppointmentActivityDiagram.puml b/docs/diagrams/DeleteAppointmentActivityDiagram.puml index bfb016082ef..ebaaabe7790 100644 --- a/docs/diagrams/DeleteAppointmentActivityDiagram.puml +++ b/docs/diagrams/DeleteAppointmentActivityDiagram.puml @@ -4,7 +4,7 @@ skinparam ActivityFontSize 15 skinparam ArrowFontSize 12 start -:User enters command to appointment; +:User enters command to delete appointment; if () then ([command is invalid]) :Show error message\nfor invalid command; diff --git a/docs/diagrams/EditAppointmentActivityDiagram.puml b/docs/diagrams/EditAppointmentActivityDiagram.puml new file mode 100644 index 00000000000..54066f7aab1 --- /dev/null +++ b/docs/diagrams/EditAppointmentActivityDiagram.puml @@ -0,0 +1,26 @@ +@startuml +skin rose +skinparam ActivityFontSize 15 +skinparam ArrowFontSize 12 + +start +:User enters command to edit appointment; + +if () then ([command is invalid]) + :Show error message\nfor invalid command; +else ([else]) + if () then ([missing required fields]) + :Show error message\nfor missing required fields; + else ([else]) + if () then ([Invalid appointment index detected]) + :Show error message\nindicating invalid Appointment index; + else ([else]) + :edit appointment\nin the appointment list; + :Update the 'appointment' panel\nin the GUI; + :Show success message\nwith edited appointment information; + endif; + endif +endif + +stop +@enduml diff --git a/docs/diagrams/EditAppointmentSequenceDiagram.puml b/docs/diagrams/EditAppointmentSequenceDiagram.puml new file mode 100644 index 00000000000..02e383cee56 --- /dev/null +++ b/docs/diagrams/EditAppointmentSequenceDiagram.puml @@ -0,0 +1,65 @@ +@startuml +!include style.puml +skinparam ArrowFontStyle plain + +box Logic LOGIC_COLOR_T1 +participant ":LogicManager" as LogicManager LOGIC_COLOR +participant ":AddressBookParser" as AddressBookParser LOGIC_COLOR +participant ":EditAppointmentCommandParser" as EditAppointmentCommandParser LOGIC_COLOR +participant "e:EditAppointmentCommand" as EditAppointmentCommand LOGIC_COLOR +participant ":CommandResult" as CommandResult LOGIC_COLOR +end box + +box Model MODEL_COLOR_T1 +participant ":Model" as Model MODEL_COLOR +end box + +[-> LogicManager : execute("editappt i/...") +activate LogicManager + +LogicManager -> AddressBookParser : parseCommand("editappt i/...") +activate AddressBookParser + +create EditAppointmentCommandParser +AddressBookParser -> EditAppointmentCommandParser +activate EditAppointmentCommandParser + +create EditAppointmentCommand +EditAppointmentCommandParser -> EditAppointmentCommand : : parse("editappt i/...") +activate EditAppointmentCommand + +EditAppointmentCommand --> EditAppointmentCommandParser +deactivate EditAppointmentCommand + +EditAppointmentCommandParser --> AddressBookParser +deactivate EditAppointmentCommandParser + +'Hidden arrow to position the destroy marker below the end of the activation bar. +EditAppointmentCommandParser -[hidden]-> AddressBookParser +destroy EditAppointmentCommandParser + +AddressBookParser --> LogicManager +deactivate AddressBookParser + +LogicManager -> EditAppointmentCommand : execute() +activate EditAppointmentCommand + +EditAppointmentCommand -> Model : setAppointment(toEdit) +activate Model + +Model --> EditAppointmentCommand +deactivate Model + +create CommandResult +EditAppointmentCommand -> CommandResult +activate CommandResult + +CommandResult --> EditAppointmentCommand : result +deactivate CommandResult + +EditAppointmentCommand --> LogicManager : result +deactivate EditAppointmentCommand + +[<--LogicManager +deactivate LogicManager +@enduml diff --git a/docs/diagrams/EditPersonActivityDiagram.puml b/docs/diagrams/EditPersonActivityDiagram.puml new file mode 100644 index 00000000000..5611c189610 --- /dev/null +++ b/docs/diagrams/EditPersonActivityDiagram.puml @@ -0,0 +1,26 @@ +@startuml +skin rose +skinparam ActivityFontSize 15 +skinparam ArrowFontSize 12 + +start +:User enters command to edit doctor or patient; + +if () then ([command is invalid]) + :Show error message\nfor invalid command; +else ([else]) + if () then ([missing required fields]) + :Show error message\nfor missing required fields; + else ([else]) + if () then ([Invalid person index detected]) + :Show error message\nindicating invalid Person index; + else ([else]) + :Edit patient/doctor\nfrom the persons list\nalso updates any appointments\nassociated with the edited patient/doctor; + :Update the 'person' panel\nand appointments panel\n in the GUI; + :Show success message\nwith edited doctor/patient information; + endif; + endif +endif + +stop +@enduml diff --git a/docs/diagrams/EditPersonSequenceDiagram.puml b/docs/diagrams/EditPersonSequenceDiagram.puml new file mode 100644 index 00000000000..3febefb3602 --- /dev/null +++ b/docs/diagrams/EditPersonSequenceDiagram.puml @@ -0,0 +1,65 @@ +@startuml +!include style.puml +skinparam ArrowFontStyle plain + +box Logic LOGIC_COLOR_T1 +participant ":LogicManager" as LogicManager LOGIC_COLOR +participant ":AddressBookParser" as AddressBookParser LOGIC_COLOR +participant ":EditCommandParser" as EditCommandParser LOGIC_COLOR +participant "e:EditCommand" as EditCommand LOGIC_COLOR +participant ":CommandResult" as CommandResult LOGIC_COLOR +end box + +box Model MODEL_COLOR_T1 +participant ":Model" as Model MODEL_COLOR +end box + +[-> LogicManager : execute("edit i/...") +activate LogicManager + +LogicManager -> AddressBookParser : parseCommand("edit i/...") +activate AddressBookParser + +create EditCommandParser +AddressBookParser -> EditCommandParser +activate EditCommandParser + +create EditCommand +EditCommandParser -> EditCommand : : parse("edit i/...") +activate EditCommand + +EditCommand --> EditCommandParser +deactivate EditCommand + +EditCommandParser --> AddressBookParser +deactivate EditCommandParser + +'Hidden arrow to position the destroy marker below the end of the activation bar. +EditCommandParser -[hidden]-> AddressBookParser +destroy EditCommandParser + +AddressBookParser --> LogicManager +deactivate AddressBookParser + +LogicManager -> EditCommand : execute() +activate EditCommand + +EditCommand -> Model : setPerson(toEdit) +activate Model + +Model --> EditCommand +deactivate Model + +create CommandResult +EditCommand -> CommandResult +activate CommandResult + +CommandResult --> EditCommand : result +deactivate CommandResult + +EditCommand --> LogicManager : result +deactivate EditCommand + +[<--LogicManager +deactivate LogicManager +@enduml diff --git a/docs/images/EditAppointmentActivityDiagram.png b/docs/images/EditAppointmentActivityDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..0d614dfee6f9600e18f828cd288397b00ea05212 GIT binary patch literal 43676 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 WTw7x-@7;v4gylBdtr=SmhW`$E`8G%Z literal 0 HcmV?d00001 diff --git a/docs/images/EditAppointmentSequenceDiagram.png b/docs/images/EditAppointmentSequenceDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..b62244b81dc42227b228e26dc0f25e10186356ee GIT binary patch literal 29674 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 literal 0 HcmV?d00001 From 15b7f165d6cd8e6177aebd26d60d0074c004c151 Mon Sep 17 00:00:00 2001 From: Alteqa Date: Fri, 12 Apr 2024 20:37:24 +0800 Subject: [PATCH 2/7] Fix DG errors --- docs/DeveloperGuide.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index b657b0dbb30..37c1440e0e5 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -220,7 +220,7 @@ The activity diagram below demonstrates this error handling process in more deta * Step 7. The `execute` method in `editCommand` also iterates through the `ObservableList` and retrieves all appointments that have the person to be edited, and calls the `setDoctorNric` or `setPatientNric` methods to update all relevant appointments related to the patient or doctor. * Step 8. Success message gets printed onto the results display to notify user. -The sequence diagram below closely describes the interaction between the various components during the execution of the `DeleteCommand`. +The sequence diagram below closely describes the interaction between the various components during the execution of the `EditCommand`. @@ -324,7 +324,7 @@ The sequence diagram below closely describes the interaction between the various ### Edit `Appointment` Edits an `Appointment` entry by indicating their `Index`. -This command is implemented through the `EditAppointmentCommand` class which extend the `Command` class. +This command is implemented through the `EditAppointmentCommand` class which extends the `Command` class. * Step 1. User enters an `editappt` command. * Step 2. The `AddressBookParser` will call `parseCommand` on the user's input string and return an instance of `editAppointmentCommandParser`. @@ -337,12 +337,12 @@ The activity diagram below demonstrates this error handling process in more deta -* Step 4. The `parse` command in `editAppointmentCommandParser` return an instance of `editAppointmentCommand`. +* Step 4. The `parse` command in `editAppointmentCommandParser` returns an instance of `editAppointmentCommand`. * Step 5. The `LogicManager` calls the `execute` method in `editAppointmentCommand`. * Step 6. The `execute` method in `editAppointmentCommand` executes and calls `setAppointment` in model to set an updated appointment into the system. * Step 7. Success message gets printed onto the results display to notify user. -The sequence diagram below closely describes the interaction between the various components during the execution of the `DeleteAppointmentCommand`. +The sequence diagram below closely describes the interaction between the various components during the execution of the `EditAppointmentCommand`. @@ -355,7 +355,7 @@ Why is this implemented this way? Alternative implementation for consideration 1. Since both classes exhibit similarities in both code structure and behaviour, we might consider creating a generic class distinguished between `Person` and `Appointment` via enums to handle edits. 2. This will centralise the behaviours, and reduce the amount of code needed to perform the edit function. - 3. A further extension is to do so with all other overlapping functionalities, such as `add` or `delete`, however we leave that possibility for future discussion and refinement. +3. A further extension is to do so with all other overlapping functionalities, such as `add` or `delete`, however we leave that possibility for future discussion and refinement. From e0c835ae71230d0a3046630a85c24fe02dbeed10 Mon Sep 17 00:00:00 2001 From: Alteqa Date: Fri, 12 Apr 2024 20:42:03 +0800 Subject: [PATCH 3/7] UG updates 1 --- docs/UserGuide.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 8a8fc60f555..63bc1a53fbf 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -171,13 +171,13 @@ Examples: ### Editing an appointment: `editappt` Edits an existing person in the MediCLI system. -Format: `editappt INDEX ad/DATE` +Format: `editappt INDEX ad/DATETIME` * Edits the appointment at the specified `INDEX`. The index refers to the index number shown in the displayed appointment list. The index **must be a positive integer** 1, 2, 3, …​ * Existing values will be updated to the input values. Field Constraints: -* **DATE** : Input must be in the format `yyyy-MM-dd HH:MM`. Specified date must be >= current date and time. i.e. appointment cannot be scheduled in the past. +* **DATETIME** : Input must be in the format `yyyy-MM-dd HH:MM`. Specified date must be later than the current date and time. i.e. appointment cannot be scheduled in the past. Examples: From 99793da5cbeb9a5f1a453d58b1c02aa56f2eacdb Mon Sep 17 00:00:00 2001 From: Alteqa Date: Fri, 12 Apr 2024 20:43:27 +0800 Subject: [PATCH 4/7] Update UG --- docs/UserGuide.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 63bc1a53fbf..c4f1d734b18 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -124,15 +124,15 @@ Examples: Adds an appointment to MediCLI. Appointments are between a doctor with the specified `DOCTOR_NRIC` and a patient with the `PATIENT_NRIC` on a specific date and time. Note that while you cannot create a new appointment with the date/time in the past, appointments that were valid when created but are now past their date will be allowed to remain in the system. This is an intended feature to allow the hospital admins to track a patient/doctors past appointments. -Format: `addappt ad/DATE dn/DOCTOR_NRIC pn/PATIENT_NRIC` +Format: `addappt ad/DATETIME dn/DOCTOR_NRIC pn/PATIENT_NRIC` Field Constraints: -- `DATE`: Input must be in the format `yyyy-MM-dd HH:MM`. Specified date must be >= current date and time. i.e. appointment cannot be scheduled in the past. +- `DATETIME`: Input must be in the format `yyyy-MM-dd HH:MM`. Specified date must be later than the current date and time. i.e. appointment cannot be scheduled in the past. - `DOCTOR_NRIC`: Follows the correct Singapore NRIC format. Begin with one of S, T, G, F, or M, followed by 7 numerical digits, then ended by an alphabetical letter. This field is non-case-sensitive. - `PATIENT_NRIC`: Follows the correct Singapore NRIC format. Begin with one of S, T, G, F, or M, followed by 7 numerical digits, then ended by an alphabetical letter. This field is non-case-sensitive. Command Constraints: -- All of the above fields (`DATE`, `DOCTOR_NRIC`, `PATIENT_NRIC`) are compulsory and must be non-empty. +- All of the above fields (`DATETIME`, `DOCTOR_NRIC`, `PATIENT_NRIC`) are compulsory and must be non-empty. - A doctor with the specified `DOCTOR_NRIC` must already exist in the MediCLI System. - A patient with the specified `PATIENT_NRIC` must already exist in the MediCLI System. From 26eec796a20dce9a6202383cce6b2aed31bedb6e Mon Sep 17 00:00:00 2001 From: Alteqa Date: Fri, 12 Apr 2024 21:12:30 +0800 Subject: [PATCH 5/7] Update index.md --- docs/index.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/index.md b/docs/index.md index 7601dbaad0d..8494ebd01cb 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,6 +1,6 @@ --- layout: page -title: AddressBook Level-3 +title: MediCLI --- [![CI Status](https://github.com/se-edu/addressbook-level3/workflows/Java%20CI/badge.svg)](https://github.com/se-edu/addressbook-level3/actions) @@ -8,10 +8,10 @@ title: AddressBook Level-3 ![Ui](images/Ui.png) -**AddressBook is a desktop application for managing your contact details.** While it has a GUI, most of the user interactions happen using a CLI (Command Line Interface). +**MediCLI is a desktop application for managing your contact details.** While it has a GUI, most of the user interactions happen using a CLI (Command Line Interface). -* If you are interested in using AddressBook, head over to the [_Quick Start_ section of the **User Guide**](UserGuide.html#quick-start). -* If you are interested about developing AddressBook, the [**Developer Guide**](DeveloperGuide.html) is a good place to start. +* If you are interested in using MediCLI, head over to the [_Quick Start_ section of the **User Guide**](UserGuide.html#quick-start). +* If you are interested about developing MediCLI, the [**Developer Guide**](DeveloperGuide.html) is a good place to start. **Acknowledgements** From eb80a11661cff34fd0879136ae68b278ad8957da Mon Sep 17 00:00:00 2001 From: Alteqa Date: Fri, 12 Apr 2024 22:01:43 +0800 Subject: [PATCH 6/7] Fix UG issues --- docs/UserGuide.md | 51 ++++++++++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index c4f1d734b18..6ce858545f9 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -3,7 +3,7 @@ layout: page title: User Guide --- -MediCLI is a **desktop app for managing persons involved in a hospital, optimized for use via a Command Line Interface** (CLI) while still having the benefits of a Graphical User Interface (GUI). Targeted at fast typing hospital clerks, MediCLI allows them to manage doctors, patients and appointments faster than traditional GUI apps. +MediCLI is a **desktop app for managing persons involved in a hospital, optimised for use via a Command Line Interface** (CLI) while still having the benefits of a Graphical User Interface (GUI). Targeted at fast typing hospital clerks, MediCLI allows them to manage doctors, patients and appointments faster than traditional GUI apps. * Table of Contents {:toc} @@ -45,14 +45,14 @@ MediCLI is a **desktop app for managing persons involved in a hospital, optimize **:information_source: Notes about the command format:**
-* 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`. +* Words in `UPPER_CASE` are the parameters to be supplied by you.
+ e.g. in `addpatient i/NRIC n/NAME d/DOB p/PHONE`, `NAME` is a parameter which can be used as `n/John Doe`. * Items in square brackets are optional.
- e.g `edit INDEX [n/NAME] [p/PHONE]` can be used as `edit 1 n/John Doe` or as `edit 1 p/91234567`. + e.g `edit INDEX [i/NRIC] [n/NAME] [p/PHONE] [d/DOB]` can be used as `edit 1 n/John Doe` or as `edit 1 i/t1234567s`. * 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. + e.g. if the command specifies `n/NAME p/PHONE`, `p/PHONE n/NAME` is also acceptable. * Extraneous parameters for commands that do not take in parameters (such as `help`, `list`, `exit` and `clear`) will be ignored.
e.g. if the command specifies `help 123`, it will be interpreted as `help`. @@ -97,7 +97,7 @@ Examples: ![add_patient_result](images/addPatient.png) -### Adding a Doctor: `adddoctor` +### Adding a Doctor : `adddoctor` Adds a doctor into the MediCLI system. @@ -120,16 +120,16 @@ Examples: ![add_doctor_result](images/addDoctor.png) -### Adding an appointment: `addappt` +### Adding an appointment : `addappt` Adds an appointment to MediCLI. Appointments are between a doctor with the specified `DOCTOR_NRIC` and a patient with the `PATIENT_NRIC` on a specific date and time. -Note that while you cannot create a new appointment with the date/time in the past, appointments that were valid when created but are now past their date will be allowed to remain in the system. This is an intended feature to allow the hospital admins to track a patient/doctors past appointments. +Note that while you cannot create a new appointment with the date and time in the past, appointments that were valid when created but are now past their date and time will be allowed to remain in the system. This is an intended feature to allow the hospital admins to track a patient/doctors past appointments. Format: `addappt ad/DATETIME dn/DOCTOR_NRIC pn/PATIENT_NRIC` Field Constraints: -- `DATETIME`: Input must be in the format `yyyy-MM-dd HH:MM`. Specified date must be later than the current date and time. i.e. appointment cannot be scheduled in the past. -- `DOCTOR_NRIC`: Follows the correct Singapore NRIC format. Begin with one of S, T, G, F, or M, followed by 7 numerical digits, then ended by an alphabetical letter. This field is non-case-sensitive. -- `PATIENT_NRIC`: Follows the correct Singapore NRIC format. Begin with one of S, T, G, F, or M, followed by 7 numerical digits, then ended by an alphabetical letter. This field is non-case-sensitive. +- **DATETIME**: Input must be in the format `yyyy-MM-dd HH:MM`. Specified date and time must be later than the current date and time. i.e. appointment cannot be scheduled in the past. +- **DOCTOR_NRIC**: Follows the correct Singapore NRIC format. Begin with one of S, T, G, F, or M, followed by 7 numerical digits, then ended by an alphabetical letter. This field is non-case-sensitive. +- **PATIENT_NRIC**: Follows the correct Singapore NRIC format. Begin with one of S, T, G, F, or M, followed by 7 numerical digits, then ended by an alphabetical letter. This field is non-case-sensitive. Command Constraints: - All of the above fields (`DATETIME`, `DOCTOR_NRIC`, `PATIENT_NRIC`) are compulsory and must be non-empty. @@ -142,7 +142,7 @@ Examples: ![add_appointment_result](images/addAppointment.png) -### Editing a person: `edit` +### Editing a person : `edit` Edits an existing person in the MediCLI system. @@ -152,6 +152,7 @@ Format: `edit INDEX [i/NRIC] [n/NAME] [p/PHONE] [d/DOB]` * At least one of the optional fields must be provided. * Existing values will be updated to the input values. * Note that editing a patient or doctor and not changing any of the values of the parameters is allowed and is considered a valid edit by the system. +* Note that editing a patient or doctor will recursively update the relevant details of all appointments related to the patient or doctor. Field Constraints: * **NRIC** : Follows the correct Singapore NRIC format. Begin with one of S, T, G, F, or M, followed by 7 numerical digits, then ended by an alphabetical letter. This field is non-case-sensitive. @@ -168,8 +169,8 @@ Examples: ![add_appointment_result](images/editPerson.png) -### Editing an appointment: `editappt` -Edits an existing person in the MediCLI system. +### Editing an appointment : `editappt` +Edits an existing appointment in the MediCLI system. Format: `editappt INDEX ad/DATETIME` @@ -177,15 +178,15 @@ Format: `editappt INDEX ad/DATETIME` * Existing values will be updated to the input values. Field Constraints: -* **DATETIME** : Input must be in the format `yyyy-MM-dd HH:MM`. Specified date must be later than the current date and time. i.e. appointment cannot be scheduled in the past. +* **DATETIME** : Input must be in the format `yyyy-MM-dd HH:MM`. Specified date and time must be later than the current date and time. i.e. appointment cannot be scheduled in the past. Examples: -* `editappt 1 ad/2024-04-09 11:00` Edits the appointment date of the first appointment in the appointment list to `2024-04-09 11:00` +* `editappt 1 ad/2024-04-09 11:00` Edits the appointment date and time of the first appointment in the appointment list to `2024-04-09 11:00` ![add_appointment_result](images/editAppointment.png) -### Querying persons by name: `patient` +### Querying persons by name : `patient` Finds `Patient`(s) whose details contain any of the given keywords. @@ -206,7 +207,7 @@ Examples: ![result for 'patient alex david'](images/findAlexDavidResultPatient.png) -### Querying persons by name: `doctor` +### Querying persons by name : `doctor` Finds `Doctors`(s) whose details contain any of the given keywords. @@ -218,7 +219,7 @@ Command Constraints: * The order of the keywords does not matter. e.g. `Hans Bo` will match `Bo Hans` * All person fields are searched and matched (Name, NRIC, Phone Number, DoB). * Both full words and substrings will be matched e.g. `Han` will match `Hans` -* Doctors matching at least one keyword will be returned (i.e. `OR` search). +* Doctors matching at least one keyword will be returned (i.e. logical 'or' search). e.g. `Hans Bo` will return `Hans Gruber`, `Bo Yang` Examples: @@ -227,7 +228,7 @@ Examples: ![result for 'doctor alex david'](images/findAlexDavidResultDoctor.png) -### Querying appointments by NRIC `apptforpatient` +### Querying appointments by NRIC : `apptforpatient` Format: `apptforpatient KEYWORD [MORE_KEYWORDS]` @@ -249,7 +250,7 @@ Example: ![result for 'apptforpatient S0123456A'](images/findAppointmentResultPatient.png) -### Querying appointments by NRIC `apptfordoctor` +### Querying appointments by NRIC : `apptfordoctor` Format: `apptfordoctor KEYWORD [MORE_KEYWORDS]` @@ -274,7 +275,7 @@ Example: ### Deleting a doctor or patient : `delete` -Deletes the specified doctor / patient from the mediCLI system. **Note that all associated appointments with this doctor / patient will also be recursively deleted.** Please exercise caution when using the delete command and removing a patient or a doctor from MediCLI, as this action cannot be undone. +Deletes the specified doctor / patient from the MediCLI system. **Note that all associated appointments with this doctor / patient will also be recursively deleted.** Please exercise caution when using the delete command and removing a patient or a doctor from MediCLI, as this action cannot be undone. * Deletes the doctor / patient at the specified `INDEX`. * The index refers to the index number shown in the displayed doctor and patient list. @@ -289,7 +290,7 @@ Examples: ### Deleting appointment : `deleteappt` -Deletes the specified appointment from the mediCLI system. +Deletes the specified appointment from the MediCLI system. Format: `deleteappt INDEX` @@ -356,11 +357,11 @@ Action | Format, Examples --------|------------------ **Add Patient** | `addpatient i/NRIC n/NAME d/DOB p/PHONE_NUMBER`
e.g., `addpatient i/S1234567A n/John Doe d/2003-01-30 p/98765432` **Add Doctor** | `adddoctor i/NRIC n/NAME d/DOB p/PHONE_NUMBER`
e.g., `adddoctor i/S1234567A n/John Doe d/2003-01-30 p/98765432` -**Add Appointment** | `addappt ad/DATE dn/DOCTOR_NRIC pn/PATIENT_NRIC`
e.g., `addappt ad/2024-08-11 23:50 dn/S1234567A pn/S1234567B` +**Add Appointment** | `addappt ad/DATETIME dn/DOCTOR_NRIC pn/PATIENT_NRIC`
e.g., `addappt ad/2024-08-11 23:50 dn/S1234567A pn/S1234567B` **Clear** | `clear` **Delete Person** | `delete INDEX`
e.g., `delete 3` **Delete Appointment** | `deleteappt INDEX`
e.g., `deleteappt 3` -**Edit Appointment** | `editappt INDEX ad/DATE`
e.g.,`editappt 1 ad/2024-04-09` +**Edit Appointment** | `editappt INDEX ad/DATETIME`
e.g.,`editappt 1 ad/2024-04-09 10:10` **Edit Person** | `edit INDEX [n/NAME] [p/PHONE] [i/NRIC] [d/DOB]`
e.g.,`edit 1 p/91234567 n/Betsy Crower` **Exit** | `exit` **Query Patient** | `patient KEYWORD [MORE_KEYWORDS]`
e.g., `patient James Jake` From a152f332722fd2f5eae68671679adb362bfcada9 Mon Sep 17 00:00:00 2001 From: Alteqa Date: Fri, 12 Apr 2024 22:05:40 +0800 Subject: [PATCH 7/7] Update ug 2 --- docs/UserGuide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 6ce858545f9..684ebb7d835 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -182,7 +182,7 @@ Field Constraints: Examples: -* `editappt 1 ad/2024-04-09 11:00` Edits the appointment date and time of the first appointment in the appointment list to `2024-04-09 11:00` +* `editappt 1 ad/2025-04-09 11:00` Edits the appointment date and time of the first appointment in the appointment list to `2024-04-09 11:00` ![add_appointment_result](images/editAppointment.png)