diff --git a/build/classes/gui/GUIMyBank.class b/build/classes/gui/GUIMyBank.class index 3b7c515..9d3b769 100644 Binary files a/build/classes/gui/GUIMyBank.class and b/build/classes/gui/GUIMyBank.class differ diff --git a/build/classes/gui/GUIMyBank.form b/build/classes/gui/GUIMyBank.form index e1c7a98..40771b4 100644 --- a/build/classes/gui/GUIMyBank.form +++ b/build/classes/gui/GUIMyBank.form @@ -24,17 +24,9 @@ - - - - - - - - - - - + + + @@ -78,6 +70,11 @@ + + + + + @@ -124,8 +121,8 @@ - - + + diff --git a/build/classes/logic/ContoCorrente.class b/build/classes/logic/ContoCorrente.class index e997d5a..e179b8b 100644 Binary files a/build/classes/logic/ContoCorrente.class and b/build/classes/logic/ContoCorrente.class differ diff --git a/build/classes/logic/conti/conto_692979128.json b/build/classes/logic/conti/conto_692979128.json new file mode 100644 index 0000000..75ff43f --- /dev/null +++ b/build/classes/logic/conti/conto_692979128.json @@ -0,0 +1,8 @@ +{ + "nome" : "Verde", + "cognome" : "Bassanetti", + "codiceFiscale" : "AAAAAA12A123Z", + "saldo" : 200.0, + "numeroContoCorrente" : 692979128, + "dataDiNascita" : "04/07/2008" +} \ No newline at end of file diff --git a/build/classes/logic/conti/movimenti_692979128.txt b/build/classes/logic/conti/movimenti_692979128.txt new file mode 100644 index 0000000..ceafdde --- /dev/null +++ b/build/classes/logic/conti/movimenti_692979128.txt @@ -0,0 +1,39 @@ +[12:04:00.000 03/03/2026] Apertura del conto con saldo iniziale di 200.0 +[12:04:02.002 03/03/2026] Versamento di 5000.0 effettuato con successo. +[12:04:02.002 03/03/2026] Saldo corrente: 5200.0 +[12:04:05.005 03/03/2026] Prelievo di 20.0 effettuato con successo. +[12:04:05.005 03/03/2026] Saldo corrente: 5180.0 +[16:33:26.026 03/03/2026] Versamento di 2.0E11 effettuato con successo. +[16:33:26.026 03/03/2026] Saldo corrente: 2.000000002E11 +[16:33:48.048 03/03/2026] Prelievo di 2.0E10 effettuato con successo. +[16:33:48.048 03/03/2026] Saldo corrente: 1.800000002E11 +[16:33:57.057 03/03/2026] Tentato prelievo di 2.0E11 fallito per superamento saldo. +[16:33:57.057 03/03/2026] Saldo corrente: 1.800000002E11 +[16:34:00.000 03/03/2026] Prelievo di 2000000.0 effettuato con successo. +[16:34:00.000 03/03/2026] Saldo corrente: 1.799980002E11 +[16:34:05.005 03/03/2026] Tentato prelievo di 2.0E11 fallito per superamento saldo. +[16:34:05.005 03/03/2026] Saldo corrente: 1.799980002E11 +[16:34:08.008 03/03/2026] Prelievo di 9.9999999E7 effettuato con successo. +[16:34:08.008 03/03/2026] Saldo corrente: 1.79898000201E11 +[16:34:13.013 03/03/2026] Prelievo di 9.99999999E8 effettuato con successo. +[16:34:13.013 03/03/2026] Saldo corrente: 1.78898000202E11 +[16:34:17.017 03/03/2026] Prelievo di 9.999999999E9 effettuato con successo. +[16:34:17.017 03/03/2026] Saldo corrente: 1.68898000203E11 +[16:34:21.021 03/03/2026] Tentato prelievo di 1.0E17 fallito per superamento saldo. +[16:34:21.021 03/03/2026] Saldo corrente: 1.68898000203E11 +[16:34:23.023 03/03/2026] Tentato prelievo di 9.999999999999E12 fallito per superamento saldo. +[16:34:23.023 03/03/2026] Saldo corrente: 1.68898000203E11 +[16:34:25.025 03/03/2026] Prelievo di 9.99999999E8 effettuato con successo. +[16:34:25.025 03/03/2026] Saldo corrente: 1.67898000204E11 +[16:34:29.029 03/03/2026] Prelievo di 9.999999999E9 effettuato con successo. +[16:34:29.029 03/03/2026] Saldo corrente: 1.57898000205E11 +[16:34:37.037 03/03/2026] Prelievo di 1.0E11 effettuato con successo. +[16:34:37.037 03/03/2026] Saldo corrente: 5.7898000205E10 +[16:34:43.043 03/03/2026] Prelievo di 5.0E10 effettuato con successo. +[16:34:43.043 03/03/2026] Saldo corrente: 7.898000205E9 +[16:34:47.047 03/03/2026] Prelievo di 7.0E9 effettuato con successo. +[16:34:47.047 03/03/2026] Saldo corrente: 8.98000205E8 +[16:34:50.050 03/03/2026] Prelievo di 8.0E8 effettuato con successo. +[16:34:50.050 03/03/2026] Saldo corrente: 9.8000205E7 +[16:34:53.053 03/03/2026] Prelievo di 9.0E7 effettuato con successo. +[16:34:53.053 03/03/2026] Saldo corrente: 8000205.0 diff --git a/src/gui/GUIMyBank.form b/src/gui/GUIMyBank.form index e1c7a98..40771b4 100644 --- a/src/gui/GUIMyBank.form +++ b/src/gui/GUIMyBank.form @@ -24,17 +24,9 @@ - - - - - - - - - - - + + + @@ -78,6 +70,11 @@ + + + + + @@ -124,8 +121,8 @@ - - + + diff --git a/src/gui/GUIMyBank.java b/src/gui/GUIMyBank.java index 9286405..e4e008c 100644 --- a/src/gui/GUIMyBank.java +++ b/src/gui/GUIMyBank.java @@ -59,7 +59,7 @@ public class GUIMyBank extends javax.swing.JFrame { // //GEN-BEGIN:initComponents + // //GEN-BEGIN:initComponents private void initComponents() { lblNome = new javax.swing.JLabel(); @@ -147,125 +147,88 @@ public class GUIMyBank extends javax.swing.JFrame { javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGap(99, 99, 99) - .addComponent(btnAprireContoCorrente)) - .addGroup(layout.createSequentialGroup() - .addGap(56, 56, 56) - .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 272, - javax.swing.GroupLayout.PREFERRED_SIZE))) - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) - .addGroup(layout.createSequentialGroup() - .addGap(17, 17, 17) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGroup(layout - .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(lblDataDiNascita) - .addComponent(lblSaldoIniziale)) - .addGap(18, 18, 18) - .addGroup(layout - .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, - false) - .addGroup(layout.createSequentialGroup() - .addComponent(txtDataDiNascita, - javax.swing.GroupLayout.PREFERRED_SIZE, 64, - javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap( - javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(btnDataDiNascita, - javax.swing.GroupLayout.PREFERRED_SIZE, 39, - javax.swing.GroupLayout.PREFERRED_SIZE)) - .addComponent(txtSaldoIniziale))) - .addGroup(layout.createSequentialGroup() - .addGroup(layout - .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(lblNome) - .addComponent(lblCognome) - .addComponent(lblCodiceFiscale)) - .addGap(26, 26, 26) - .addGroup(layout - .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, - 113, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(txtCodiceFiscale, - javax.swing.GroupLayout.PREFERRED_SIZE, 115, - javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(txtCognome, - javax.swing.GroupLayout.PREFERRED_SIZE, 113, - javax.swing.GroupLayout.PREFERRED_SIZE)))) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 39, - Short.MAX_VALUE) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) - .addComponent(lblNumeroContoCorrente, javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(btnVersamento) - .addComponent(btnPrelievo) - .addComponent(btnListaMovimenti) - .addComponent(txtNumeroContoCorrente)) - .addGap(23, 23, 23))); - layout.setVerticalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGap(14, 14, 14) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(lblNome) - .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(lblNumeroContoCorrente)) + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGap(99, 99, 99) + .addComponent(btnAprireContoCorrente) + .addContainerGap(187, Short.MAX_VALUE)) + .addGroup(layout.createSequentialGroup() + .addGap(17, 17, 17) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(lblDataDiNascita) + .addComponent(lblSaldoIniziale)) + .addGap(18, 18, 18) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addGroup(layout.createSequentialGroup() + .addComponent(txtDataDiNascita, javax.swing.GroupLayout.PREFERRED_SIZE, 64, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(lblCognome) - .addComponent(txtCognome, javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(txtNumeroContoCorrente, javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGap(18, 18, 18) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addGroup(layout - .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(lblCodiceFiscale) - .addComponent(txtCodiceFiscale, - javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGap(18, 18, 18) - .addGroup(layout - .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(lblDataDiNascita) - .addComponent(txtDataDiNascita, - javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(btnDataDiNascita)) - .addGap(18, 18, 18) - .addGroup(layout - .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(lblSaldoIniziale) - .addComponent(txtSaldoIniziale, - javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE))) - .addGroup(layout.createSequentialGroup() - .addComponent(btnVersamento) - .addGap(18, 18, 18) - .addComponent(btnPrelievo) - .addGap(18, 18, 18) - .addComponent(btnListaMovimenti))) - .addGap(18, 18, 18) - .addComponent(btnAprireContoCorrente) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 37, - Short.MAX_VALUE) - .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 65, - javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(14, 14, 14))); + .addComponent(btnDataDiNascita, javax.swing.GroupLayout.PREFERRED_SIZE, 39, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(txtSaldoIniziale))) + .addGroup(layout.createSequentialGroup() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(lblNome) + .addComponent(lblCognome) + .addComponent(lblCodiceFiscale)) + .addGap(26, 26, 26) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txtCodiceFiscale, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txtCognome, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)))) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 39, Short.MAX_VALUE) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(lblNumeroContoCorrente, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(btnVersamento) + .addComponent(btnPrelievo) + .addComponent(btnListaMovimenti) + .addComponent(txtNumeroContoCorrente)) + .addGap(23, 23, 23)) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jScrollPane1) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGap(14, 14, 14) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(lblNome) + .addComponent(txtNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(lblNumeroContoCorrente)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(lblCognome) + .addComponent(txtCognome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txtNumeroContoCorrente, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(lblCodiceFiscale) + .addComponent(txtCodiceFiscale, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(lblDataDiNascita) + .addComponent(txtDataDiNascita, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(btnDataDiNascita)) + .addGap(18, 18, 18) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(lblSaldoIniziale) + .addComponent(txtSaldoIniziale, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addGroup(layout.createSequentialGroup() + .addComponent(btnVersamento) + .addGap(18, 18, 18) + .addComponent(btnPrelievo) + .addGap(18, 18, 18) + .addComponent(btnListaMovimenti))) + .addGap(18, 18, 18) + .addComponent(btnAprireContoCorrente) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jScrollPane1) + .addGap(14, 14, 14)) + ); pack(); }// //GEN-END:initComponents diff --git a/src/logic/ContoCorrente.java b/src/logic/ContoCorrente.java index 822cdb5..89bb01c 100644 --- a/src/logic/ContoCorrente.java +++ b/src/logic/ContoCorrente.java @@ -15,6 +15,7 @@ import java.util.Date; import java.util.List; import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; /** * @@ -80,7 +81,7 @@ public class ContoCorrente { } private void logSaldoCorrente() throws IOException{ - log("Saldo corrente: " + this.saldo + "\n"); + log("Saldo corrente: " + this.saldo); } private void log(String messaggio) throws IOException{ @@ -100,6 +101,7 @@ public class ContoCorrente { } } + @JsonIgnore public String getLog() throws IOException{ try (BufferedReader br = new BufferedReader( new FileReader(MyBank.PATH_CONTI + "movimenti_" + this.numeroContoCorrente + ".txt"))) { diff --git a/src/logic/conti/conto_692979128.json b/src/logic/conti/conto_692979128.json new file mode 100644 index 0000000..75ff43f --- /dev/null +++ b/src/logic/conti/conto_692979128.json @@ -0,0 +1,8 @@ +{ + "nome" : "Verde", + "cognome" : "Bassanetti", + "codiceFiscale" : "AAAAAA12A123Z", + "saldo" : 200.0, + "numeroContoCorrente" : 692979128, + "dataDiNascita" : "04/07/2008" +} \ No newline at end of file diff --git a/src/logic/conti/movimenti_692979128.txt b/src/logic/conti/movimenti_692979128.txt new file mode 100644 index 0000000..ceafdde --- /dev/null +++ b/src/logic/conti/movimenti_692979128.txt @@ -0,0 +1,39 @@ +[12:04:00.000 03/03/2026] Apertura del conto con saldo iniziale di 200.0 +[12:04:02.002 03/03/2026] Versamento di 5000.0 effettuato con successo. +[12:04:02.002 03/03/2026] Saldo corrente: 5200.0 +[12:04:05.005 03/03/2026] Prelievo di 20.0 effettuato con successo. +[12:04:05.005 03/03/2026] Saldo corrente: 5180.0 +[16:33:26.026 03/03/2026] Versamento di 2.0E11 effettuato con successo. +[16:33:26.026 03/03/2026] Saldo corrente: 2.000000002E11 +[16:33:48.048 03/03/2026] Prelievo di 2.0E10 effettuato con successo. +[16:33:48.048 03/03/2026] Saldo corrente: 1.800000002E11 +[16:33:57.057 03/03/2026] Tentato prelievo di 2.0E11 fallito per superamento saldo. +[16:33:57.057 03/03/2026] Saldo corrente: 1.800000002E11 +[16:34:00.000 03/03/2026] Prelievo di 2000000.0 effettuato con successo. +[16:34:00.000 03/03/2026] Saldo corrente: 1.799980002E11 +[16:34:05.005 03/03/2026] Tentato prelievo di 2.0E11 fallito per superamento saldo. +[16:34:05.005 03/03/2026] Saldo corrente: 1.799980002E11 +[16:34:08.008 03/03/2026] Prelievo di 9.9999999E7 effettuato con successo. +[16:34:08.008 03/03/2026] Saldo corrente: 1.79898000201E11 +[16:34:13.013 03/03/2026] Prelievo di 9.99999999E8 effettuato con successo. +[16:34:13.013 03/03/2026] Saldo corrente: 1.78898000202E11 +[16:34:17.017 03/03/2026] Prelievo di 9.999999999E9 effettuato con successo. +[16:34:17.017 03/03/2026] Saldo corrente: 1.68898000203E11 +[16:34:21.021 03/03/2026] Tentato prelievo di 1.0E17 fallito per superamento saldo. +[16:34:21.021 03/03/2026] Saldo corrente: 1.68898000203E11 +[16:34:23.023 03/03/2026] Tentato prelievo di 9.999999999999E12 fallito per superamento saldo. +[16:34:23.023 03/03/2026] Saldo corrente: 1.68898000203E11 +[16:34:25.025 03/03/2026] Prelievo di 9.99999999E8 effettuato con successo. +[16:34:25.025 03/03/2026] Saldo corrente: 1.67898000204E11 +[16:34:29.029 03/03/2026] Prelievo di 9.999999999E9 effettuato con successo. +[16:34:29.029 03/03/2026] Saldo corrente: 1.57898000205E11 +[16:34:37.037 03/03/2026] Prelievo di 1.0E11 effettuato con successo. +[16:34:37.037 03/03/2026] Saldo corrente: 5.7898000205E10 +[16:34:43.043 03/03/2026] Prelievo di 5.0E10 effettuato con successo. +[16:34:43.043 03/03/2026] Saldo corrente: 7.898000205E9 +[16:34:47.047 03/03/2026] Prelievo di 7.0E9 effettuato con successo. +[16:34:47.047 03/03/2026] Saldo corrente: 8.98000205E8 +[16:34:50.050 03/03/2026] Prelievo di 8.0E8 effettuato con successo. +[16:34:50.050 03/03/2026] Saldo corrente: 9.8000205E7 +[16:34:53.053 03/03/2026] Prelievo di 9.0E7 effettuato con successo. +[16:34:53.053 03/03/2026] Saldo corrente: 8000205.0