~ubuntu-branches/debian/jessie/bgfinancas/jessie

« back to all changes in this revision

Viewing changes to src/Cadastros/Contas.java

  • Committer: Package Import Robot
  • Author(s): Jose Robson Mariano Alves
  • Date: 2014-09-24 15:01:45 UTC
  • Revision ID: package-import@ubuntu.com-20140924150145-le88tcphc5vmc8sh
Tags: upstream-2.0
ImportĀ upstreamĀ versionĀ 2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
Copyright 2010, 2012, 2014 Jose Robson Mariano Alves
 
3
 
 
4
This file is part of bgfinancas.
 
5
 
 
6
This program is free software: you can redistribute it and/or modify
 
7
it under the terms of the GNU General Public License as published by
 
8
the Free Software Foundation, either version 3 of the License, or
 
9
(at your option) any later version.
 
10
 
 
11
This package is distributed in the hope that it will be useful,
 
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
 
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
14
GNU General Public License for more details.
 
15
 
 
16
You should have received a copy of the GNU General Public License
 
17
along with this program. If not, see <http://www.gnu.org/licenses/>.
 
18
 
 
19
*/
 
20
 
 
21
package Cadastros;
 
22
 
 
23
import Biblioteca.Botoes;
 
24
import Biblioteca.Formularios;
 
25
import Biblioteca.Janela;
 
26
import Biblioteca.Janelinha;
 
27
import Biblioteca.Numeros;
 
28
import Biblioteca.Validar;
 
29
import Biblioteca.Visual;
 
30
import Principal.TelaPrincipal;
 
