Skip to content

ATM MVP #13

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

Open
wants to merge 114 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
114 commits
Select commit Hold shift + click to select a range
739f023
Added_UML.xml
TimothyRager Oct 23, 2017
a051186
brainstorming
TimothyRager Oct 23, 2017
0e69873
Update atm_uml.xml
TimothyRager Oct 23, 2017
c45ac82
Update atm_uml.xml
TimothyRager Oct 23, 2017
bf6bd26
Update atm_uml.xml
TimothyRager Oct 23, 2017
51d2a7d
Working on Account class and subclasses
TimothyRager Oct 23, 2017
f761d86
Update atm_uml.xml
TimothyRager Oct 23, 2017
702bc5c
Update atm_uml.xml
TimothyRager Oct 23, 2017
4b27915
Working version of Account, subs, and Security classes
TimothyRager Oct 24, 2017
4aa7f12
Update atm_uml.xml
TimothyRager Oct 24, 2017
76b6577
Update atm_uml.xml
TimothyRager Oct 24, 2017
6547328
Update atm_uml.xml
TimothyRager Oct 24, 2017
ba12ee9
Update atm_uml.xml
TimothyRager Oct 24, 2017
e030d9a
Update atm_uml.xml
TimothyRager Oct 24, 2017
1ebfd47
Update atm_uml.xml
TimothyRager Oct 24, 2017
e102cf4
Brainstorming Factory and Warehouse classes
TimothyRager Oct 24, 2017
4ed94c2
Update atm_uml.xml
TimothyRager Oct 24, 2017
c6a1c6e
Update atm_uml.xml
TimothyRager Oct 24, 2017
c05127e
Update atm_uml.xml
TimothyRager Oct 24, 2017
1f9954c
Update atm_uml.xml
TimothyRager Oct 24, 2017
1f03578
Update atm_uml.xml
TimothyRager Oct 24, 2017
772e750
Update atm_uml.xml
TimothyRager Oct 24, 2017
efe9e49
Update atm_uml.xml
TimothyRager Oct 24, 2017
9554314
Update atm_uml.xml
TimothyRager Oct 24, 2017
e79b6cc
Update atm_uml.xml
TimothyRager Oct 24, 2017
31ee8a6
Update atm_uml.xml
TimothyRager Oct 24, 2017
1689f8e
Update atm_uml.xml
TimothyRager Oct 24, 2017
2cd823f
Update atm_uml.xml
TimothyRager Oct 24, 2017
36e8e88
Update atm_uml.xml
TimothyRager Oct 24, 2017
50022ff
Begin Designing factories and warehouses
TimothyRager Oct 24, 2017
56bf3bf
Update atm_uml.xml
TimothyRager Oct 24, 2017
ef6d6a3
Update atm_uml.xml
TimothyRager Oct 24, 2017
d70c30f
Update atm_uml.xml
TimothyRager Oct 24, 2017
94d5c73
Update atm_uml.xml
TimothyRager Oct 24, 2017
ba9fa6d
Update atm_uml.xml
TimothyRager Oct 24, 2017
96918bb
Update atm_uml.xml
TimothyRager Oct 24, 2017
7185c38
Update atm_uml.xml
TimothyRager Oct 24, 2017
9660892
Update atm_uml.xml
TimothyRager Oct 24, 2017
7aaa51a
Update atm_uml.xml
TimothyRager Oct 24, 2017
0942e6f
Update atm_uml.xml
TimothyRager Oct 24, 2017
1f36945
Update atm_uml.xml
TimothyRager Oct 24, 2017
1b9506a
Update atm_uml.xml
TimothyRager Oct 24, 2017
74dc57d
Update atm_uml.xml
TimothyRager Oct 24, 2017
2336d7d
Update atm_uml.xml
TimothyRager Oct 24, 2017
43be454
Update atm_uml.xml
TimothyRager Oct 24, 2017
c3fd9d4
Design User class, factory, warehouse
TimothyRager Oct 24, 2017
8b52729
Update atm_uml.xml
TimothyRager Oct 24, 2017
8a91000
Design User class, factory, warehouse
TimothyRager Oct 24, 2017
3a3f859
Update atm_uml.xml
TimothyRager Oct 24, 2017
b9c253c
Update atm_uml.xml
TimothyRager Oct 24, 2017
9f83e58
Update atm_uml.xml
TimothyRager Oct 24, 2017
f797627
Update atm_uml.xml
TimothyRager Oct 24, 2017
349f27c
Update atm_uml.xml
TimothyRager Oct 24, 2017
14fd068
Update atm_uml.xml
TimothyRager Oct 24, 2017
2e95227
Update atm_uml.xml
TimothyRager Oct 24, 2017
f92d0c1
Update atm_uml.xml
TimothyRager Oct 24, 2017
1c8098a
Add AccountWarehouse to faciliate user-user transfers
TimothyRager Oct 24, 2017
4ee90ce
Update atm_uml.xml
TimothyRager Oct 24, 2017
9e0dd43
Update atm_uml.xml
TimothyRager Oct 24, 2017
7bb105f
Update atm_uml.xml
TimothyRager Oct 24, 2017
25a26d3
Add ownedByUserID property in Account
TimothyRager Oct 24, 2017
9967be7
Update atm_uml.xml
TimothyRager Oct 24, 2017
c5bf7c7
Begin designing Console
TimothyRager Oct 24, 2017
4d104d9
Begin designing Console
TimothyRager Oct 24, 2017
a4472d2
Update atm_uml.xml
TimothyRager Oct 24, 2017
52344db
Update atm_uml.xml
TimothyRager Oct 24, 2017
b1b364c
Update atm_uml.xml
TimothyRager Oct 24, 2017
759ec1c
Create project and update to include jUnit functionality
Oct 24, 2017
9181e4d
Merge branch 'master' of https://github.com/TimothyRager/ZCW-MacroLab…
Oct 24, 2017
e86ad17
Update Security with getters
TimothyRager Oct 24, 2017
766ef5d
Create unit test Security.getName()
Oct 24, 2017
56e78d5
Merge branch 'master' of https://github.com/TimothyRager/ZCW-MacroLab…
Oct 24, 2017
3c99968
Create unit test for Security.getNumberOwned()
Oct 24, 2017
f1767ef
Create unit test for Security.changeNumberOwned()
Oct 24, 2017
7bb7bf6
Create unit test for Security.getValue()
Oct 24, 2017
8169b9b
Create SecurityFactory class and unit tests
Oct 24, 2017
7f98f54
Add constructors to Account class
TimothyRager Oct 24, 2017
063eefb
Add changeTransactionHistory() to Account
TimothyRager Oct 24, 2017
bbb255d
Add getOwnerID() to Account
TimothyRager Oct 24, 2017
551b954
Begin creating Account class and unit tests for methods
Oct 24, 2017
f32bf38
Update unit tests for Account class
Oct 24, 2017
5443685
Add constructors to InvestmentAccount
TimothyRager Oct 24, 2017
39f7702
Update atm_uml.xml
TimothyRager Oct 24, 2017
1eaaf0a
Update atm_uml.xml
TimothyRager Oct 24, 2017
868f8c6
Update atm_uml.xml
TimothyRager Oct 24, 2017
f7c5c71
Update atm_uml.xml
TimothyRager Oct 24, 2017
8c7395d
Update atm_uml.xml
TimothyRager Oct 24, 2017
bd5dd4d
Update InvestmentAccount class and member methods
Oct 24, 2017
c7fdada
Merge branch 'master' of https://github.com/TimothyRager/ZCW-MacroLab…
Oct 24, 2017
08af775
Change transaction methods in InvestmentAccount to return bool and no…
TimothyRager Oct 25, 2017
a1b9dae
Modified arguments in InvestmentAccount methods
TimothyRager Oct 25, 2017
befd3db
Update methods in InvestmentAccount. Add methods and change arguments…
Oct 25, 2017
63c0b75
Merge branch 'master' of https://github.com/TimothyRager/ZCW-MacroLab…
Oct 25, 2017
435a111
Updated tests for transacting 0 and positive (buy) shares in Investme…
Oct 25, 2017
c33b58b
Add test for InvestmentAccount.tradeSecurity() passed negative values
Oct 25, 2017
af5512c
Added setters for InvestmentAccount.totalSecuritiesValue and Investme…
Oct 25, 2017
cdfa683
Add setter methods for totalAccountBalance and totalSecuritiesValue t…
TimothyRager Oct 25, 2017
2ee8e51
Update atm_uml.xml
TimothyRager Oct 25, 2017
112fcf3
Change Account.balance to protected
TimothyRager Oct 25, 2017
cafedfa
Add override method for InvestmentAccount to changeBalance, create te…
Oct 25, 2017
938c9ef
Merge branch 'master' of https://github.com/TimothyRager/ZCW-MacroLab…
Oct 25, 2017
873cb6d
Updated Account.transactionHistory to type ArrayList<String>
Oct 25, 2017
41dc370
Add transactionBuilder functionality to Account
TimothyRager Oct 25, 2017
72c8872
Add overloaded changeBalance to InvestmentAccount
TimothyRager Oct 25, 2017
559626f
Add Account.transactionBuilder(), updated changeBalance, overloaded c…
Oct 25, 2017
f006e1f
Debugged tests and IA/Account methods that were exhibiting unexpected…
Oct 25, 2017
bdb396a
Updated mainTests to account for buying pre-existing securites in Inv…
Oct 25, 2017
a0afcae
Refactor tests to make them more rigorous
Oct 25, 2017
fd634f5
Begin creation of AccountFactory and related test methods
Oct 25, 2017
29d0e53
Add overloads for createInvestment methods
TimothyRager Oct 25, 2017
a56bdba
Add overloaded constructors to SavingAccount
TimothyRager Oct 25, 2017
c86c03c
Create SavingAccount, constructors, getInterestRate(). Create associa…
Oct 25, 2017
2f6b64b
Merge branch 'master' of https://github.com/TimothyRager/ZCW-MacroLab…
Oct 25, 2017
3c1a222
Create factory methods to create SavingAccount and associated tests
Oct 25, 2017
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
1 change: 1 addition & 0 deletions Untitled Diagram.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" type="github" version="7.5.8" editor="www.draw.io"><diagram name="Page-1" id="dd4fdf45-0a81-a461-4935-abd9e4a15d39">3Vvbkps4EP0aP84UQuDLYzKX7MtWpWq2ajePDMiGGoxYIY/tfP1KIDCoZUe2uaR2XmJaQqCjo+7TajLDT9vDNxbk8Z80IunMdaLDDD/PXBd52BP/SMuxsnirVWXYsCRSnU6Gt+QnUUZHWXdJRIpOR05pypO8awxplpGQd2wBY3Tf7bamafepebAhwPAWBim0/p1EPFZWNF+dGv4gySZWj16686rhPQg/NozuMvW8mYvX5V/VvA3qsdREiziI6L5lwi8z/MQo5dWv7eGJpBLbGrbqvtczrc17M5Jxmxvc6obPIN2pqf8VMxJEwqbGKvixRqXYJ9s0yMTV132ccPKWB6Fs2gsSwAer+z8J4+TQMqkX+UbolnB2FF1Ua43JsXu5Py2Au1S2uIW9v1DGQC36phn5NHHxQ83djIMPcACzFzcI+snJi0XLpbHgAeNvPODSuE7S9ImmlJW9sVP+yc6c0Q/SalmvVQuEzL0WMuR0MfMgZtgAGe4BsbkFYpHYVOqSpO90/3IyfC0NoiGmLPlJMx6IB32VM0/ENvySJptMNL5TzulW9s6iL3JfCxvNSVZZlN9YmlB+fVUoi36viZzFMxJX5dYkcgrOWfgLumMh6fBCLPSGqF6LyiQnd88SmbBXg3yniXil0wjI74yAkDZE9XbqLm0FmxeyWtQFWNQkEqulL2wPzJ075jnt2+7WtNt7oO4SzHJXECYHDXlCsxGma3Jug013ZbFTwfYaakMt4IZaWm4oRtKAJ5/dEH0PMDXgLWRyWvBSV2y3gYjhwzMB1y5mDCYgBCY8IRWWkAr1xCfgAlRCPcSzi9DBgHYHmDVyt0SqNvUcA/UaozXqZwKZ7gVXGqerCYFABgYC0UMf6ExEFIgHx1a3XHYozr8w1t7X74hp8aMa8NZoiwHlGvENyTew+MaaTBlVfSOIBNx8w8tvfC1oGg1HVN/IG8JdTSu/scGrYUOM8C3d2qG7Khqx7d2W35Xflr7mBn+AYBZqKb+vZq6Wa48qvxFMHcOYhB8zeVAjZfhMJpcYSfpkZH+SY8UISIyqzBHMt+AuHkaPmTabIdmt12oCQQaztEaVO//uyG6MfTGuOp8uUTOxYW5gw2SpmgszF8UBh2xzfgRAsZhu33cFVAbyMDYcXBkgX3crkEgmOXXpdMgaK5jKHAn0ndfLg0DJgpSs+UBq4ZDwfyRFH3119aMk7CUyyzaBUHXbwq+vf5yGkZffCUsEkoRZb4Cm8NDaAO6V2uNBjdFz4oR0d9NTvtPkUfVzlv0mPIaMJ6PDE5PTfEINa+JRnQKMzSNtfbHjW/HolqW2SVAmDWY1fBMEM4tqU53kpkmZ8lfA1LXI+cXwxajIieU5Nn5enYfnilimHYMgd/EIo5lviGbI7wGs/2GhyeQlTOL7ymijL5Seqf7aQegnXkjXI/05iPpJrXWNkiIPeBi38r9G8jeWPWUfZbGGq7Oy/pMA5E2YBWCodEOWlGRtoVAQc6mqdhsZ5eaTQnFrReY697wPKad7NuKtDNmz6Ui5F6Sgzr0UYjLa8qSXN7ADJGYUFHF5YfjCwhRvDLUNPFm8wRax2MiUs1BpOZWy388n1+vyCa8MgQayyeshzng2tbGr48wpNYF5yUDFIQMda1/boaNnScexqkP6YfpScxG2xSE9WcL6QL0lS5rvc/pNluCmbapD9RKPVh3yl11MR60OYZg15oyGpChMQuGXcsC7dvJa0uQ5Y6oBmw/TJipLdw5e3BsPXjzomawPWcbyTA+aKvb0D7BsXdMD0usuejWqJ9/0gLTnKB71Vrm2KVy0aGmjvW6PeAYO1T7j9+WQu3rUVIsti3R/BEfqMUuDVRi40KAyL1PmG+vy97trPQv2HRishirL4+lKOAqnjuwzVM/xdCUcmPCPhQ2C2Ji+lxqtvCUuT5/4V7vy9P8o8Mt/</diagram></mxfile>
1 change: 1 addition & 0 deletions atm_uml.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" type="github" version="7.6.0" editor="www.draw.io"><diagram name="Page-1" id="dd4fdf45-0a81-a461-4935-abd9e4a15d39">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</diagram></mxfile>
8 changes: 8 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@
<groupId>io.zipcoder</groupId>
<artifactId>project-2-atm</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>

