Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Branch add appointment #218

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
123 commits
Select commit Hold shift + click to select a range
24b82af
Abstract out person class
chonguschonguschongus Oct 26, 2023
3dc4230
Make JsonAdaptedPerson abstract
chonguschonguschongus Oct 26, 2023
a3b15f1
Merge branch 'master' into branch-makePersonAbstract
chonguschonguschongus Oct 27, 2023
66f360c
Make Person class abstract
chonguschonguschongus Oct 29, 2023
97d9816
Merge pull request #123 from chonguschonguschongus/branch-makePersonA…
Mohammed-Faizzzz Oct 29, 2023
90091dd
Improve code coverage
chonguschonguschongus Oct 30, 2023
c4a2af8
Improve code coverage
chonguschonguschongus Oct 30, 2023
fcf5b12
Fix checkstyle
chonguschonguschongus Oct 30, 2023
15468f7
Improve code coverage
chonguschonguschongus Oct 31, 2023
97dd5a5
Fix checkstyle
chonguschonguschongus Oct 31, 2023
e354460
Fix checkstyle
chonguschonguschongus Oct 31, 2023
2d6c39b
Merge branch 'master' of https://github.com/AY2324S1-CS2103T-T09-3/tp
tanveersingh10 Oct 31, 2023
9dadee1
Add logs and assertions
tanveersingh10 Oct 31, 2023
bf65f60
Add logs and assertions
tanveersingh10 Oct 31, 2023
9177566
Add more assertions
tanveersingh10 Oct 31, 2023
d8fcf5b
Fix code quality
chonguschonguschongus Oct 31, 2023
161010c
Fix checkstyle
chonguschonguschongus Oct 31, 2023
c68176d
Merge pull request #125 from chonguschonguschongus/branch-improveCode…
chonguschonguschongus Oct 31, 2023
bcced88
Merge branch 'master' of github.com:tanveersingh10/tp
tanveersingh10 Oct 31, 2023
4540292
Fix error
tanveersingh10 Oct 31, 2023
45f4d28
Merge branch 'master' into master
tanveersingh10 Oct 31, 2023
b6c83f5
Merge pull request #126 from tanveersingh10/master
tanveersingh10 Oct 31, 2023
70c6692
Fix merge conflicts
chonguschonguschongus Nov 1, 2023
d4e55ca
Merge branch 'master' into branch-addDeleteAppointment
chonguschonguschongus Nov 1, 2023
775cd2d
Fix test cases
chonguschonguschongus Nov 1, 2023
53c68d5
Merge branch 'branch-addDeleteAppointment' of https://github.com/chon…
chonguschonguschongus Nov 1, 2023
d3c108a
Fix test cases
chonguschonguschongus Nov 1, 2023
83c53bc
Merge pull request #134 from chonguschonguschongus/branch-fixMergeCon…
Mohammed-Faizzzz Nov 1, 2023
0c130d3
Merge branch 'master' of https://github.com/AY2324S1-CS2103T-T09-3/tp
tanveersingh10 Nov 1, 2023
d8120d7
Modify EditCommand and RemarkCommand
tanveersingh10 Nov 1, 2023
335e950
Added a log message
tanveersingh10 Nov 1, 2023
a6573bf
Modify AddAppointmentCommand
tanveersingh10 Nov 1, 2023
96617a6
Refactor files to allow for a UniqueAppointmentList
chonguschonguschongus Nov 1, 2023
586411e
Fix Ui issue
chonguschonguschongus Nov 1, 2023
f9feac0
Fix some test cases
chonguschonguschongus Nov 1, 2023
ca0d87c
Merge pull request #147 from chonguschonguschongus/branch-addAppointm…
chonguschonguschongus Nov 2, 2023
ae4b669
Merge branch 'master' into master
tanveersingh10 Nov 2, 2023
a1dd082
Merge pull request #144 from tanveersingh10/master
tanveersingh10 Nov 2, 2023
1839f89
Merge branch 'master' of https://github.com/AY2324S1-CS2103T-T09-3/tp
tanveersingh10 Nov 2, 2023
8486475
Add DeleteAppointment command
chonguschonguschongus Nov 2, 2023
4b8c4ee
Fix checkstyle
chonguschonguschongus Nov 2, 2023
369236f
Prevent editing IC
tanveersingh10 Nov 2, 2023
ddf47f6
Merge pull request #148 from chonguschonguschongus/branch-deleteAppoi…
chonguschonguschongus Nov 2, 2023
053aa58
Add function to find Appointments by ICs of those involved:
chonguschonguschongus Nov 2, 2023
1e63e32
Merge branch 'master' of https://github.com/AY2324S1-CS2103T-T09-3/tp
tanveersingh10 Nov 2, 2023
8c330cc
Merge pull request #151 from chonguschonguschongus/branch-findAppoint…
chonguschonguschongus Nov 2, 2023
a4f40f4
Merge branch 'master' of https://github.com/AY2324S1-CS2103T-T09-3/tp
tanveersingh10 Nov 2, 2023
6982e55
Add UG for find-appt
tanveersingh10 Nov 2, 2023
8b0faac
Fix mistake in UG
tanveersingh10 Nov 2, 2023
5063b9d
Enhance looks and feel of Ui
chonguschonguschongus Nov 2, 2023
e394926
Fix checkstyle
chonguschonguschongus Nov 2, 2023
1688882
Update UG
chonguschonguschongus Nov 2, 2023
7e6ac84
Merge pull request #152 from chonguschonguschongus/branch-enhanceUi
chonguschonguschongus Nov 2, 2023
332ab00
Add special tags for doctors and patients
kohkaijie Nov 2, 2023
2444918
Add test cases for AddAppointment
cmHuang777 Nov 2, 2023
4709e52
Update branch with master
cmHuang777 Nov 2, 2023
2fb5d81
Merge branch 'master' into master
kohkaijie Nov 2, 2023
2f1dc7e
Merge pull request #149 from tanveersingh10/master
kohkaijie Nov 2, 2023
e65f608
Update branch with master
cmHuang777 Nov 2, 2023
7150975
Merge branch 'master' into new-tags
kohkaijie Nov 2, 2023
b4af097
Update documentations
cmHuang777 Nov 2, 2023
95c4def
Fix checkstyle
cmHuang777 Nov 2, 2023
e1a06e0
Update UG for special tags
kohkaijie Nov 2, 2023
1da56dc
Merge pull request #153 from kohkaijie/new-tags
Mohammed-Faizzzz Nov 2, 2023
454fe44
Make final changes
Mohammed-Faizzzz Nov 2, 2023
52ac3e0
Resolve checkstyle issues
Mohammed-Faizzzz Nov 2, 2023
c7e2b78
Resolve checkstyle issues
Mohammed-Faizzzz Nov 2, 2023
4aaa067
Merge pull request #155 from kohkaijie/update-UG
Mohammed-Faizzzz Nov 3, 2023
c3e2044
Update branch with master
cmHuang777 Nov 3, 2023
e614bad
Modify Doctor/Patient Card to remove display of Appointments
Mohammed-Faizzzz Nov 3, 2023
aa92847
Update sample data for start up
cmHuang777 Nov 3, 2023
a680aaf
Update UG
Mohammed-Faizzzz Nov 3, 2023
a3e1823
Update Ui.png
Mohammed-Faizzzz Nov 3, 2023
fa45052
Fix tests
cmHuang777 Nov 3, 2023
94de0a5
Merge pull request #154 from cmHuang777/branch-AddAppointment
cmHuang777 Nov 3, 2023
0d08316
Minor bug fix
chonguschonguschongus Nov 3, 2023
ab4e12c
Fix checkstyle
chonguschonguschongus Nov 3, 2023
710d318
Merge branch 'master' of https://github.com/chonguschonguschongus/tp
chonguschonguschongus Nov 3, 2023
dac86db
Resolve Merge Conflicts
Mohammed-Faizzzz Nov 3, 2023
40fc163
Fix minor bug
chonguschonguschongus Nov 3, 2023
2c25460
Update UG
Mohammed-Faizzzz Nov 3, 2023
24daad7
Update UG
Mohammed-Faizzzz Nov 3, 2023
32af315
Resolve Merge conflicts in TestCases
Mohammed-Faizzzz Nov 3, 2023
469d3c9
Merge pull request #158 from chonguschonguschongus/branch-fixDeleteAp…
kohkaijie Nov 3, 2023
1bcabdd
Update UG
Mohammed-Faizzzz Nov 3, 2023
60ec3e9
Merge pull request #160 from Mohammed-Faizzzz/check
cmHuang777 Nov 3, 2023
0bf21f4
Merge branch 'master' of https://github.com/chonguschonguschongus/tp
chonguschonguschongus Nov 7, 2023
fea8167
Fix bug relating to sample data
kohkaijie Nov 8, 2023
2a0e0fc
Edit Develop Guide
kohkaijie Nov 8, 2023
b7bdecb
Update PPP
kohkaijie Nov 8, 2023
9fc8882
Add test cases for UniqueAppointmentList, UniqueDoctorList, UniquePat…
chonguschonguschongus Nov 8, 2023
a0f2059
Fix checkstyle
chonguschonguschongus Nov 8, 2023
4388dd9
Fix minor bug
kohkaijie Nov 8, 2023
8ee3751
Fix minor issues
cmHuang777 Nov 8, 2023
6f464c3
Update PPP
cmHuang777 Nov 8, 2023
004300e
Merge branch 'master' into UpdatePPP
cmHuang777 Nov 8, 2023
bf73f5f
Fix bug in set appointment
cmHuang777 Nov 8, 2023
c3e6662
Merge pull request #208 from kohkaijie/sample-date-bug-fix
kohkaijie Nov 9, 2023
21b41d0
Merge pull request #210 from cmHuang777/UpdatePPP
cmHuang777 Nov 9, 2023
105c600
Update PPP
chonguschonguschongus Nov 9, 2023
b9c4757
Merge pull request #209 from chonguschonguschongus/branch-addTestCases
chonguschonguschongus Nov 9, 2023
c07ab8a
Update PPP
Mohammed-Faizzzz Nov 9, 2023
2a387e5
Update UG
chonguschonguschongus Nov 9, 2023
499b211
Merge pull request #212 from chonguschonguschongus/branch-updateDocs
kohkaijie Nov 9, 2023
2be2c0a
Merge pull request #211 from Mohammed-Faizzzz/branch-UpdatePPP
kohkaijie Nov 9, 2023
3ad0124
Fix bugs from PE-D assigned issues
cmHuang777 Nov 9, 2023
67a44cb
Update branch with upstream
cmHuang777 Nov 9, 2023
60fb8c2
Merge branch 'master' of https://github.com/AY2324S1-CS2103T-T09-3/tp
tanveersingh10 Nov 10, 2023
0567824
remove remark command
tanveersingh10 Nov 10, 2023
09ce28d
Merge branch 'removeRemark'
tanveersingh10 Nov 10, 2023
ec2e75e
Fix duplicate doctors and patients
tanveersingh10 Nov 10, 2023
f061483
Fix adding of doctor and patient with same ic
tanveersingh10 Nov 10, 2023
e4f0ff4
Update UG
tanveersingh10 Nov 10, 2023
69090cc
Merge pull request #213 from cmHuang777/PE-D-BugFix
kohkaijie Nov 10, 2023
347d38c
Update PPP
tanveersingh10 Nov 10, 2023
4c68a8a
Merge pull request #214 from tanveersingh10/master
tanveersingh10 Nov 10, 2023
817193a
Update User Guide
kohkaijie Nov 10, 2023
5494749
Merge branch 'master' of https://github.com/kohkaijie/tp into ug-changes
kohkaijie Nov 10, 2023
7d34310
Update UG and add test cases
kohkaijie Nov 10, 2023
c6594dd
Merge pull request #215 from kohkaijie/ug-changes
Mohammed-Faizzzz Nov 10, 2023
586f803
Add more test cases and remove dead code
cmHuang777 Nov 10, 2023
ecdf01d
Merge branch 'master' of https://github.com/AY2324S1-CS2103T-T09-3/tp…
cmHuang777 Nov 10, 2023
f953cd9
Fix checkstyle and minor UG issues
cmHuang777 Nov 10, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ dependencies {
}

shadowJar {
archiveFileName = 'addressbook.jar'
archiveFileName = 'MediLink.jar'
}

defaultTasks 'clean', 'test'
Expand Down
35 changes: 34 additions & 1 deletion docs/DeveloperGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ Here's a (partial) class diagram of the `Logic` component:

<img src="images/LogicClassDiagram.png" width="550"/>

The sequence diagram below illustrates the interactions within the `Logic` component, taking `execute("delete 1")` API
The sequence diagram below illustrates the interactions within the `Logic` component, taking `execute("delete NRIC")` API
call as an example.

![Interactions Inside the Logic Component for the `delete 1` Command](images/DeleteSequenceDiagram.png)
Expand Down Expand Up @@ -618,6 +618,39 @@ otherwise)

Use case resumes at step 2.

* 4b. The edited fields include invalid inputs.

* 4b1. Medilink Contacts shows an error message.

Use case resumes at step 2.

**Use case: UC5 - Undo a command**

**MSS**

1. User requests to delete a specific person in the list.
2. Medilink Contacts deletes the person.
3. User realises mistake, requests to undo previous action.
4. Medilink Contacts reverts to state before patient was deleted.

Use case ends.

**Extensions**

* 4a. User wants to redo the command.

* 4a1. User requests to redo last command.
* 4a2. MediLink Contacts reverts to state where patient was deleted.

Use case ends.

* 4b. User wants to perform another undo when there are no further actions to be undone.

* 4b1. User requests to undo again.
* 4b2. Medilink Contacts shows an error message.

Use case ends.

### Non-Functional Requirements

1. Should work on any _mainstream OS_ as long as it has Java `11` or above installed.
Expand Down
222 changes: 167 additions & 55 deletions docs/UserGuide.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ header_pages:

markdown: kramdown

repository: "https://github.com/AY2324S1-CS2103T-T09-3/tp"
repository: "AY2324S1-CS2103T-T09-3/tp"
github_icon: "images/github-icon.png"

plugins:
Expand Down
8 changes: 4 additions & 4 deletions docs/diagrams/DeleteSequenceDiagram.puml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ box Model MODEL_COLOR_T1
participant ":Model" as Model MODEL_COLOR
end box

[-> LogicManager : execute("delete 1")
[-> LogicManager : execute("delete NRIC")
activate LogicManager

LogicManager -> AddressBookParser : parseCommand("delete 1")
LogicManager -> AddressBookParser : parseCommand("delete NRIC")
activate AddressBookParser

create DeleteCommandParser
Expand All @@ -27,7 +27,7 @@ activate DeleteCommandParser
DeleteCommandParser --> AddressBookParser
deactivate DeleteCommandParser

AddressBookParser -> DeleteCommandParser : parse("1")
AddressBookParser -> DeleteCommandParser : parse("NRIC")
activate DeleteCommandParser

create DeleteCommand
Expand All @@ -49,7 +49,7 @@ deactivate AddressBookParser
LogicManager -> DeleteCommand : execute()
activate DeleteCommand

DeleteCommand -> Model : deletePerson(1)
DeleteCommand -> Model : deletePerson(NRIC)
activate Model

Model --> DeleteCommand
Expand Down
Binary file added docs/diagrams/tracing/DeleteSequenceDiagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/DeleteSequenceDiagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/Ui.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/findpickettpickensresult.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/helpMessage.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
27 changes: 15 additions & 12 deletions docs/team/chonguschonguschongus.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,33 +3,36 @@ layout: page
title: Isaac's Project Portfolio Page
---

### Project: AddressBook Level 3
### Project: MediLink Contacts

AddressBook - Level 3 is a desktop address book application used for teaching Software Engineering principles. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
MediLink Contacts aims to help medical staff including nurses/doctors/pharmacists navigate through patient details in
their high workload and time-pressured working environment. When medical emergencies arise, it becomes crucial to
provide rapid access to emergency contacts for patients and access other details of the patients to make decisions more
quickly. It is optimised for CLI so that users can quickly access the information. There is also a GUI created with
JavaFX.

Given below are my contributions to the project.

* **New Feature**: Added the ability to undo/redo previous commands.
* What it does: allows the user to undo all previous commands one at a time. Preceding undo commands can be reversed by using the redo command.
* Justification: This feature improves the product significantly because a user can make mistakes in commands and the app should provide a convenient way to rectify them.
* Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
* Credits: *{mention here if you reused any code/ideas from elsewhere or if a third-party library is heavily used in the feature so that a reader can make a more accurate judgement of how much effort went into the feature}*

* **New Feature**: Added a history command that allows the user to navigate to previous commands using up/down keys.
* **New Feature**: Enhanced the Find feature to function with NRIC, blood type, gender as well as name.
* What it does: Allows users to search for Patients/Doctors by their NRIC, blood type, gender or simply name
* Justification: Users can search by a specific attribute, increasing convenience

* **New Feature**: Added a Find Appointment function to locate a specific appointment by NRIC of people involved
* **New Feature** Added a Delete Appointment function to delete a specific appointment by NRIC of people involved

* **Code contributed**: [RepoSense link]()

* **Project management**:
* Managed releases `v1.3` - `v1.5rc` (3 releases) on GitHub

* **Enhancements to existing features**:
* Wrote an abstract UniqueObjectList that can be inherited to form UniqueLists of Patients, Doctors and Appointments
* Updated the GUI color scheme (Pull requests [\#33](), [\#34]())
* Wrote additional tests for existing features to increase coverage from 88% to 92% (Pull requests [\#36](), [\#38]())
* Wrote additional tests for existing features (Pull requests [\#36](), [\#38]())

* **Documentation**:
* User Guide:
* Added documentation for the features `delete` and `find` [\#72]()
* Did cosmetic tweaks to existing documentation of features `clear`, `exit`: [\#74]()
* Added documentation for the features `find`, `delete-appt`, `find-appt` [\#72]()
* Developer Guide:
* Added implementation details of the `delete` feature.

Expand Down
20 changes: 15 additions & 5 deletions docs/team/cmhuang777.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ title: Chao Ming's Project Portfolio Page

### Project: MediLink Contacts

MediLink Contacts aims to help medical staff including nurses/doctors/pharmacists navigate through patient details in
MediLink Contacts aims to help medical staff including nurses/doctors navigate through patient details in
their high workload and time-pressured working environment. When medical emergencies arise, it becomes crucial to
provide rapid access to emergency contacts for patients and access other details of the patients to make decisions more
quickly. It is optimised for CLI so that users can quickly access the information. There is also a GUI created with
Expand All @@ -17,19 +17,29 @@ Given below are my contributions to the project.
[Link to TP code dashboard](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=cmhuang777&breakdown=false&sort=groupTitle%20dsc&sortWithin=title&since=2023-09-22&timeframe=commit&mergegroup=&groupSelect=groupByRepos&tabOpen=true&tabType=authorship&tabAuthor=cmHuang777&tabRepo=AY2324S1-CS2103T-T09-3%2Ftp%5Bmaster%5D&authorshipIsMergeGroup=false&authorshipFileTypes=&authorshipIsBinaryFileTypeChecked=false&authorshipIsIgnoredFilesChecked=false)

* **New Feature**: Created new Patient class
* Adapted UI and Storage to store Patients instead of Person
* Changed Person card to patient card so that it can get displayed on the UI

* **New Feature**: Modified current add person command to add new Patient class.
* **New Feature**: Modified current add person command to add new Patient class
* **New Feature**: Added new command and parser to add new appointment for patients and doctors
* Also updated the storage for the appointments
* **New Feature**: Created a new Class AppointmentTime to represent the time object used in Appointment
* **New Feature**: Updated part of the sample data to include the new features

* **Project management**:
* Managed releases `v1.3` - `v1.5rc` (3 releases) on GitHub
* Managed releases `v1.3 trial` and `v1.3` on GitHub
* Managed milestones and issues

* **Enhancements to existing features**:
* (to be added soon)

* **Documentation**:
* User Guide: (to be added soon)
* Developer Guide: (to be added soon)
* User Guide:
* Updated existing content to our project
* Added the section on adding new patients
* Developer Guide:
* Included the section for add patient/doctor feature and added a new sequence diagram for that feature
* Added use case for adding new patient

* **Team-based tasks**:
* Forked the team repo from the source code
Expand Down
41 changes: 21 additions & 20 deletions docs/team/kohkaijie.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,44 +3,45 @@ layout: page
title: Kai Jie's Project Portfolio Page
---

### Project: AddressBook Level 3
### Project: MediLink Contacts

AddressBook - Level 3 is a desktop address book application used for teaching Software Engineering principles. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
MediLink Contacts aims to help medical staff including nurses/doctors/pharmacists navigate through patient details in
their high workload and time-pressured working environment. When medical emergencies arise, it becomes crucial to
provide rapid access to emergency contacts for patients and access other details of the patients to make decisions more
quickly. It is optimised for CLI so that users can quickly access the information. There is also a GUI created with
JavaFX.

Given below are my contributions to the project.

* **New Feature**: Added the ability to undo/redo previous commands.
* **New Feature**: Added the ability to undo/redo previous commands (done with Tanveer).
* What it does: allows the user to undo all previous commands one at a time. Preceding undo commands can be reversed by using the redo command.
* Justification: This feature improves the product significantly because a user can make mistakes in commands and the app should provide a convenient way to rectify them.
* Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
* Credits: *{mention here if you reused any code/ideas from elsewhere or if a third-party library is heavily used in the feature so that a reader can make a more accurate judgement of how much effort went into the feature}*

* **New Feature**: Added a history command that allows the user to navigate to previous commands using up/down keys.
* **New Feature**: Allowed only specific tags to be added for patients and doctors respectively.
* What it does: restricts the user to only enter specific tags for patients and doctors. Patients can only have up to one tag specifying their priority level. Doctors can have up to multiple tags specifying their specialisations.
* Justification: This feature ensures that tags have a clear purpose and users cannot enter tags that do not add value to the patient or doctor (e.g adding Engineer tag for a doctor).
* Highlights: While this enhancement itself did not affect much other commands, the implementation itself was challenging as it required choosing between different implementation methods, and choosing the most future-proof and OOP-friendly one.

* **Code contributed**: [RepoSense link]()
* **Code contributed**: [Link to TP code dashboard](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=kohkaijie&breakdown=false&sort=groupTitle%20dsc&sortWithin=title&since=2023-09-22&timeframe=commit&mergegroup=&groupSelect=groupByRepos)

* **Project management**:
* Managed releases `v1.3` - `v1.5rc` (3 releases) on GitHub
* Managed releases `v1.1` - `v1.3` (3 releases) on GitHub
* Added issues on GitHub for various tasks.

* **Enhancements to existing features**:
* Updated the GUI color scheme (Pull requests [\#33](), [\#34]())
* Wrote additional tests for existing features to increase coverage from 88% to 92% (Pull requests [\#36](), [\#38]())
* Created classes for new fields for Patient and Doctor classes.
* Wrote additional tests for existing features such as Patient fields, UndoCommand and Tags.

* **Documentation**:
* User Guide:
* Added documentation for the features `delete` and `find` [\#72]()
* Did cosmetic tweaks to existing documentation of features `clear`, `exit`: [\#74]()
* Added documentation for the features `delete` and usage of special tags.
* Developer Guide:
* Added implementation details of the `delete` feature.
* Modified UML diagram for DeleteSequenceDiagram.
* Added Use Case for UndoCommand and extensions for EditCommand.

* **Community**:
* PRs reviewed (with non-trivial review comments): [\#12](), [\#32](), [\#19](), [\#42]()
* Contributed to forum discussions (examples: [1](), [2](), [3](), [4]())
* Reported bugs and suggestions for other teams in the class (examples: [1](), [2](), [3]())
* Some parts of the history feature I added was adopted by several other class mates ([1](), [2]())
* **Team-based tasks**:
* Reviewed PRs and approved when needed for merging.

* **Tools**:
* Integrated a third party library (Natty) to the project ([\#42]())
* Integrated a new Github plugin (CircleCI) to the team repo

* _{you can add/remove categories in the list above}_
57 changes: 27 additions & 30 deletions docs/team/mohammed-faizzzz.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,44 +3,41 @@ layout: page
title: Faiz's Project Portfolio Page
---

### Project: AddressBook Level 3
### Project: MediLink Contacts

AddressBook - Level 3 is a desktop address book application used for teaching Software Engineering principles. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
MediLink Contacts aims to help medical staff including nurses/doctors navigate through patient details in
their high workload and time-pressured working environment. When medical emergencies arise, it becomes crucial to
provide rapid access to emergency contacts for patients and access other details of the patients to make decisions more
quickly. It is optimised for CLI so that users can quickly access the information. There is also a GUI created with
JavaFX.

Given below are my contributions to the project.

* **New Feature**: Added the ability to undo/redo previous commands.
* What it does: allows the user to undo all previous commands one at a time. Preceding undo commands can be reversed by using the redo command.
* Justification: This feature improves the product significantly because a user can make mistakes in commands and the app should provide a convenient way to rectify them.
* Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
* Credits: *{mention here if you reused any code/ideas from elsewhere or if a third-party library is heavily used in the feature so that a reader can make a more accurate judgement of how much effort went into the feature}*
* **Code contributed**:
[Link to TP code dashboard](https://nus-cs2103-ay2324s1.github.io/tp-dashboard/?search=Faiz&sort=groupTitle&sortWithin=title&timeframe=commit&mergegroup=&groupSelect=groupByRepos&breakdown=true&checkedFileTypes=docs~functional-code~test-code&since=2023-09-22)

* **New Feature**: Added a history command that allows the user to navigate to previous commands using up/down keys.

* **Code contributed**: [RepoSense link]()
* **New Feature**: Created new Doctor class
* Adapted UI and Storage to store Doctors instead of Person
* Changed Person card to Doctor card so that it can get displayed on the UI
* Modified UI to also display Doctors as a List alongside the Patients
* **New Feature**: Modified current add person command to add new Doctor class
* **New Feature**: Created a new Class Appointment to represent an Appointment between a pre-existing Doctor and Patient
* Added `new-appt` command to add new Appointment
* **New Feature**: Updated part of the sample data to include the new features

* **Project management**:
* Managed releases `v1.3` - `v1.5rc` (3 releases) on GitHub
* Managed milestones and issues
* Did Peer Reviews on other teammates' Pull Requests
* Resolved Merge Conflicts where applicable

* **Enhancements to existing features**:
* Updated the GUI color scheme (Pull requests [\#33](), [\#34]())
* Wrote additional tests for existing features to increase coverage from 88% to 92% (Pull requests [\#36](), [\#38]())
* (to be added soon)

* **Documentation**:
* User Guide:
* Added documentation for the features `delete` and `find` [\#72]()
* Did cosmetic tweaks to existing documentation of features `clear`, `exit`: [\#74]()
* Developer Guide:
* Added implementation details of the `delete` feature.

* **Community**:
* PRs reviewed (with non-trivial review comments): [\#12](), [\#32](), [\#19](), [\#42]()
* Contributed to forum discussions (examples: [1](), [2](), [3](), [4]())
* Reported bugs and suggestions for other teams in the class (examples: [1](), [2](), [3]())
* Some parts of the history feature I added was adopted by several other class mates ([1](), [2]())

* **Tools**:
* Integrated a third party library (Natty) to the project ([\#42]())
* Integrated a new Github plugin (CircleCI) to the team repo

* _{you can add/remove categories in the list above}_
* User Guide:
* Updated existing content to our project
* Added the section on adding new doctors
* Added the section on adding new appointments
* Proofread other sections and added the commands/sample commands to a summary table.


Loading
Loading