Releases: CS2103-AY1819S2-W17-2/main
v1.4
v1.3.2
v1.3.1
v1.3
Logic
Input/Output
- Added "all" keyword, updated Javadoc and added new exception messages to
Open, Save, Import and Export
. - Increased black outline of numbers and filled in teeth with white color for BaseLayer.png
- Added PDF export to
SaveCommand
andExportCommand
, with title, subtitle and image. Save
andExport
are now able to handle very long strings- Teeth image added to PDF export
Record Related
New RecordAdd
Command
- Only works when
MainWindow
is inGoTo
mode - Adds a
Record
to thePatient
specified when entering theGoTo
mode - The new
Record
will be added to the top of the list and be sorted on next visit Name of Dentist
ofRecord
is inferred from theDentist
class (see below)
New Record Related Commands
RecordEdit
- Edits a record by indexRecordDelete
- Deletes a record by indexTeethEdit
- Edits a status of a tooth
New RecordClear
command
- Requires to be in
GoTo
mode, where a patient is specified - All records of the patient are deleted
- Does not commit to
addressbook
Tags
- Tags are now updated automatically to reflect the current teeth health of patients
- Only the most severe cases are shown: Absent > Status > Healthy
New Task Related Commands
- Added new
taskcal
command that displays a Task Calendar upon running the command - Added
tasksort
,tasklist
- Task Calendar now takes in task related commands and dates as inputs in the text box, allowing the user to add, edit, modify tasks or view dates with tasks in the popup window. This should be sufficient as a context switch from patient to tasks and vice versa.
New command taskdone
- New command
taskdone
sets a tasks'priority
to beCOMPLETED
by specifying anINDEX
for use - Task targeted by command will also automatically adds a record to its linked patient with the description as the task's title
- Task with no linked patient will simply be set to complete
Viewing Data Commands
Find
Command
- Now has options for case sensitivity, AND operations, and allows multiple parameter searching
- Able to use with all current patient attribues
Sorting
SortCommand
has been changed into an abstract class using generics that can be extended from to create the necessary sortCommands for overall data types [Resolves #92]SortPatientCommand
&SortRecordCommand
is able to sort all attributes of Patient and Record respectivelySortCommandParser
has implemented pseudo-context switching, creating the appropriate sort command depending on whether the program is current in goTo mode.- Added
updateFilteredRecordList
&sortRecordsBook
to ModelManager - Added
sortInternalList
to UniqueRecordList - DateOfBirth comparator now uses the compare function within DateBase
Misc Commands
GoTo
Command
- Specifies a patient by index and shows his or her dental records
- Record list overlays the current patient list panel
- Other patients' particulars are hidden. Providing a focused view of the specified patient
- To exit the mode, the tentative command is
back
New Back
Command
- Only works when main window is in
GoTo
mode - Hides the patient's record list and shows the patient list
- An alert box prompts for confirmation upon command execution
Model
Patient class updates
Sex
of Patient
- A new attribute of Patient
- Format:
sex/
- Specifies a patient's sex
- Is now a compulsory field when adding a new patient
- UI displays the sex of the patient to the right of his or her name
- Can be edited via the
edit
command
DrugAllergy
of Patient
- Format
da/
- Contains a string of drug allergies that a patient might have
- Optional field
Next Of Kin
class linked to Patient
- Contains information on the next of kin's name, relationship, phone, & address
- Name, Phone, Address use the existing classes under patient, Relationship uses
NextOfKinRelation
Task class updates
- Added new enum class, Priority added a property for Task. *
- Implemented Start Time and End Time properties for Task using TimeCustom class.
- Modified
taskadd
andtaskedit
commands to support the new implementations for Task
Dentist
class
- Saves the dentist's name in a
.txt
file - Prompts the user for his or her name upon the very first application startup
- This is done using a text alert box
- Dentist's name can be of any alphanumerical sequence
- There is no command to change the name from the CLI - to uphold the one user policy
Record class updates
- Now takes in Procedure attribute
- Duplicate
records
are now saved as it would for unique records, but a message tells the user that a similar record already exists - Record methods now correctly throw
DuplicateRecordException
when required, rather than the wrong Exception -DuplicateTaskException
Interface ExportableTeeth
- An interface that can be used to link up
Teeth
class with further classes - Tentatively, it is primarily used to export current
Teeth
structure for drawing
Only Permanent Teeth
- Primary Teeth or No Teeth templates will be made unavailable
- Could be potentially implemented in
v1.4
orv2.0
- All patients added are assumed to have full permanent healthy teeth by default
Storage
JSON
Data File
- Now stores more information on
Patient
andTask
- Consists of
Teeth
current structure andRecord
list, as well as all new attributes (Sex, DrugAllergy, Description, NextOfKin
)
UI
- Added new display panel to show teeth status based on patient's information
- Goto mode now displays the teeth image of the patient automatically upon entering the mode
New Task Calendar UI
- list of task for the given date
- calendar that highlights dates with tasks (currently hard-coded, will be implementing priority to task next update)
- update tasks in the list panel after selecting dates from the calendar
Task Related UI
- Tasks in task calendar now properly highlights specific dates with the highest priority for that day.
- Task cards now tasks with a priority tag, color-coded for each priority type [High : Red], [Medium: Orange], [Low: Yellow].
Stat Window UI
- Now shows list of patient procedures
- Now shows bar chart of procedures
Version 1.19
Merge pull request #72 from JiaHaoLim/master [v1.25] Added new teeth image, Problem teeth overlays and Absent teeth overlays.
Version 1.2
Changes in v1.2
Model
Patient now extends Person
- Added implemented date of birth & Nric fields
- Made Phone, Address, Email fields optional
Teeth and Records are now tied to patients
Implemented Task tracking
Logic
Add/Edit/Delete Command
- Updated to match Patient instead of Person
Copy Command
- Supports warning system.
Export & Import Commands
- Appending is now possible
Implemented Task(add/edit/delete)
- Task functionality flow is implemented.
Find Command
- Implemented searching for all patient attributes
Sort Command
- Sorts according to each attribute type in either ascending or descending order
Stats Command
- Rudimentary stat report window opens up
UI
New pane for user to view Tasks
Docs
Removed AB4 se-edu badges, added own team's to the README
Updated DeveloperGuide with new user stories, UserGuide updated to reflect new command functionality.
Version 1.1
Changes in v1.1
Model
Added new dentistry attributes to seedu.address.model.person package
- Tooth.java, Teeth.java, Status.java
Added new person details attributes to seedu.address.model.person package
- Age.java, DrugAllergy.java, Nric.java, Sex.java
Added new packages under seedu.address.model
-
datetime
- Date.java, Time.java
-
description
- Description.java
-
record
- Procedure.java, Record.java
Logic
Implemented Export & Import Commands
- Added new ExportCommand.java and ImportCommand.java under commands
- Added new ExportCommandParser.java and ImportCommandParser.java under parser
Implemented Copy Commands
- Added new CopyCommand.java under commands
- Added new CopyCommandParser.java parser
UI
Added code for a Login window (Currently uncalled)
Docs
Updated UserGuide, README, AboutUs from base AB4 version to OurTeeth version
Added some user stories to DeveloperGuide