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

[CS2113-W12-2] Moolah Manager #5

Open
wants to merge 693 commits into
base: master
Choose a base branch
from
Open
Changes from 5 commits
Commits
Show all changes
693 commits
Select commit Hold shift + click to select a range
7ca0e1d
Update minimum transaction value
chinhan99 Oct 26, 2022
9834d32
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chinhan99 Oct 26, 2022
543cf79
Update list description in Command Summary and Fix Arithmatic excepti…
chinhan99 Oct 26, 2022
ece5e2b
Update List description in Command Summary
chinhan99 Oct 26, 2022
f30ed74
Update ListCommand COMMAND_PARAMETERS_INFO
chinhan99 Oct 26, 2022
4945315
Update test files and reformat lines in ListCommand
chinhan99 Oct 26, 2022
0285676
Update MIN_AMOUNT_VALUE
chinhan99 Oct 26, 2022
acb069d
Update parser check on minimum amount for Transactions and add test c…
chinhan99 Oct 26, 2022
23fbf53
Update parameter naming in command summary
chinhan99 Oct 26, 2022
16ee27c
Update Optional tag description for readability
chinhan99 Oct 26, 2022
7257f30
Fix Stats Param Parser
paullowse Oct 26, 2022
e638d2c
Fix Stats Bugs
paullowse Oct 26, 2022
e979550
Merge pull request #146 from chinhan99/chinHan-addUserGuide
paullowse Oct 26, 2022
7be807b
Merge pull request #148 from paullowse/paul-ParamParserFix
wcwy Oct 26, 2022
c00792f
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chinhan99 Oct 26, 2022
3a1b745
Update UserGuide.md
wcwy Oct 26, 2022
40ebbee
Change the value of MIN_AMOUNT_VALUE and update logic accordingly
wcwy Oct 26, 2022
164d89c
Modify the wordings used in UG for clearer constraint description
wcwy Oct 26, 2022
e962f2c
Change usage of "numerals" to "whole number" and move min-max constants
wcwy Oct 26, 2022
ce1f507
Changing the usage of "between ... and" as per @chinhan99 suggestion
wcwy Oct 26, 2022
587f926
Merge pull request #149 from wcwy/UG-commandFormat-help-budget
chydarren Oct 26, 2022
e85b3ba
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Oct 26, 2022
d948865
Add content for Introduction, Setting Up, List and Find Commands
chydarren Oct 26, 2022
dbe9f9f
Update EXPECTED.TXT to reflect the change for "at" to "on" for transa…
chydarren Oct 26, 2022
d8fd309
Remove duplicated code in TransactionList class, amend existing code …
chydarren Oct 27, 2022
b1d34f5
Add figure to detail how to download the latest JAR file
chydarren Oct 27, 2022
e0b3a91
Amend the size of Figure 1
chydarren Oct 27, 2022
abfef96
Merge pull request #150 from chydarren/chuaHanYongDarren-UGIntroducti…
wcwy Oct 27, 2022
f21c21d
Add details for the User Guide
brian-vb Oct 27, 2022
9ca40b5
Move help information to Help Messages Enum class and sync descriptio…
chydarren Oct 27, 2022
f60234a
Remove space between line separator to ensure compatibility with Windows
chydarren Oct 27, 2022
a60206f
Add purging confirmation to Help information for Purge command
chydarren Oct 27, 2022
4f1a0e4
Update UserGuide.md
brian-vb Oct 27, 2022
8eaaad7
Fix minor issues with Gradle test
chydarren Oct 27, 2022
f61ae60
Merge pull request #151 from brian-vb/brianWong-UG
chydarren Oct 27, 2022
bdf6649
Update UserGuide.md
paullowse Oct 27, 2022
b99d32b
Update DeveloperGuide
paullowse Oct 27, 2022
adbf817
Merge pull request #152 from chydarren/chuaHanYongDarren-UGIntroducti…
wcwy Oct 27, 2022
7be462f
Merge pull request #153 from paullowse/paul-UserGuide
wcwy Oct 27, 2022
c8ea5e4
Update user guide as recommended by @chydarren and modify help message
wcwy Oct 27, 2022
3f75fd2
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chinhan99 Oct 27, 2022
7d7a2f4
Merge pull request #154 from paullowse/paul-DeveloperGuideList
chinhan99 Oct 27, 2022
fafa8a5
Merge pull request #155 from wcwy/UG-minor-edit
chinhan99 Oct 27, 2022
1ec348b
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chinhan99 Oct 27, 2022
951f2a8
Add Descriptions for User Guide
chinhan99 Oct 27, 2022
e492435
Merge branch 'master' of https://github.com/chinhan99/tp into chinHan…
chinhan99 Oct 27, 2022
7d2f2a1
Merge pull request #156 from chinhan99/chinHan-addUserGuide
wcwy Oct 27, 2022
03dcb0e
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chinhan99 Oct 28, 2022
821789e
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Oct 28, 2022
03110e4
Update descriptions and wrong commands
chinhan99 Oct 28, 2022
7fec4ce
Merge pull request #157 from chinhan99/chinHan-fixUserGuide
brian-vb Oct 28, 2022
d3dbd2e
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Oct 28, 2022
ee2b156
Fix date parse for leap year dates
chinhan99 Oct 28, 2022
b151b7e
Fix logging warnings showing up
chinhan99 Oct 28, 2022
3e206c3
Merge pull request #201 from chinhan99/chinHan-fixParser
wcwy Oct 28, 2022
e4ab3ba
Add budget reminder message on budget update as suggested in #195
wcwy Oct 29, 2022
b45b6d9
Fix discrepancy about spacing in UG identified in #162
wcwy Oct 29, 2022
a12b806
Fix typo in UG identified in #158
wcwy Oct 29, 2022
bece718
Merge pull request #202 from wcwy/PED-fix
chydarren Oct 29, 2022
ad337a9
Add more follow up edits to DG based on comments
brian-vb Oct 29, 2022
2377c7e
Merge pull request #203 from brian-vb/brianWong-DG2
chydarren Oct 29, 2022
725bf71
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Oct 29, 2022
285dfd7
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Oct 29, 2022
377fa82
Modify Find function to ignore case-sensitivity and compare only desc…
chydarren Oct 29, 2022
a65b9fa
Merge pull request #204 from chydarren/chuaHanYongDarren-PEDFindCommand
wcwy Oct 29, 2022
d3cddc8
Add exception handling to entry parser
chinhan99 Oct 29, 2022
4004a2c
Fix edit command crash
chinhan99 Oct 29, 2022
5d6fa54
Merge pull request #205 from chinhan99/chinHan-fixParser
chydarren Oct 29, 2022
54a5653
Add Constants to replace magic values
chinhan99 Oct 29, 2022
ffb277b
Update ParameterParser.java
paullowse Oct 30, 2022
d47d91f
Merge pull request #207 from paullowse/paul-ParamBug
chydarren Oct 30, 2022
70e347f
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Oct 30, 2022
7fb0e7d
Merge pull request #206 from chinhan99/chinHan-fixParser
chydarren Oct 30, 2022
c892a3a
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Oct 30, 2022
d115e27
Add stats fix
paullowse Oct 30, 2022
4f12dcc
Merge branch 'master' into paul-StatsBug
chydarren Oct 30, 2022
306e7fd
Merge pull request #208 from paullowse/paul-StatsBug
chydarren Oct 30, 2022
3b528da
Update error messages to direct users to use help command
chinhan99 Oct 30, 2022
622e636
Edit ERROR_GLOBAL_INVALID_COMMAND error message
chinhan99 Oct 30, 2022
e8bb5d0
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Oct 30, 2022
4d6c367
Update storage error message
chinhan99 Oct 30, 2022
167f2d4
Merge pull request #209 from chinhan99/chinHan-fixErrorMessage
wcwy Oct 30, 2022
3d071cb
Update grammar issue in error message as identified in #160
wcwy Oct 30, 2022
19a0ab3
Update usage of "integer" in budget error message
wcwy Oct 30, 2022
12cec2f
Attempt to fix .gitignore issue for not ignoring data/duke.txt
wcwy Oct 30, 2022
d734827
Add budget advice into stats command
wcwy Oct 30, 2022
e644b96
Update test cases and edit files to abide by the Java coding standards
wcwy Oct 30, 2022
b53a3c2
Merge pull request #218 from wcwy/budget-improvement
chydarren Oct 30, 2022
487cb2b
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Oct 30, 2022
ae332bd
Fix Sequence Diagram
paullowse Oct 31, 2022
83e2eb0
Update EXPECTED.TXT
paullowse Oct 31, 2022
ed96125
Add DG part for Purge Command
brian-vb Oct 31, 2022
3b04cfe
Rename GlobalNonNumericIndexException class to GlobalIndexNotNumericE…
chydarren Oct 31, 2022
43dccc1
Discard extra comments from program
chydarren Oct 31, 2022
848cf52
Add GlobalUnsupportedTagCombinationException to handle tags that are …
chydarren Oct 31, 2022
15cfe1f
Refractor functions for Find command class and introduce logging
chydarren Oct 31, 2022
9c969bc
Add passing of Ui instance instead of calling Ui class directly when …
chydarren Oct 31, 2022
c17abf0
Update comments and logging messagesin List command for clarity
chydarren Oct 31, 2022
378d4e8
Add ability to sort the transactions in ascending order of the transa…
chydarren Oct 31, 2022
ec2ab77
Add ability to list transactions for last N days and add spending hab…
chydarren Oct 31, 2022
c7bb73a
Add and update test cases for testing critical functions in Transacti…
chydarren Oct 31, 2022
5bb275a
Update input.txt and EXPECTED.TXT to cover more edge cases
chydarren Oct 31, 2022
4f3a911
Update test cases in TransactionListTest class
chydarren Oct 31, 2022
291ac1f
Merge pull request #224 from paullowse/paul-FixSequenceDiagram
wcwy Oct 31, 2022
a3d9cf9
Merge pull request #225 from chydarren/chuaHanYongDarren-FindAndListI…
wcwy Oct 31, 2022
4f53097
Add Project Portfolio Page (PPP) file
wcwy Oct 31, 2022
f49ba68
Merge pull request #226 from wcwy/thinhong-ppp
chydarren Oct 31, 2022
387da4f
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Oct 31, 2022
92d02e0
Add Project Portfolio Page (PPP) file
chydarren Oct 31, 2022
e13b7a1
Remove line spacing for bulleted points in my PPP's Community section
chydarren Oct 31, 2022
f2476c6
Change F12-2 to F11-2 for Pet Clinic Manager
chydarren Nov 1, 2022
c4b28af
Update EXPECTED.TXT to rectify Gradle test error
chydarren Nov 1, 2022
fb83ee7
Complete the PPP
chydarren Nov 1, 2022
6ef44aa
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 1, 2022
e5cf54d
Add a testing section to PPP
chydarren Nov 1, 2022
a745730
Shorten length of PPP to fit two pages for PDF
chydarren Nov 1, 2022
cc7e400
Add personal PPP descriptions
chinhan99 Nov 1, 2022
2b78494
Fix typo in PPP
chinhan99 Nov 1, 2022
fe00f3c
Updated test file
chinhan99 Nov 1, 2022
222da53
Merge pull request #227 from chydarren/chuaHanYongDarren-PPP
chinhan99 Nov 1, 2022
0ef446c
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 1, 2022
85c3ee2
Change naming of PPP file
chinhan99 Nov 1, 2022
7264d0b
Merge pull request #228 from chinhan99/chinHan-AddPPP
chydarren Nov 1, 2022
4bcc124
Added PPP
paullowse Nov 1, 2022
019a6f4
Merge pull request #229 from paullowse/paul-DraftPPP
chydarren Nov 1, 2022
9a7efc7
Add more details into DG
brian-vb Nov 1, 2022
842565a
Added PPP Stuff
brian-vb Nov 1, 2022
1f4e24d
Merge pull request #230 from brian-vb/brianWong-PPP
wcwy Nov 1, 2022
9db5932
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 1, 2022
c022210
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 1, 2022
aa39608
Add Edit Command Diagram
brian-vb Nov 1, 2022
546ac53
Refine help command output to fulfil suggestion from #199
wcwy Nov 1, 2022
ed3fbd4
Add DG for ByeCommand
brian-vb Nov 1, 2022
88e2827
Add sequence diagram for Add command
chinhan99 Nov 1, 2022
6c2ceaf
Improve the coding structure of help command messages for readability
wcwy Nov 1, 2022
1be55bf
Create new exception for unknown queried command word to help command
wcwy Nov 1, 2022
485d9dc
Implement specific command query option in help feature
wcwy Nov 1, 2022
ebb9c4d
Update test cases of regression testing
wcwy Nov 1, 2022
35d1f21
Merge pull request #232 from brian-vb/brianWong-DG2
wcwy Nov 1, 2022
0d1438d
Merge pull request #233 from chinhan99/chinHan-AddDevGuide
wcwy Nov 1, 2022
e8abf46
Merge pull request #234 from wcwy/199-help-command-enhancement
chydarren Nov 1, 2022
d5dd46f
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 2, 2022
7dadc76
Fix constant names in Storage class
chinhan99 Nov 2, 2022
e29f2e8
Add constants for tags in Storage class
chinhan99 Nov 2, 2022
9269fe5
Add header comments for Storage methods in TransactionList
chinhan99 Nov 2, 2022
ac8ef17
Remove logging warnings from FindCommand class
chinhan99 Nov 2, 2022
19f597e
Fix typo in comment
chinhan99 Nov 2, 2022
0acfe7d
Merge pull request #236 from chinhan99/chinHan-fixConstants
chydarren Nov 2, 2022
a5213dc
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Nov 3, 2022
cfee62b
Update limit of year tag to allow years 0 - 9999 and N number of days…
chydarren Nov 3, 2022
5ec3164
Update EXPECTED.TXT to reflect the changes
chydarren Nov 3, 2022
0d709e7
Merge pull request #237 from chydarren/chuaHanYongDarren-MinorFixesI
chinhan99 Nov 3, 2022
c87f7fb
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Nov 3, 2022
1ce9e5c
Combine Find Command to use Parameter Parser and disallow spacing in …
chydarren Nov 4, 2022
9212478
Remove Utilities test class and move Chin Han's tests into ParameterP…
chydarren Nov 4, 2022
af00193
Improve the user guide structure, and align all description, examples…
chydarren Nov 4, 2022
1f248d3
Update EXPECTED.TXT and input.txt to align with user guide
chydarren Nov 4, 2022
18ba4e0
Rectify a minor error in heading
chydarren Nov 4, 2022
448981f
Rectify a minor error in heading
chydarren Nov 4, 2022
6676567
Add link to FAQ section
chydarren Nov 4, 2022
215d50d
Merge pull request #238 from chydarren/chuaHanYongDarren-UGImprovements
wcwy Nov 4, 2022
aabe978
Update DG Diagrams and formatting structure
chydarren Nov 4, 2022
0cc1749
Add sorting logic to add, edit, delete and storage initialisation
wcwy Nov 4, 2022
fab69b0
Display transaction number count to improve user experience
wcwy Nov 4, 2022
b9d8f28
Clarify the wordings used on help messages for better precision
wcwy Nov 4, 2022
7971396
Update test cases and fix coding violations
wcwy Nov 4, 2022
2630235
Merge pull request #240 from chydarren/chuaHanYongDarren-DGImprovements
wcwy Nov 4, 2022
aca2bf5
Merge branch 'master' into 239-bug-fix-list-sorting
wcwy Nov 4, 2022
51a0e61
Changes Made to Edit Command based on Bugs
brian-vb Nov 4, 2022
48c6abf
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
brian-vb Nov 4, 2022
68ccfa7
Update user guide on command summary and sample of help command
wcwy Nov 4, 2022
6c56d7a
Merge pull request #241 from brian-vb/master
wcwy Nov 4, 2022
c1a3536
Merge pull request #242 from wcwy/239-bug-fix-list-sorting
brian-vb Nov 4, 2022
792d420
Update on user guide on changes made in milestone 2.1
wcwy Nov 4, 2022
8fa1292
Update PPP to add contribution on testing
wcwy Nov 4, 2022
c9ba131
Upgrade all team members' PPP on Moolah Manager's LoC
wcwy Nov 4, 2022
0c20843
Update UML diagrams in the developer guide on feedback and new changes
wcwy Nov 4, 2022
ae8ffbc
Merge pull request #243 from wcwy/documentation-enhancement
chydarren Nov 4, 2022
153b61e
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Nov 4, 2022
c93bc93
Update DeveloperGuide.md
paullowse Nov 5, 2022
70798fe
Merge pull request #245 from paullowse/paul-DeveloperGuideEdit
chinhan99 Nov 5, 2022
0c909b7
Update user guide and developer guide for updates on Find and List
chydarren Nov 5, 2022
dc70c69
Fix bug for listing of transactions with indexes, and placement of ne…
chydarren Nov 5, 2022
d41e5ed
Fix Gradle test error
chydarren Nov 5, 2022
288c4fb
Merge pull request #246 from chydarren/chuaHanYongDarren-ListImprovem…
wcwy Nov 5, 2022
0a7ec45
Final Changes to Edit Command
brian-vb Nov 5, 2022
7b5e6ec
Address Redirection Issues
brian-vb Nov 5, 2022
167ea10
Merge pull request #247 from brian-vb/brianWong-Final
chydarren Nov 5, 2022
10a25f8
Add improvements to DG Find and Stats command sections
chydarren Nov 5, 2022
4c2a8ce
Add bug reporting to test section in PPP
chydarren Nov 5, 2022
6f52651
Add logo to front page
chydarren Nov 5, 2022
c646155
Merge pull request #248 from chydarren/chuaHanYongDarren-ListImprovem…
wcwy Nov 5, 2022
83bcb8f
Fix minor bug in spending habit comment
chydarren Nov 5, 2022
da2bb32
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chydarren Nov 5, 2022
3a41591
Fix broken links in DG
wcwy Nov 5, 2022
b28b4fc
Fix saving and budget advice on zero amount spent during month insights
wcwy Nov 5, 2022
be359cc
Merge pull request #249 from chydarren/chuaHanYongDarren-ListImprovem…
chinhan99 Nov 5, 2022
8d28bc6
Fix broken links and blur image in DG, and add budget message info to DG
wcwy Nov 5, 2022
608b8b3
Add messages to assertion as suggested by TA in #220
wcwy Nov 5, 2022
4e00abe
Update parser logic for help option tag to be case insensitive
wcwy Nov 5, 2022
7c83674
Add logging messages for help and budget command classes
wcwy Nov 5, 2022
90b7886
Add JUnit tests for budget and help features implemented in v2.1
wcwy Nov 5, 2022
483358f
Remove outdated help message
wcwy Nov 5, 2022
ee58995
Fix regression testing test case and coding standard violations
wcwy Nov 5, 2022
fdbe0ed
Merge pull request #250 from wcwy/final-update
paullowse Nov 5, 2022
a29f43e
Fix DG figure issues
wcwy Nov 5, 2022
b4ea409
Merge pull request #251 from wcwy/DG-fix
chydarren Nov 5, 2022
7fe0274
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 6, 2022
be7a4f0
Update AddCommand diagrams
chinhan99 Nov 6, 2022
8ed10aa
Merge pull request #252 from chinhan99/chinHan-AddDevGuide
chydarren Nov 6, 2022
e6cf7c5
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Nov 6, 2022
577d3e3
Update user guide to show spending habit and budget on at least one e…
chydarren Nov 6, 2022
007a289
Update developer guide with some improved quality on diagrams and des…
chydarren Nov 6, 2022
466ab8a
Remove unessential methods from the style puml file
chydarren Nov 6, 2022
5b1ca27
Merge pull request #253 from chydarren/chuaHanYongDarren-FinalUpdate
wcwy Nov 6, 2022
9be8276
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 6, 2022
3c5c377
Update PPP formatting
chinhan99 Nov 6, 2022
ca8bda3
Merge pull request #254 from chinhan99/chinHan-AddPPP
chydarren Nov 6, 2022
673c832
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 6, 2022
7864ece
Update header comments in Storage
chinhan99 Nov 6, 2022
7b2c55b
Update budget exception comment
chinhan99 Nov 6, 2022
20bb817
Merge pull request #255 from chinhan99/chinHan-AddStorage
chydarren Nov 6, 2022
ba494d5
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 6, 2022
58f4eb1
Update PPP and UserGuide
chinhan99 Nov 6, 2022
cb8fb6d
Merge pull request #256 from chinhan99/chinHan-AddPPP
chydarren Nov 6, 2022
6c63e1d
Class Diagrams Revamp
brian-vb Nov 7, 2022
2493f18
Adjust width of images
brian-vb Nov 7, 2022
8003c7e
Merge pull request #257 from brian-vb/master
chydarren Nov 7, 2022
8b7b17f
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp …
chinhan99 Nov 7, 2022
faff453
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Nov 7, 2022
f0a9976
Update size of my diagrams
chydarren Nov 7, 2022
345afc3
Merge pull request #258 from chydarren/master
wcwy Nov 7, 2022
700fa7b
Fix date strictness in Storage class
chinhan99 Nov 7, 2022
4d52af9
Merge pull request #259 from chinhan99/chinHan-FixStorage
wcwy Nov 7, 2022
f29f12d
Add missing tag for help message and rephrase unclear words used
wcwy Nov 7, 2022
19486ae
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Nov 7, 2022
5030223
Merge pull request #260 from wcwy/Fix-minor-bug
chydarren Nov 7, 2022
8dd5d9f
Merge branch 'master' of https://github.com/AY2223S1-CS2113-W12-2/tp
chydarren Nov 7, 2022
19ab06a
Implemented sorted monthly expenditure using a sorted treemap
chydarren Nov 7, 2022
a023fed
DG changes for Edit and Delete
brian-vb Nov 7, 2022
7bbdbca
Remove redundant variables in declaring treemap
chydarren Nov 7, 2022
e98c0bc
Merge pull request #261 from brian-vb/master
chydarren Nov 7, 2022
beb6f49
Merge pull request #262 from chydarren/chuaHanYongDarren-SortedMonthl…
wcwy Nov 7, 2022
d0b20b4
Final PPP Push
brian-vb Nov 7, 2022
de6f1c2
Merge pull request #263 from brian-vb/master
chydarren Nov 7, 2022
01f9ffd
Fix minor sequence diagram issue pre-release
wcwy Nov 7, 2022
8f0d0b3
Merge pull request #264 from wcwy/release-check-fix
wcwy Nov 7, 2022
761c7d9
Fix DG outdated value
wcwy Nov 7, 2022
f8b8e75
Fix DG issues found
wcwy Nov 7, 2022
38d26a6
Merge pull request #265 from wcwy/release-check-fix
wcwy Nov 7, 2022
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
131 changes: 125 additions & 6 deletions docs/DeveloperGuide.md
Original file line number Diff line number Diff line change
@@ -382,6 +382,69 @@ _Written by: Yong Chin Han_