31
 
 
32
public class Contas extends Janela {
 
33
 
 
34
    private String Acao;
 
35
    private String id_conta;
 
36
    private TelaPrincipal Principal;
 
37
 
 
38
    public Contas(TelaPrincipal principal) {
 
39
        initComponents();
 
40
        Visual.Janela(this.getJanela());
 
41
        BarraDeFerramentas.add(Botoes.Cadastrar(this));
 
42
        BarraDeFerramentas.add(Botoes.Alterar(this));
 
43
        BarraDeFerramentas.add(Botoes.Excluir(this));
 
44
        BarraDeFerramentas.add(Botoes.Consultar(this));
 
45
        BarraDeFerramentas.add(Botoes.Sair(this));
 
46
        Principal = principal;
 
47
        PreencherFormulario(null,null,null,null,null,null);
 
48
    }
 
49
    
 
50
    public void PreencherFormulario(String acao, String conta_id, String nome_conta, String valor, String Ativado, String Saldo_total)
 
51
    {
 
52
        Acao = acao;
 
53
        id_conta = conta_id;
 
54
        Formularios.LimparFormulario(JPanelConta);
 
55
        conta_nome.requestFocus();
 
56
        BFinalizar.setVisible(true);
 
57
        if(Acao==null)
 
58
        {
 
59
            BFinalizar.setText(Lingua.getMensagem("aguardando_acao"));
 
60
            Formularios.DesativarFormulario(JPanelConta);
 
61
        }else{
 
62
            Formularios.AtivarFormulario(JPanelConta);
 
63
            BFinalizar.setText(Acao);
 
64
            if(Acao.equals(Lingua.getMensagem("cadastrar")))
 
65
            {
 
66
                //
 
67
            }else{
 
68
                ativar.setSelectedItem(Ativado);
 
69
                saldo_total.setSelectedItem(Saldo_total);
 
70
                conta_nome.setText(nome_conta);
 
71
                saldo_atual.setText(valor);
 
72
                if(Acao.equals(Lingua.getMensagem("consultar")))
 
73
                {
 
74
                    BFinalizar.setVisible(false);
 
75
                }
 
76
            }
 
77
        }
 
78
    }
 
79
    
 
80
    public boolean ValidarFormulario()
 
81
    {
 
82
        if(conta_nome.getText().equals("")) {
 
83
            Janelinha.Aviso(Lingua.getMensagem("atencao"),Lingua.getMensagem("campo_nao_informado")+" "+Lingua.getMensagem("conta"));
 
84
            conta_nome.requestFocus(true);
 
85
            return false;
 
86
        }else if(Validar.Numero(saldo_atual.getText())) {
 
87
            Janelinha.Aviso(Lingua.getMensagem("atencao"),Lingua.getMensagem("saldo_inicial_invalido"));
 
88
            saldo_atual.requestFocus(true);
 
89
            return false;
 
90
        }else if(Acao.equals(Lingua.getMensagem("cadastrar")) && saldo_atual.getText().equals(""))
 
91
        {
 
92
            Janelinha.Aviso(Lingua.getMensagem("atencao"),Lingua.getMensagem("campo_nao_informado")+" "+Lingua.getMensagem("saldo_atual"));
 
93
            saldo_atual.requestFocus(true);
 
94
            return false;
 
95
        }else{
 
96
            return true;
 
97
        }
 
98
    }
 
99
    
 
100
    public void Cadastrar()
 
101
    {
 
102
        int ativada;
 
103
        if(ativar.getSelectedItem().equals(Lingua.getMensagem("sim")))
 
104
            ativada = 0;
 
105
        else
 
106
            ativada = 1;
 
107
        int saldototal;
 
108
        if(saldo_total.getSelectedItem().equals(Lingua.getMensagem("sim")))
 
109
            saldototal = 0;
 
110
        else
 
111
            saldototal = 1;
 
112
        try{
 
113
            Banco.executeUpdate("INSERT INTO contas (nome,valor,ativada,saldo_total) VALUES ('"+conta_nome.getText()+"','"+Numeros.Arrendondar(saldo_atual.getText())+"','"+ativada+"','"+saldototal+"')");
 
114
            Janelinha.Aviso(Lingua.getMensagem("cadastrar"),Lingua.getMensagem("sucesso"));
 
115
            Principal.ContasSaldo();
 
116
            PreencherFormulario(Lingua.getMensagem("cadastrar"),null,null,null,null,null);
 
117
        }catch(Exception e){
 
118
            Janelinha.Aviso(Lingua.getMensagem("erro"),Lingua.getMensagem("excecao")+" "+e);
 
119
        }
 
120
    }
 
121
    
 
122
    public void Alterar()
 
123
    {
 
124
        int ativada;
 
125
        if(ativar.getSelectedItem().equals(Lingua.getMensagem("sim")))
 
126
            ativada = 0;
 
127
        else
 
128
            ativada = 1;
 
129
        int saldototal;
 
130
        if(saldo_total.getSelectedItem().equals(Lingua.getMensagem("sim")))
 
131
            saldototal = 0;
 
132
        else
 
133
            saldototal = 1;
 
134
        try{
 
135
            Banco.executeUpdate("UPDATE contas SET nome='"+conta_nome.getText()+"', valor='"+saldo_atual.getText()+"', ativada='"+ativada+"', saldo_total='"+saldototal+"' WHERE id_conta='"+id_conta+"'");
 
136
            Janelinha.Aviso(Lingua.getMensagem("alterar"),Lingua.getMensagem("sucesso"));
 
137
            Principal.ContasSaldo();
 
138
            PreencherFormulario(null,null,null,null,null,null);
 
139
        }catch(Exception e){
 
140
            Janelinha.Aviso(Lingua.getMensagem("erro"),Lingua.getMensagem("excecao")+" "+e);
 
141
        }
 
142
    }
 
143
    
 
144
    public void Excluir()
 
145
    {    
 
146
        try{
 
147
            Banco.executeQuery("SELECT * FROM despesas WHERE id_conta='"+id_conta+"'");
 
148
            if(Banco.getResultSet().next())
 
149
            {
 
150
                Janelinha.Aviso(Lingua.getMensagem("erro"),Lingua.getMensagem("restricao_excluir"));
 
151
                PreencherFormulario(null,null,null,null,null,null);
 
152
            }else{
 
153
                Banco.executeQuery("SELECT * FROM receitas WHERE id_conta='"+id_conta+"'");
 
154
                if(Banco.getResultSet().next())
 
155
                {
 
156
                    Janelinha.Aviso(Lingua.getMensagem("erro"),Lingua.getMensagem("restricao_excluir"));
 
157
                    PreencherFormulario(null,null,null,null,null,null);
 
158
                }else{
 
159
                    Banco.executeQuery("SELECT * FROM transferencias WHERE id_conta1='"+id_conta+"' OR id_conta2='"+id_conta+"'");
 
160
                    if(Banco.getResultSet().next())
 
161
                    {
 
162
                        Janelinha.Aviso(Lingua.getMensagem("erro"),Lingua.getMensagem("restricao_excluir"));
 
163
                        PreencherFormulario(null,null,null,null,null,null);
 
164
                    }else{
 
165
                        if(Banco.executeUpdate("DELETE FROM contas WHERE id_conta='"+id_conta+"'")>0)
 
166
                        {
 
167
                            Janelinha.Aviso(Lingua.getMensagem("excluir"),Lingua.getMensagem("sucesso"));
 
168
                            PreencherFormulario(null,null,null,null,null,null);
 
169
                            Principal.ContasSaldo();
 
170
                        }else{
 
171
                            PreencherFormulario(null,null,null,null,null,null);
 
172
                        }
 
173
                    }
 
174
                }
 
175
            }
 
176
        }catch(Exception e){
 
177
            Janelinha.Aviso(Lingua.getMensagem("erro"),Lingua.getMensagem("excecao")+" "+e);
 
178
        }
 
179
    }
 
180
    
 
181
    @Override
 
182
    public void Botoes(String acao)
 
183
    {
 
184
        if(acao.equals(Lingua.getMensagem("cadastrar"))){
 
185
            PreencherFormulario(Lingua.getMensagem("cadastrar"),null,null,null,null,null);
 
186
        }else if(acao.equals(Lingua.getMensagem("alterar"))){
 
187
            new ContasPesquisar(this,Lingua.getMensagem("alterar")).setVisible(true);
 
188
        }else if(acao.equals(Lingua.getMensagem("excluir"))){
 
189
            new ContasPesquisar(this,Lingua.getMensagem("excluir")).setVisible(true);
 
190
        }else if(acao.equals(Lingua.getMensagem("consultar"))){
 
191
            new ContasPesquisar(this,Lingua.getMensagem("consultar")).setVisible(true);
 
192
        }else if(acao.equals(Lingua.getMensagem("sair"))){
 
193
            Contas.this.dispose();
 
194
        }
 
195
    }
 
196
 
 
197
    /** This method is called from within the constructor to
 
198
     * initialize the form.
 
199
     * WARNING: Do NOT modify this code. The content of this method is
 
200
     * always regenerated by the Form Editor.
 
201
     */
 
202
    @SuppressWarnings("unchecked")
 
203
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
 
204
    private void initComponents() {
 
205
 
 
206
        BarraDeFerramentas = new javax.swing.JToolBar();
 
207
        JPanelConta = new javax.swing.JPanel();
 
208
        NOME = new javax.swing.JLabel();
 
209
        conta_nome = new javax.swing.JTextField();
 
210
        BFinalizar = new javax.swing.JButton();
 
211
        saldo_atual = new javax.swing.JTextField();
 
212
        NOME2 = new javax.swing.JLabel();
 
213
        ativar = new javax.swing.JComboBox();
 
214
        NOME3 = new javax.swing.JLabel();
 
215
        NOME4 = new javax.swing.JLabel();
 
216
        NOME5 = new javax.swing.JLabel();
 
217
        saldo_total = new javax.swing.JComboBox();
 
218
 
 
219
        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
 
220
        setTitle(Lingua.getMensagem("contas"));
 
221
        setFont(new java.awt.Font("Tahoma", 0, 11)); // NOI18N
 
222
        setForeground(java.awt.Color.cyan);
 
223
        getContentPane().setLayout(null);
 
224
 
 
225
        BarraDeFerramentas.setFloatable(false);
 
226
        BarraDeFerramentas.setRollover(true);
 
227
        getContentPane().add(BarraDeFerramentas);
 
228
        BarraDeFerramentas.setBounds(0, 0, 490, 41);
 
229
 
 
230
        JPanelConta.setBorder(javax.swing.BorderFactory.createTitledBorder(null, Lingua.getMensagem("dados_conta"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, FonteFinancas, new java.awt.Color(0, 102, 204)));
 
231
        JPanelConta.setForeground(new java.awt.Color(51, 94, 168));
 
232
        JPanelConta.setLayout(null);
 
233
 
 
234
        NOME.setFont(FonteFinancas);
 
235
        NOME.setForeground(new java.awt.Color(51, 94, 168));
 
236
        NOME.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
 
237
        NOME.setText(Lingua.getMensagem("nome")+":");
 
238
        JPanelConta.add(NOME);
 
239
        NOME.setBounds(8, 30, 130, 20);
 
240
 
 
241
        conta_nome.setFont(FonteFinancas);
 
242
        JPanelConta.add(conta_nome);
 
243
        conta_nome.setBounds(150, 30, 200, 20);
 
244
 
 
245
        BFinalizar.setFont(FonteFinancas);
 
246
        BFinalizar.setText(Lingua.getMensagem("aguardando_acao"));
 
247
        BFinalizar.addActionListener(new java.awt.event.ActionListener() {
 
248
            public void actionPerformed(java.awt.event.ActionEvent evt) {
 
249
                BFinalizarActionPerformed(evt);
 
250
            }
 
251
        });
 
252
        JPanelConta.add(BFinalizar);
 
253
        BFinalizar.setBounds(150, 150, 100, 20);
 
254
 
 
255
        saldo_atual.setFont(FonteFinancas);
 
256
        JPanelConta.add(saldo_atual);
 
257
        saldo_atual.setBounds(170, 60, 80, 20);
 
258
        saldo_atual.setDocument(new Biblioteca.NotacaoInternacional());
 
259
 
 
260
        NOME2.setFont(FonteFinancas);
 
261
        NOME2.setForeground(new java.awt.Color(51, 94, 168));
 
262
        NOME2.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
 
263
        NOME2.setText(Lingua.getMensagem("moeda"));
 
264
        JPanelConta.add(NOME2);
 
265
        NOME2.setBounds(150, 60, 20, 20);
 
266
 
 
267
        ativar.setFont(FonteFinancas);
 
268
        ativar.setModel(new javax.swing.DefaultComboBoxModel(new String[] { Lingua.getMensagem("sim"), Lingua.getMensagem("nao") }));
 
269
        JPanelConta.add(ativar);
 
270
        ativar.setBounds(150, 120, 100, 20);
 
271
 
 
272
        NOME3.setFont(FonteFinancas);
 
273
        NOME3.setForeground(new java.awt.Color(51, 94, 168));
 
274
        NOME3.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
 
275
        NOME3.setText(Lingua.getMensagem("ativada")+":");
 
276
        JPanelConta.add(NOME3);
 
277
        NOME3.setBounds(10, 120, 130, 20);
 
278
 
 
279
        NOME4.setFont(FonteFinancas);
 
280
        NOME4.setForeground(new java.awt.Color(51, 94, 168));
 
281
        NOME4.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
 
282
        NOME4.setText(Lingua.getMensagem("saldo_atual")+":");
 
283
        JPanelConta.add(NOME4);
 
284
        NOME4.setBounds(8, 60, 130, 20);
 
285
 
 
286
        NOME5.setFont(FonteFinancas);
 
287
        NOME5.setForeground(new java.awt.Color(51, 94, 168));
 
288
        NOME5.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
 
289
        NOME5.setText(Lingua.getMensagem("saldo_total")+":");
 
290
        JPanelConta.add(NOME5);
 
291
        NOME5.setBounds(10, 90, 130, 20);
 
292
 
 
293
        saldo_total.setFont(FonteFinancas);
 
294
        saldo_total.setModel(new javax.swing.DefaultComboBoxModel(new String[] { Lingua.getMensagem("sim"), Lingua.getMensagem("nao") }));
 
295
        JPanelConta.add(saldo_total);
 
296
        saldo_total.setBounds(150, 90, 100, 20);
 
297
 
 
298
        getContentPane().add(JPanelConta);
 
299
        JPanelConta.setBounds(20, 60, 390, 200);
 
300
 
 
301
        setSize(new java.awt.Dimension(441, 302));
 
302
        setLocationRelativeTo(null);
 
303
    }// </editor-fold>//GEN-END:initComponents
 
304
 
 
305
private void BFinalizarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_BFinalizarActionPerformed
 
306
    if(Acao.equals(Lingua.getMensagem("cadastrar")))
 
307
    {
 
308
        if(ValidarFormulario() && Janelinha.Pergunta(Lingua.getMensagem("cadastrar"),Lingua.getMensagem("tem_certeza")))
 
309
        {
 
310
            Cadastrar();
 
311
        }
 
312
    }else if(Acao.equals(Lingua.getMensagem("alterar"))){
 
313
        if(ValidarFormulario() && Janelinha.Pergunta(Lingua.getMensagem("alterar"),Lingua.getMensagem("tem_certeza")))
 
314
        {
 
315
            Alterar();
 
316
        }
 
317
    }else if(Acao.equals(Lingua.getMensagem("excluir")))
 
318
    {
 
319
        if(Janelinha.Pergunta(Lingua.getMensagem("excluir"),Lingua.getMensagem("tem_certeza")))
 
320
        {
 
321
            Excluir();
 
322
        }
 
323
    }
 
324
}//GEN-LAST:event_BFinalizarActionPerformed
 
325
 
 
326
    // Variables declaration - do not modify//GEN-BEGIN:variables
 
327
    private javax.swing.JButton BFinalizar;
 
328
    private javax.swing.JToolBar BarraDeFerramentas;
 
329
    private javax.swing.JPanel JPanelConta;
 
330
    private javax.swing.JLabel NOME;
 
331
    private javax.swing.JLabel NOME2;
 
332
    private javax.swing.JLabel NOME3;
 
333
    private javax.swing.JLabel NOME4;
 
334
    private javax.swing.JLabel NOME5;
 
335
    private javax.swing.JComboBox ativar;
 
336
    private javax.swing.JTextField conta_nome;
 
337
    private javax.swing.JTextField saldo_atual;
 
338
    private javax.swing.JComboBox saldo_total;
 
339
    // End of variables declaration//GEN-END:variables
 
340
 
 
341
}