</dependencies>

</project>
75 changes: 75 additions & 0 deletions src/main/java/io/zipcoder/macrolabs/atm/Account.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
package io.zipcoder.macrolabs.atm;

import java.util.ArrayList;

public class Account {
private String accountName="";
private final int ownedByUserID;
private final int accountNumber;
private static int nextAccountNumber;
protected double balance=0;
private ArrayList<String> transactionHistory=new ArrayList<>();

static{
nextAccountNumber=1;
}

//Object initialization block
{
accountNumber=nextAccountNumber;
nextAccountNumber++;
}



public Account(int passedOwnerUserID)
{
ownedByUserID=passedOwnerUserID;
}

public Account(int passedOwnerUserID, String passedAccountName){
accountName=passedAccountName;
ownedByUserID=passedOwnerUserID;
}

protected String transactionBuilder(String descriptionOfChange, double amount){
String lineItem="";
lineItem+=descriptionOfChange + amount;
return lineItem;
}

public void changeBalance(double amount){
balance+=amount;
changeTransactionHistory(transactionBuilder("Account, overload changeBalance ", amount) );

}

public double getBalance(){
return (balance);
}

public ArrayList<String> getTransactionHistory() {
return transactionHistory;
}

protected void changeTransactionHistory(String lineItem){
transactionHistory.add(lineItem);
}

public String getAccountName(){
return accountName;
}

public int getAccountNumber() {
return accountNumber;
}

public void setAccountName(String passedAccountName) {
accountName = passedAccountName;
}

public int getOwnerID(){
return ownedByUserID;
}

}
39 changes: 39 additions & 0 deletions src/main/java/io/zipcoder/macrolabs/atm/AccountFactory.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package io.zipcoder.macrolabs.atm;

public class AccountFactory {

private AccountFactory(){}

public static InvestmentAccount createInvestment(int passedUserID){
return (createInvestment(passedUserID, "Investment Account"));
}

public static InvestmentAccount createInvestment(int passedUserID,
String passedAccountName){
return (createInvestment(passedUserID, passedAccountName, 7.95));

}

public static InvestmentAccount createInvestment(int passedUserID,
String passedAccountName,
double passedCommissionRate){
return (new InvestmentAccount(passedUserID, passedAccountName, passedCommissionRate));
}

public static SavingAccount createSaving(int passedUserID){
return (createSaving(passedUserID, "Saving Account"));
}

public static SavingAccount createSaving(int passedUserID,
String passedAccountName){
return (createSaving(passedUserID, passedAccountName, 0.01));

}

public static SavingAccount createSaving(int passedUserID,
String passedAccountName,
double passedInterestRate){
return (new SavingAccount(passedUserID, passedAccountName, passedInterestRate));
}

}
Loading