### Edit Command

The `EditCommand` inherits properties from the abstract `Command` class. The inheritance of `Command` from `EditCommand` is
shown below.

<p align="center">
<img src="images/EditCommandClassDiagram.png">
<br />
<i>Figure 3.3: Class Diagram for EditCommand Showing Inheritance of Command</i>
</p>

The full command for `edit` is `edit [e/ENTRY] [t/TYPE] [c/CATEGORY] [a/AMOUNT] [d/DATE] [i/DESCRIPTION]`.

For example, if 'edit' is called, the specific entry inputted in the command is edited based on the parameters inputted.
Only the entry and at least one tag is needed for this command to work.

In a command like `edit e/2 t/expense c/food a/10 d/20102022 i/chicken`:

1. The `main()` method in Duke calls `run()` in Duke. The `ui` reads the command via `ui.readCommand()` and parses it
through `CommandParser.parse()`.

2. Within `CommandParser.parse()`, a few functions are called internally.
1. `spiltInput()` is called which splits the command from the parameter.
2. `getCommand()` is called which searches for the command.
3. `ParameterParser.parse()` is called.

3. Within `ParameterParser.parse()`, a few functions are called internally as well.
1. `checkMandatoryTagsExist()` is called where the parameters are checked for all required tags exist based on the command.
2. `checkUnsupportedTagsNotExist()` is called to check if the parameter do not contain any unsupported tags based on the command.
3. `checkDuplicateTagsNotExist()` is called to check if the parameter do not contain any duplicate tags.
4. `checkParameterNotEmpty()` is called to check that the parameter inputted is not empty.
5. Once all these checks are successful, `setCommand()` is called.

4. Within `setCommand()`, more functions are called internally.
1. `setParameter()` is called to set the index of the transaction to be deleted.
2. The setting is done via `command.setEntryNumber()` which takes in the parameter and executes it in the DeleteCommand Class.
3. The parameter, however, needs to be further parsed through the execution of the `parseEntryTag()` function.
4. It converts the parameter, which is currently a `String`, to a `Int`.

5. The edit command is undergoing execution in `command.execute()` which will call functions within the EditCommand Class.
1. The index, which is the local `entryNumber` variable, goes under further checks by ascertaining whether it is greater than the total
number of transactions in the list or lesser than or equal to zero.
2. It tells the total size via the local `numberOfTransactions` variable which takes the value called by `transactions.size()`
which is located in the TransactionList class.
3. If the checks fail, i.e. the index is invalid, `isInputValid` is set as false.

6. The if-else statements does the following:
1. Retrieves the transaction to be edited via `transactions.getEntry()`.
2. Checks if the local variable `newType` is `null`. This implies that no `t/expense` or `t/income` was indicated by the user.
The program then retrieves the type of transaction via `entry.getType()`
3. It then splits to another if-else branches which handles the edits using either `transactions.editExpense()` or `transactions.editIncome()`.
4. For each of these branches, should the optional tag be left blank, retrieves the relevant field using the getter functions.
5. In order to edit the following transaction, it has to be deleted first and then reinserted. This is done by calling `transactions.deleteTransaction()`
and then inserts back in at the same spot which is handled by `transactions.add()` at the specific entry.

7. The display shows the successful deletion via `ui.showTransactionAction()` and writes it to file by `storage.writeToFile()`.

The sequence diagram below shows the interactions of a successful execution of the `EditCommand`.

<p align="center">
<img src="images/EditCommandSequenceDiagram.png">
<br />
<i>Figure 3.4: Sequence Diagram for Edit Command</i>
</p>

_Written by: Brian Wong Yun Long_

### List Command
@@ -391,7 +454,12 @@ For example, if 'list' is called, all transactions that are present in Moolah Ma
Adding tags such as type, category and date will list all transactions to that category

The structure of the application focusing on the list command is illustrated in the class diagram below:
![Data Component Class Diagram](images/ListCommandSequenceDiagram.png)

<p align="center">
<img src="images/ListCommandSequenceDiagram.png">
<br />
<i>Figure 3.5: Sequence Diagram for List Command</i>
</p>

In a command like `list c/transport`

@@ -420,7 +488,7 @@ The sequence diagram below shows the interactions of a successful execution of t
<p align="center">
<img src="images/FindCommandSequenceDiagram.png">
<br />
<i>Figure 3.3: Sequence Diagram for Find Command</i>
<i>Figure 3.6: Sequence Diagram for Find Command</i>
</p>

**Step 1.** The user executes `find KEYWORDS` command with an intent to view a filtered list of transactions
@@ -453,7 +521,50 @@ _Written by: Chua Han Yong Darren_

