Advertisement
Lowe576

ojo

May 21st, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.25 KB | None | 0 0
  1. package bank;
  2.  
  3. /**
  4. *
  5. * @author elev
  6. */
  7. public class Banksystem {
  8.  
  9. /**
  10. * @param args the command line arguments
  11. */
  12. public static void main(String[] args) {
  13. // TODO code application logic here
  14. Account a1 = new Account("Eva", 4500);
  15. Account a2 = new Account("Ture", 0);
  16. Account a3 = new Account("Stina", 67000);
  17.  
  18. Bank banken =new Bank();
  19.  
  20. banken.addAccount(a1);
  21. banken.addAccount(a2);
  22. banken.addAccount(a3);
  23. System.out.println(banken.findAccount(1002).holder());
  24.  
  25.  
  26.  
  27. Gui gui=new Gui(banken);
  28. }
  29.  
  30. }
  31.  
  32.  
  33. package bank;
  34.  
  35. /**
  36. *
  37. * @author elev
  38. */
  39. public class Account {
  40. private double balance;
  41. private int accountNo;
  42. private String holder;
  43. private static int counter = 1000;
  44.  
  45. public Account(String holder, double initBalance){
  46. this.holder = holder;
  47. this.balance = initBalance;
  48. accountNo = ++counter;
  49. }
  50.  
  51. public void deposit(double amount){
  52. this.balance += amount;
  53. }
  54.  
  55. public double balance(){
  56. return balance;}
  57. public void withdraw( double amount){
  58. if(balance >= amount){
  59. this.balance -= amount;
  60. }
  61. }
  62. public int accountNo(){
  63. return accountNo;
  64. }
  65. public String holder(){
  66. return holder;
  67. }
  68. public String toString(){
  69. return "name: " + holder + "\n " + "accountNo:" + accountNo + "\n " + "balance: " + balance +"\n";
  70. }
  71.  
  72. }
  73.  
  74.  
  75.  
  76. package bank;
  77.  
  78. /**
  79. *
  80. * @author elev
  81. */
  82. import java.util.*;
  83. public class Bank {
  84. private ArrayList accounts = new ArrayList();
  85.  
  86. public void addAccount (Account a){
  87. accounts.add(a);
  88. }
  89. public Account findAccount(int accountNo){
  90. for(int i = 0; i < accounts.size(); i++){
  91. Account temp = (Account)accounts.get(i);
  92. if(temp.accountNo()== accountNo){
  93. return temp;
  94. }
  95. }
  96. return null;
  97. }
  98.  
  99. }
  100.  
  101.  
  102. package bank;
  103.  
  104. /**
  105. *
  106. * @author elev
  107. */
  108. import java.awt.*;
  109. import java.awt.event.*;
  110. import javax.swing.*;
  111. public class Gui {
  112. private JFrame frame = new JFrame("Crime Bank");
  113. private JPanel background, centerPanel,southPanel,menuBar;
  114. private JLabel l_accountNo,l_name,l_deposit,l_withdraw,l_balance;
  115. private JTextField tf_accountNo, tf_name, tf_deposit,tf_withdraw,tf_balance;
  116. private JButton b_find,b_deposit,b_withdraw,b_clear,b_create;
  117. private JMenuBar baren;
  118. private JMenu menu;
  119. private JMenuItem i_item,i_accountNo,i_deposit,i_withdraw,i_clear,i_find;
  120. private Account findAcc;
  121. private Bank banken;
  122.  
  123.  
  124. public Gui(Bank b){
  125. banken = b;
  126. //baren = new JMenuBar();
  127. // menu = new JMenu("file");
  128. //i_item = new JMenuItem("close");
  129. // i_clear = new JMenuItem("clear");
  130. // i_find = new JMenuItem("find");
  131. //menu.add(i_clear);
  132. //baren.add(menu);
  133. //menu.add(i_item);
  134. //menu.add(i_find);
  135. //this.frame.setJMenuBar(baren);
  136. background = new JPanel();
  137. background.setLayout(new BorderLayout());
  138. centerPanel = new JPanel();
  139. background.setBorder(BorderFactory.createLineBorder(Color.RED,9, false));
  140.  
  141. centerPanel.setLayout((new GridLayout(5,2)));
  142. southPanel = new JPanel();
  143. southPanel.setLayout((new GridLayout(3,2)));
  144. l_accountNo = new JLabel("accountNo: ");
  145. l_name = new JLabel("name:");
  146. l_deposit = new JLabel ("deposit:");
  147. l_withdraw = new JLabel("withdraw:");
  148. l_balance = new JLabel("balance:");
  149. b_find = new JButton("FIND");
  150. b_deposit = new JButton("Deposit");
  151. b_withdraw = new JButton("Witdraw");
  152. b_clear = new JButton("CLEAR");
  153. b_create = new JButton("CREATE");
  154. southPanel.add(b_deposit);
  155. southPanel.add(b_find);
  156. southPanel.add(b_withdraw);
  157. southPanel.add(b_clear);
  158. southPanel.add(b_create);
  159.  
  160.  
  161. tf_accountNo= new JTextField(12);
  162. tf_name = new JTextField(12);
  163. tf_deposit= new JTextField(12);
  164. tf_withdraw= new JTextField(12);
  165. tf_balance= new JTextField(12);
  166. centerPanel.add(l_accountNo);
  167. centerPanel.add(tf_accountNo);
  168. centerPanel.add(l_name);
  169. centerPanel.add(tf_name);
  170. centerPanel.add(l_balance);
  171. centerPanel.add(tf_balance);
  172. centerPanel.add(l_deposit);
  173. centerPanel.add(tf_deposit);
  174. centerPanel.add(l_withdraw);
  175. centerPanel.add(tf_withdraw);
  176. background.add(centerPanel, BorderLayout.CENTER);
  177. background.add(southPanel, BorderLayout.SOUTH);
  178. frame.setContentPane(background);
  179. frame.pack();
  180. frame.setVisible(true);
  181. ClearHandler cl = new ClearHandler();
  182. FH fh = new FH();
  183.  
  184. this.b_clear.addActionListener(cl);
  185. this.i_clear.addActionListener(cl);
  186. this.b_withdraw.addActionListener(new WH());
  187. this.b_deposit.addActionListener(new DH());
  188. this.b_find.addActionListener(fh);
  189. this.i_find.addActionListener(fh);
  190. this.b_create.addActionListener(new Create());
  191. this.banken = banken;
  192.  
  193. }
  194. private class ClearHandler implements ActionListener{
  195. public void actionPerformed(ActionEvent ae){
  196. tf_accountNo.setText("");
  197. tf_name.setText("");
  198. tf_deposit.setText("");
  199. tf_withdraw.setText("");
  200. tf_balance.setText("");
  201.  
  202. }
  203. }
  204. //private class DepositHandler implements ActionListener{
  205. //public void actionePerformed(ActionEvent ae){
  206. // double amount = Double.parseDouble(tf_deposit.getText());
  207. //foundAcc.deposit(amount);
  208. //tf_balance.setText(""+ foundAcc.balance)
  209. // System.out.println("deposit");
  210. //}
  211. //}
  212.  
  213. private class WH implements ActionListener{
  214. public void actionPerformed(ActionEvent ae){
  215. System.out.println("");
  216. String sWithdraw = tf_withdraw.getText();
  217. double amount = Double.parseDouble(sWithdraw);
  218. findAcc.withdraw(amount);
  219. tf_balance.setText("" + findAcc.balance());
  220.  
  221. }
  222. }
  223. private class DH implements ActionListener{
  224. public void actionPerformed(ActionEvent ae){
  225. System.out.println("");
  226. String sDeposit = tf_deposit.getText();
  227. double amount = Double.parseDouble(sDeposit);
  228. findAcc.deposit(amount);
  229. tf_balance.setText("" + findAcc.balance());
  230. System.out.println("Deposit" + amount);
  231. }
  232. // private class FL implements ActionListener{
  233. // public void actionPerformed(ActionEvent ae){
  234. // String accNo = tf_accountNo.getText();
  235. // foundAcc = banken.findAccount(Integer.parseInt(accNo));
  236. // String holder = founcAcc.holder();
  237. //double balance = foundAcc.holder();
  238. // tf_balance.setText(""+balance);
  239.  
  240. //}
  241. }
  242. private class FH implements ActionListener{
  243. public void actionPerformed(ActionEvent ae){
  244. System.out.println("");
  245. String sAccNo = tf_accountNo.getText();
  246. int accNo = 0;
  247. try{
  248. accNo = Integer.parseInt(sAccNo);
  249.  
  250. }catch (NumberFormatException nfe){
  251. JOptionPane.showMessageDialog(frame, "skriv in siffror som kontonummer");
  252.  
  253. return;}
  254. Account findAcc = banken.findAccount(accNo);
  255. if(findAcc!=null){
  256. tf_name.setText(findAcc.holder());
  257. tf_balance.setText(""+findAcc.balance());
  258. }else JOptionPane.showMessageDialog(frame, "kontot finns inte! ");
  259. }
  260. }
  261. private class Create implements ActionListener{
  262. public void actionPerformed(ActionEvent ae){
  263. System.out.println("Create");
  264. String holder = tf_name.getText();
  265. double amount = Double.parseDouble(tf_deposit.getText());
  266. Account create = new Account(holder, amount);
  267. tf_accountNo.setText("" + create.accountNo());
  268. banken.addAccount(create);
  269. tf_deposit.setText("");
  270. tf_balance.setText("" + create.balance());
  271.  
  272. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement