Aggiungi conto corrente
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -25,6 +25,17 @@
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Group type="102" attributes="0">
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="99" max="-2" attributes="0"/>
|
||||
<Component id="btnAprireContoCorrente" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="56" max="-2" attributes="0"/>
|
||||
<Component id="jScrollPane1" min="-2" pref="272" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace max="32767" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="17" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
@@ -42,12 +53,6 @@
|
||||
</Group>
|
||||
<Component id="txtSaldoIniziale" max="32767" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Component id="btnVersamento" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<Group type="102" attributes="0">
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
@@ -63,17 +68,15 @@
|
||||
</Group>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace pref="39" max="32767" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" max="-2" attributes="0">
|
||||
<Component id="lblNumeroContoCorrente" max="32767" attributes="0"/>
|
||||
<Component id="btnVersamento" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtNumeroContoCorrente" alignment="0" max="32767" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="99" max="-2" attributes="0"/>
|
||||
<Component id="btnAprireContoCorrente" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="56" max="-2" attributes="0"/>
|
||||
<Component id="jScrollPane1" min="-2" pref="272" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace max="32767" attributes="0"/>
|
||||
<EmptySpace min="-2" pref="23" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
</DimensionLayout>
|
||||
@@ -84,36 +87,46 @@
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblNome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtNome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="lblNumeroContoCorrente" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblCognome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtCognome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnVersamento" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtNumeroContoCorrente" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Group type="102" attributes="0">
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblCodiceFiscale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtCodiceFiscale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblDataDiNascita" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtDataDiNascita" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnDataDiNascita" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblSaldoIniziale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtSaldoIniziale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<Group type="102" attributes="0">
|
||||
<Component id="btnVersamento" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Component id="btnAprireContoCorrente" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
||||
<EmptySpace pref="37" max="32767" attributes="0"/>
|
||||
<Component id="jScrollPane1" min="-2" pref="65" max="-2" attributes="0"/>
|
||||
<EmptySpace pref="9" max="32767" attributes="0"/>
|
||||
<EmptySpace min="-2" pref="14" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
</DimensionLayout>
|
||||
@@ -221,5 +234,12 @@
|
||||
</Component>
|
||||
</SubComponents>
|
||||
</Container>
|
||||
<Component class="javax.swing.JLabel" name="lblNumeroContoCorrente">
|
||||
<Properties>
|
||||
<Property name="text" type="java.lang.String" value="Numero conto corrente:"/>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component class="javax.swing.JTextField" name="txtNumeroContoCorrente">
|
||||
</Component>
|
||||
</SubComponents>
|
||||
</Form>
|
||||
|
||||
Binary file not shown.
@@ -2,6 +2,8 @@
|
||||
<project-private xmlns="http://www.netbeans.org/ns/project-private/1">
|
||||
<editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
|
||||
<open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">
|
||||
<group/>
|
||||
<group>
|
||||
<file>file:/home/Verde/git/GUIMyBank/src/gui/GUIMyBank.java</file>
|
||||
</group>
|
||||
</open-files>
|
||||
</project-private>
|
||||
|
||||
@@ -25,6 +25,17 @@
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Group type="102" attributes="0">
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="99" max="-2" attributes="0"/>
|
||||
<Component id="btnAprireContoCorrente" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="56" max="-2" attributes="0"/>
|
||||
<Component id="jScrollPane1" min="-2" pref="272" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace max="32767" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="17" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
@@ -42,12 +53,6 @@
|
||||
</Group>
|
||||
<Component id="txtSaldoIniziale" max="32767" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace min="-2" pref="37" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Component id="btnVersamento" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<Group type="102" attributes="0">
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
@@ -63,17 +68,15 @@
|
||||
</Group>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace pref="39" max="32767" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" max="-2" attributes="0">
|
||||
<Component id="lblNumeroContoCorrente" max="32767" attributes="0"/>
|
||||
<Component id="btnVersamento" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtNumeroContoCorrente" alignment="0" max="32767" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="99" max="-2" attributes="0"/>
|
||||
<Component id="btnAprireContoCorrente" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<Group type="102" alignment="0" attributes="0">
|
||||
<EmptySpace min="-2" pref="56" max="-2" attributes="0"/>
|
||||
<Component id="jScrollPane1" min="-2" pref="272" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace max="32767" attributes="0"/>
|
||||
<EmptySpace min="-2" pref="23" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
</DimensionLayout>
|
||||
@@ -84,36 +87,46 @@
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblNome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtNome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="lblNumeroContoCorrente" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblCognome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtCognome" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnVersamento" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtNumeroContoCorrente" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="0" attributes="0">
|
||||
<Group type="102" attributes="0">
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblCodiceFiscale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtCodiceFiscale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblDataDiNascita" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtDataDiNascita" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnDataDiNascita" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Group type="103" groupAlignment="3" attributes="0">
|
||||
<Component id="lblSaldoIniziale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
<Component id="txtSaldoIniziale" alignment="3" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<Group type="102" attributes="0">
|
||||
<Component id="btnVersamento" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Component id="btnPrelievo" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Component id="btnListaMovimenti" min="-2" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
<EmptySpace type="separate" max="-2" attributes="0"/>
|
||||
<Component id="btnAprireContoCorrente" min="-2" max="-2" attributes="0"/>
|
||||
<EmptySpace type="unrelated" max="-2" attributes="0"/>
|
||||
<EmptySpace pref="37" max="32767" attributes="0"/>
|
||||
<Component id="jScrollPane1" min="-2" pref="65" max="-2" attributes="0"/>
|
||||
<EmptySpace pref="9" max="32767" attributes="0"/>
|
||||
<EmptySpace min="-2" pref="14" max="-2" attributes="0"/>
|
||||
</Group>
|
||||
</Group>
|
||||
</DimensionLayout>
|
||||
@@ -221,5 +234,12 @@
|
||||
</Component>
|
||||
</SubComponents>
|
||||
</Container>
|
||||
<Component class="javax.swing.JLabel" name="lblNumeroContoCorrente">
|
||||
<Properties>
|
||||
<Property name="text" type="java.lang.String" value="Numero conto corrente:"/>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component class="javax.swing.JTextField" name="txtNumeroContoCorrente">
|
||||
</Component>
|
||||
</SubComponents>
|
||||
</Form>
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
package gui;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.text.ParseException;
|
||||
import java.util.Date;
|
||||
import java.util.regex.Pattern;
|
||||
import logic.MyBank;
|
||||
import logic.ContoCorrente;
|
||||
@@ -20,7 +22,7 @@ import javax.swing.border.LineBorder;
|
||||
public class GUIMyBank extends javax.swing.JFrame {
|
||||
|
||||
static Border borderOriginale = UIManager.getBorder("TextField.border");
|
||||
static ContoCorrente contoCorrente;
|
||||
static ContoCorrente contoCorrenteAperto;
|
||||
|
||||
private static final java.util.logging.Logger logger = java.util.logging.Logger
|
||||
.getLogger(GUIMyBank.class.getName());
|
||||
@@ -30,6 +32,9 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
*/
|
||||
public GUIMyBank() {
|
||||
initComponents();
|
||||
lblNumeroContoCorrente.setVisible(false);
|
||||
txtNumeroContoCorrente.setVisible(false);
|
||||
txtNumeroContoCorrente.setEditable(false);
|
||||
btnVersamento.setVisible(false);
|
||||
btnPrelievo.setVisible(false);
|
||||
btnListaMovimenti.setVisible(false);
|
||||
@@ -45,6 +50,7 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
@SuppressWarnings("unchecked")
|
||||
// <editor-fold defaultstate="collapsed" desc="Generated
|
||||
// <editor-fold defaultstate="collapsed" desc="Generated
|
||||
// <editor-fold defaultstate="collapsed" desc="Generated
|
||||
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
||||
private void initComponents() {
|
||||
|
||||
@@ -65,6 +71,8 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
btnListaMovimenti = new javax.swing.JButton();
|
||||
jScrollPane1 = new javax.swing.JScrollPane();
|
||||
txtaListaMovimenti = new javax.swing.JTextArea();
|
||||
lblNumeroContoCorrente = new javax.swing.JLabel();
|
||||
txtNumeroContoCorrente = new javax.swing.JTextField();
|
||||
|
||||
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
|
||||
|
||||
@@ -126,12 +134,21 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
txtaListaMovimenti.setRows(5);
|
||||
jScrollPane1.setViewportView(txtaListaMovimenti);
|
||||
|
||||
lblNumeroContoCorrente.setText("Numero conto corrente:");
|
||||
|
||||
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)
|
||||
@@ -145,12 +162,7 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
.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))
|
||||
.addGap(37, 37, 37)
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(btnVersamento)
|
||||
.addComponent(btnPrelievo)
|
||||
.addComponent(btnListaMovimenti)))
|
||||
.addComponent(txtSaldoIniziale)))
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(lblNome)
|
||||
@@ -160,14 +172,15 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
.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)))))
|
||||
.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))
|
||||
.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)
|
||||
@@ -175,41 +188,48 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
.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(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(btnVersamento))
|
||||
.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)
|
||||
.addComponent(btnPrelievo))
|
||||
.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)
|
||||
.addComponent(btnListaMovimenti))
|
||||
.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))
|
||||
.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.UNRELATED)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 37, Short.MAX_VALUE)
|
||||
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 65, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addContainerGap(9, Short.MAX_VALUE))
|
||||
.addGap(14, 14, 14))
|
||||
);
|
||||
|
||||
pack();
|
||||
}// </editor-fold>//GEN-END:initComponents
|
||||
|
||||
private void btnListaMovimentiActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnListaMovimentiActionPerformed
|
||||
private void btnListaMovimentiActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_btnListaMovimentiActionPerformed
|
||||
txtaListaMovimenti.setText(contoCorrente.getLogOperazioni());
|
||||
txtaListaMovimenti.setVisible(true);
|
||||
}//GEN-LAST:event_btnListaMovimentiActionPerformed
|
||||
}// GEN-LAST:event_btnListaMovimentiActionPerformed
|
||||
|
||||
private void txtNomeFocusGained(java.awt.event.FocusEvent evt) {// GEN-FIRST:event_txtNomeFocusGained
|
||||
txtNome.setBorder(borderOriginale);
|
||||
@@ -273,18 +293,20 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
}// GEN-LAST:event_btnPrelievoActionPerformed
|
||||
|
||||
private void btnAprireContoCorrenteActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_btnAprireContoCorrenteActionPerformed
|
||||
String nome = txtNome.getText();
|
||||
String cognome = txtCognome.getText();
|
||||
String codiceFiscale = txtCodiceFiscale.getText();
|
||||
// String dataDiNascita = txtDataDiNascita.getText();
|
||||
String saldoIniziale = txtSaldoIniziale.getText();
|
||||
String nome = txtNome.getText().trim();
|
||||
String cognome = txtCognome.getText().trim();
|
||||
String codiceFiscale = txtCodiceFiscale.getText().trim().toUpperCase();
|
||||
String dataDiNascitaString = txtDataDiNascita.getText().trim();
|
||||
Date dataDiNascita;
|
||||
String saldoInizialeString = txtSaldoIniziale.getText().trim();
|
||||
double saldoIniziale;
|
||||
boolean nomeEmpty = nome.isEmpty();
|
||||
boolean cognomeEmpty = cognome.isEmpty();
|
||||
boolean codiceFiscaleEmpty = codiceFiscale.isEmpty();
|
||||
// boolean dataDiNascitaEmpty = dataDiNascita.isEmpty();
|
||||
boolean saldoInizialeEmpty = saldoIniziale.isEmpty();
|
||||
boolean dataDiNascitaEmpty = dataDiNascitaString.isEmpty();
|
||||
boolean saldoInizialeEmpty = saldoInizialeString.isEmpty();
|
||||
|
||||
if (nomeEmpty || cognomeEmpty || codiceFiscaleEmpty /* || dataDiNascitaEmpty */ || saldoInizialeEmpty) {
|
||||
if (nomeEmpty || cognomeEmpty || codiceFiscaleEmpty || dataDiNascitaEmpty || saldoInizialeEmpty) {
|
||||
if (nomeEmpty) {
|
||||
txtNome.setBorder(new LineBorder(Color.red));
|
||||
}
|
||||
@@ -294,11 +316,9 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
if (codiceFiscaleEmpty) {
|
||||
txtCodiceFiscale.setBorder(new LineBorder(Color.red));
|
||||
}
|
||||
/*
|
||||
* if(dataDiNascitaEmpty){
|
||||
* txtDataDiNascita.setBorder(new LineBorder(Color.red));
|
||||
* }
|
||||
*/
|
||||
if (dataDiNascitaEmpty) {
|
||||
txtDataDiNascita.setBorder(new LineBorder(Color.red));
|
||||
}
|
||||
if (saldoInizialeEmpty) {
|
||||
txtSaldoIniziale.setBorder(new LineBorder(Color.red));
|
||||
}
|
||||
@@ -306,23 +326,33 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
return;
|
||||
}
|
||||
|
||||
if (isCodiceFiscaleValid(codiceFiscale)) {
|
||||
if (MyBank.isCodiceFiscaleValid(codiceFiscale)) {
|
||||
JOptionPane.showMessageDialog(null, "Il codice fiscale non è valido.");
|
||||
txtCodiceFiscale.setBorder(new LineBorder(Color.red));
|
||||
return;
|
||||
}
|
||||
// TODO: gestione data
|
||||
// if(dataDiNascita.isEmpty()){
|
||||
// dataDiNascitaError = true;
|
||||
// }
|
||||
if (!isNumeroValid(saldoIniziale)) {
|
||||
|
||||
try {
|
||||
dataDiNascita = MyBank.dataDiNascita(dataDiNascitaString);
|
||||
} catch (ParseException _) {
|
||||
JOptionPane.showMessageDialog(null, "La data di nascita non è valida.");
|
||||
txtDataDiNascita.setBorder(new LineBorder(Color.red));
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
saldoIniziale = MyBank.valoreDouble(saldoInizialeString);
|
||||
} catch (NumberFormatException _) {
|
||||
JOptionPane.showMessageDialog(null, "Il saldo iniziale non è valido.");
|
||||
txtSaldoIniziale.setBorder(new LineBorder(Color.red));
|
||||
return;
|
||||
}
|
||||
|
||||
contoCorrente = new ContoCorrente(nome, cognome, codiceFiscale, Double.parseDouble(saldoIniziale));
|
||||
this.contoCorrenteAperto = MyBank.aggiungiConto(nome, cognome, codiceFiscale, dataDiNascita, saldoIniziale);
|
||||
txtNumeroContoCorrente.setText(Integer.toString(MyBank.getConti().getLast().getNumeroContoCorrente()));
|
||||
|
||||
lblNumeroContoCorrente.setVisible(true);
|
||||
txtNumeroContoCorrente.setVisible(true);
|
||||
btnVersamento.setVisible(true);
|
||||
btnPrelievo.setVisible(true);
|
||||
btnListaMovimenti.setVisible(true);
|
||||
@@ -336,29 +366,6 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
|
||||
}// GEN-LAST:event_btnAprireContoCorrenteActionPerformed
|
||||
|
||||
boolean isCodiceFiscaleValid(String codiceFiscale) {
|
||||
Pattern pattern = Pattern.compile("[A-Z]{6}[ABCDEHLMPRST]{3}\\d{2}[A-Z]\\d{3}[A-Z]");
|
||||
|
||||
return !pattern.matcher(codiceFiscale).find();
|
||||
}
|
||||
|
||||
boolean isNumeroValid(String numero) {
|
||||
boolean isNumeroValid = true;
|
||||
double valoreNumero;
|
||||
|
||||
try {
|
||||
valoreNumero = Double.parseDouble(numero);
|
||||
|
||||
if (valoreNumero <= 0) {
|
||||
isNumeroValid = false;
|
||||
}
|
||||
} catch (NumberFormatException _) {
|
||||
isNumeroValid = false;
|
||||
}
|
||||
|
||||
return isNumeroValid;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param args the command line arguments
|
||||
*/
|
||||
@@ -399,11 +406,13 @@ public class GUIMyBank extends javax.swing.JFrame {
|
||||
private javax.swing.JLabel lblCognome;
|
||||
private javax.swing.JLabel lblDataDiNascita;
|
||||
private javax.swing.JLabel lblNome;
|
||||
private javax.swing.JLabel lblNumeroContoCorrente;
|
||||
private javax.swing.JLabel lblSaldoIniziale;
|
||||
private javax.swing.JTextField txtCodiceFiscale;
|
||||
private javax.swing.JTextField txtCognome;
|
||||
private javax.swing.JTextField txtDataDiNascita;
|
||||
private javax.swing.JTextField txtNome;
|
||||
private javax.swing.JTextField txtNumeroContoCorrente;
|
||||
private javax.swing.JTextField txtSaldoIniziale;
|
||||
private javax.swing.JTextArea txtaListaMovimenti;
|
||||
// End of variables declaration//GEN-END:variables
|
||||
|
||||
@@ -36,10 +36,14 @@ public class MyBank {
|
||||
static final String ERRORE_GENERICO = "Errore: opzione non valida.";
|
||||
static final String ERRORE_CONTI_VUOTO = "Errore: è necessario aggiungere almeno un conto corrente prima di proseguire.";
|
||||
static final String PATH_CONTI = "./src/logic/conti/";
|
||||
private static ArrayList<ContoCorrente> conti = importaConti();
|
||||
|
||||
public static ArrayList<ContoCorrente> getConti() {
|
||||
return conti;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
int scelta = -1;
|
||||
ArrayList<ContoCorrente> conti = importaConti();
|
||||
|
||||
do {
|
||||
System.out.println("Scegliere un'opzione:");
|
||||
@@ -58,7 +62,6 @@ public class MyBank {
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
aggiungiConto(conti);
|
||||
System.out.println("Numero conto: " + conti.getLast().getNumeroContoCorrente());
|
||||
System.out.println("Conto corrente aggiunto con successo.");
|
||||
pausa();
|
||||
@@ -143,36 +146,20 @@ public class MyBank {
|
||||
return conti;
|
||||
}
|
||||
|
||||
static void aggiungiConto(ArrayList<ContoCorrente> conti) {
|
||||
String nome;
|
||||
String cognome;
|
||||
String codiceFiscale;
|
||||
Date dataDiNascita;
|
||||
double saldoIniziale;
|
||||
public static ContoCorrente aggiungiConto(String nome, String cognome, String codiceFiscale, Date dataDiNascita,
|
||||
double saldoIniziale) {
|
||||
int numeroContoCorrente;
|
||||
boolean error;
|
||||
ContoCorrente contoCorrente;
|
||||
|
||||
do {
|
||||
error = false;
|
||||
System.out.print("Inserire il proprio nome: ");
|
||||
nome = sc.nextLine().trim();
|
||||
|
||||
System.out.print("Inserire il proprio cognome: ");
|
||||
cognome = sc.nextLine().trim();
|
||||
|
||||
codiceFiscale = codiceFiscale();
|
||||
|
||||
dataDiNascita = dataDiNascita();
|
||||
|
||||
saldoIniziale = quantita("del saldo iniziale");
|
||||
boolean exit = false;
|
||||
int i = 0;
|
||||
|
||||
numeroContoCorrente = Math.abs(codiceFiscale.hashCode());
|
||||
|
||||
if (ContoCorrente.getNumeriContiCorrenti().contains(numeroContoCorrente)) {
|
||||
System.out.println("Errore: esiste già un conto corrente per questo codice fiscale, riprovare.");
|
||||
pausa();
|
||||
error = true;
|
||||
for (; i < conti.size() && exit; i++) {
|
||||
exit = conti.get(i).getNumeroContoCorrente() == numeroContoCorrente;
|
||||
}
|
||||
contoCorrente = conti.get(i);
|
||||
} else {
|
||||
File percorsoConti = new File(PATH_CONTI);
|
||||
if (!percorsoConti.exists()) {
|
||||
@@ -183,74 +170,32 @@ public class MyBank {
|
||||
conti.add(contoCorrente);
|
||||
salvaContoCorrente(contoCorrente);
|
||||
}
|
||||
} while (error);
|
||||
|
||||
return contoCorrente;
|
||||
}
|
||||
|
||||
static String codiceFiscale() {
|
||||
String codiceFiscale;
|
||||
boolean error;
|
||||
public static boolean isCodiceFiscaleValid(String codiceFiscale) {
|
||||
Pattern pattern = Pattern.compile("[A-Z]{6}[ABCDEHLMPRST]{3}\\d{2}[A-Z]\\d{3}[A-Z]");
|
||||
Matcher matcher;
|
||||
|
||||
do {
|
||||
error = false;
|
||||
System.out.print("Inserire il proprio codice fiscale: ");
|
||||
codiceFiscale = sc.nextLine().trim().toUpperCase();
|
||||
matcher = pattern.matcher(codiceFiscale);
|
||||
if (!matcher.find()) {
|
||||
System.out.println(ERRORE_GENERICO);
|
||||
pausa();
|
||||
error = true;
|
||||
}
|
||||
} while (error);
|
||||
return codiceFiscale;
|
||||
return pattern.matcher(codiceFiscale).find();
|
||||
}
|
||||
|
||||
static Date dataDiNascita() {
|
||||
Date dataDiNascita = null;
|
||||
boolean error;
|
||||
public static Date dataDiNascita(String dataDiNascita) throws ParseException {
|
||||
final String FORMATO_DATA = "dd/MM/yyyy";
|
||||
SimpleDateFormat sdf = new SimpleDateFormat(FORMATO_DATA);
|
||||
sdf.setLenient(false);
|
||||
|
||||
do {
|
||||
error = false;
|
||||
System.out.print("Inserire la propria data di nascita nel formato " + FORMATO_DATA + ": ");
|
||||
try {
|
||||
dataDiNascita = sdf.parse(sc.nextLine());
|
||||
} catch (ParseException _) {
|
||||
System.out.println("Errore: la data inserita non è valida.");
|
||||
pausa();
|
||||
error = true;
|
||||
}
|
||||
} while (error);
|
||||
return dataDiNascita;
|
||||
return sdf.parse(dataDiNascita);
|
||||
}
|
||||
|
||||
static double quantita(String diCheCosa) {
|
||||
double quantita = 0;
|
||||
boolean error;
|
||||
public static double valoreDouble(String numeroDouble) throws NumberFormatException {
|
||||
double valoreDouble;
|
||||
|
||||
do {
|
||||
error = false;
|
||||
System.out.print("Inserire la quantità " + diCheCosa + ": ");
|
||||
try {
|
||||
quantita = sc.nextDouble();
|
||||
sc.nextLine();
|
||||
valoreDouble = Double.parseDouble(numeroDouble);
|
||||
|
||||
if (quantita <= 0) {
|
||||
System.out.println("Errore: la quantità non può essere minore o uguale a zero.");
|
||||
pausa();
|
||||
error = true;
|
||||
if (valoreDouble <= 0) {
|
||||
throw new NumberFormatException();
|
||||
}
|
||||
} catch (InputMismatchException _) {
|
||||
System.out.println(ERRORE_GENERICO);
|
||||
pausa();
|
||||
error = true;
|
||||
}
|
||||
} while (error);
|
||||
|
||||
return quantita;
|
||||
return valoreDouble;
|
||||
}
|
||||
|
||||
static void salvaContoCorrente(ContoCorrente conto) {
|
||||
|
||||
Reference in New Issue
Block a user