### Bye Command

{Describe the implementation for the Bye Command}
The `ByeCommand` inherits properties from the abstract `Command'` class. The inheritance of `Command` from `ByeCommand` is
shown below.

<p align="center">
<img src="images/ByeCommandClassDiagram.png">
<br />
<i>Figure 3.7: Class Diagram for DeleteCommand Showing Inheritance of Command</i>
</p>

The full command for `bye` is `bye`.
For example, if 'bye' is called, the program prints the exit message and terminates the program.

This is how the command works:

1. The `main()` method in Duke calls `run()` in Duke. The `ui` reads the command via `ui.readCommand()` and parses it
through `CommandParser.parse()`.

2. Within `CommandParser.parse()`, a few functions are called internally.
1. `spiltInput()` is called which splits the command from the parameter.
2. `getCommand()` is called which searches for the command.
3. `ParameterParser.parse()` is called.

3. Within `ParameterParser.parse()`, a few functions are called internally as well.
1. `checkMandatoryTagsExist()` is called where the parameters are checked for all required tags exist based on the command.
2. `checkUnsupportedTagsNotExist()` is called to check if the parameter do not contain any unsupported tags based on the command.
3. `checkDuplicateTagsNotExist()` is called to check if the parameter do not contain any duplicate tags.
4. `checkParameterNotEmpty()` is called to check that the parameter inputted is not empty.
5. Once all these checks are successful, `setCommand()` is called.

4. Within `setCommand()`, there is no parameters required to be set for `bye`.

5. The bye command is undergoing execution in `command.execute()` which will call functions within the ByeCommand Class.
1. It calls `ui.showInfoMessage()` which prints the exit message.
2. `isExit()` is set as true.

6. Within `run()` in Duke, the loop is exited and the program ends.

The sequence diagram below shows the interactions of a successful execution of the `ByeCommand`.

<p align="center">
<img src="images/ByeCommandSequenceDiagram.png">
<br />
<i>Figure 3.8: Sequence Diagram for Delete Command</i>
</p>

_Written by: Brian Wong Yun Long_

@@ -465,7 +576,7 @@ shown below.
<p align="center">
<img src="images/DeleteCommandClassDiagram.png">
<br />
<i>Figure 3.4: Class Diagram for DeleteCommand Showing Inheritance of Command</i>
<i>Figure 3.9: Class Diagram for DeleteCommand Showing Inheritance of Command</i>
</p>

The full command for `delete` is `delete [e/ENTRY]`.
@@ -514,7 +625,7 @@ The sequence diagram below shows the interactions of a successful execution of t
<p align="center">
<img src="images/DeleteCommandSequenceDiagram.png">
<br />
<i>Figure 3.5: Sequence Diagram for Delete Command</i>
<i>Figure 3.10: Sequence Diagram for Delete Command</i>
</p>

_Written by: Brian Wong Yun Long_
@@ -527,7 +638,7 @@ shown below.
<p align="center">
<img src="images/PurgeCommandClassDiagram.png">
<br />
<i>Figure 3.6: Class Diagram for PurgeCommand Showing Inheritance of Command</i>
<i>Figure 3.11: Class Diagram for PurgeCommand Showing Inheritance of Command</i>
</p>

The full command for `purge` is `purge`.
@@ -567,6 +678,14 @@ This is how the command works:

7. The display shows the successful purging via `ui.showInfoMessage()` and writes it to file by `storage.writeToFile()`.

The sequence diagram below shows the interactions of a successful execution of the `DeleteCommand`.

<p align="center">
<img src="images/PurgeCommandSequenceDiagram.png">
<br />
<i>Figure 3.12: Sequence Diagram for Purge Command</i>
</p>

_Written by: Brian Wong Yun Long_

### Storage Operations
32 changes: 32 additions & 0 deletions docs/diagram/ByeCommand.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
@startuml
!include Style.puml

class ByeCommand {
+ COMMAND_WORD: String
+ COMMAND_DESCRIPTION: String
+ COMMAND_USAGE: String
+ COMMAND_PARAMETERS_INFO: String


+{abstract}execute()
}

class "{abstract}\n Command"{

+ COMMAND_WORD: String
+ COMMAND_DESCRIPTION: String
+ COMMAND_USAGE: String
+ COMMAND_PARAMETERS_INFO: String

- type: String
- category: String
- description: String
- amount: int
- date: LocalDate

+{abstract}execute()
}


"{abstract}\n Command" <|-- ByeCommand
@enduml
41 changes: 41 additions & 0 deletions docs/diagram/ByeCommandSequenceDiagram.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
@startuml
'https://plantuml.com/sequence-diagram

hide footbox

Participant ":Duke" as Duke
Participant ":CommandParser" as CommandParser
Participant "command:ByeCommand" as ByeCommand
Participant "ui:Ui" as Ui


-> Duke
activate Duke

Duke -> CommandParser:parse("bye")
activate CommandParser

CommandParser -> CommandParser:splitInput("bye")
activate CommandParser
return inputTokens: String[]

CommandParser -> CommandParser:getCommand(commandWordInput: String, parameterInput: String)
activate CommandParser

create ByeCommand
CommandParser -> ByeCommand
activate ByeCommand
return

return command: ByeCommand

return command: ByeCommand
deactivate CommandParser

Duke -> ByeCommand:execute(transactions: TransactionList, ui: Ui, storage: Storage)
activate ByeCommand
ByeCommand -> Ui:showInfoMessage(message: String)
activate Ui
return
return
@enduml
4 changes: 4 additions & 0 deletions docs/diagram/DeleteCommandSequenceDiagram.puml
Original file line number Diff line number Diff line change
@@ -47,15 +47,19 @@ alt isInputValid is true
return date: LocalDate
DeleteCommand -> Transactions:deleteTransaction(index: int)
activate Transactions
return
DeleteCommand -> Transactions:calculateMonthlyTotalExpense(date: LocalDate)
activate Transactions
return addedMonthExpenseSum: long
DeleteCommand -> Budget:generateBudgetRemainingMessage(totalMonthlyExpenses: long, withTips: boolean, monthYear: String)
activate Budget
return BudgetInfo: String
DeleteCommand -> Ui:showTransactionAction(message: String, transactionDetails: String, budgetInfo: String)
activate Ui
return
else else
DeleteCommand -> Ui:showErrorMessage(message: String)
activate Ui
return
end

42 changes: 42 additions & 0 deletions docs/diagram/EditCommand.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
@startuml
'https://plantuml.com/sequence-diagram
!include Style.puml

class EditCommand {
+ COMMAND_WORD: String
+ COMMAND_DESCRIPTION: String
+ COMMAND_USAGE: String
+ COMMAND_PARAMETERS_INFO: String

- entryNumber: int
- type: String
- category: String
- description: String
- amount: int
- date: LocalDate

+getMandatoryTags()
+getOptionalTags()
+{abstract}execute()
}

class "{abstract}\n Command"{

+ COMMAND_WORD: String
+ COMMAND_DESCRIPTION: String
+ COMMAND_USAGE: String
+ COMMAND_PARAMETERS_INFO: String

- type: String
- category: String
- description: String
- amount: int
- date: LocalDate

+getMandatoryTags()
+getOptionalTags()
+{abstract}execute()
}

EditCommand -up-|> "{abstract}\n Command"
@enduml
Loading