Advertisement
SysGates

jFrame venda

Mar 11th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 36.11 KB | None | 0 0
  1. package gerenciamentovendas;
  2.  
  3. import ConexaoBD.ConectaBanco;
  4. import GerenciamentoClass.ControleEstoque;
  5. import GerenciamentoClass.Produto;
  6. import PreenchimentoTabelas.ModeloTabela;
  7. import java.awt.event.KeyEvent;
  8. import java.sql.*;
  9. import java.util.ArrayList;
  10. import javax.swing.JOptionPane;
  11. import javax.swing.ListSelectionModel;
  12. import java.sql.PreparedStatement;
  13. import javax.swing.JTextField;
  14. import java.text.DecimalFormat;
  15. import java.util.logging.Level;
  16. import java.util.logging.Logger;
  17.  
  18. public class Tela_venda extends javax.swing.JFrame {
  19. ConectaBanco conecta = new ConectaBanco();
  20.  double total = 0 ;
  21.  double lucrofinal = 0;
  22.     long id[] = new long[100];  int qtd_controle= 0, x = 0, y = 0, qtd_vendida= 0, cont = 0; //Variáveis usadas para gerenciar a classe ControleEstoque
  23.     long consulta[][] = new long[2][100] ;
  24.     long pp= 0, id_prod = 0, qtd = 0;
  25.     int c=0 ,  i=0 ;
  26.     double lucro;
  27.     int quantidade=0 ;
  28.     ControleEstoque ct = new ControleEstoque();
  29.     Produto p = new Produto();
  30.         public Tela_venda() {
  31.         initComponents();
  32.         conecta.conexao();
  33.        }
  34.  
  35.     /**
  36.      * This method is called from within the constructor to initialize the form.
  37.      * WARNING: Do NOT modify this code. The content of this method is always
  38.      * regenerated by the Form Editor.
  39.      */
  40.     @SuppressWarnings("unchecked")
  41.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  42.     private void initComponents() {
  43.  
  44.         jTextField6 = new javax.swing.JTextField();
  45.         jLabel4 = new javax.swing.JLabel();
  46.         jPanel1 = new javax.swing.JPanel();
  47.         jTextField_codigo = new javax.swing.JTextField();
  48.         jTextField_valor = new javax.swing.JTextField();
  49.         jTextField_quantidade = new javax.swing.JTextField();
  50.         jTextField_total = new javax.swing.JTextField();
  51.         jLabel1 = new javax.swing.JLabel();
  52.         jLabel2 = new javax.swing.JLabel();
  53.         jLabel3 = new javax.swing.JLabel();
  54.         jLabel5 = new javax.swing.JLabel();
  55.         jTextField_produto = new javax.swing.JTextField();
  56.         jLabel6 = new javax.swing.JLabel();
  57.         jTextField_dinheiro = new javax.swing.JTextField();
  58.         jButton_adicionar = new javax.swing.JButton();
  59.         jButton_finalizarCompra = new javax.swing.JButton();
  60.         jScrollPane1 = new javax.swing.JScrollPane();
  61.         jTable_venda = new javax.swing.JTable();
  62.         jLabel7 = new javax.swing.JLabel();
  63.         jSeparator1 = new javax.swing.JSeparator();
  64.         jSeparator2 = new javax.swing.JSeparator();
  65.         volta_menu = new javax.swing.JButton();
  66.         jButton4 = new javax.swing.JButton();
  67.         jLabel10 = new javax.swing.JLabel();
  68.         jLabel8 = new javax.swing.JLabel();
  69.         jLabel9 = new javax.swing.JLabel();
  70.         jButton_pesquisar = new javax.swing.JButton();
  71.         jTextField_subTotal = new javax.swing.JTextField();
  72.         jTextField_troco = new javax.swing.JTextField();
  73.         jMenuBar1 = new javax.swing.JMenuBar();
  74.         jMenu1 = new javax.swing.JMenu();
  75.         jMenu2 = new javax.swing.JMenu();
  76.         jMenu3 = new javax.swing.JMenu();
  77.  
  78.         jTextField6.setText("jTextField6");
  79.  
  80.         jLabel4.setText("jLabel4");
  81.  
  82.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  83.         setTitle("CAIXA ABERTO");
  84.         setPreferredSize(new java.awt.Dimension(1010, 650));
  85.         setResizable(false);
  86.  
  87.         jTextField_codigo.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
  88.         jTextField_codigo.setHorizontalAlignment(javax.swing.JTextField.CENTER);
  89.         jTextField_codigo.addActionListener(new java.awt.event.ActionListener() {
  90.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  91.                 jTextField_codigoActionPerformed(evt);
  92.             }
  93.         });
  94.         jTextField_codigo.addKeyListener(new java.awt.event.KeyAdapter() {
  95.             public void keyPressed(java.awt.event.KeyEvent evt) {
  96.                 jTextField_codigoKeyPressed(evt);
  97.             }
  98.         });
  99.  
  100.         jTextField_valor.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  101.         jTextField_valor.setHorizontalAlignment(javax.swing.JTextField.CENTER);
  102.  
  103.         jTextField_quantidade.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  104.         jTextField_quantidade.setHorizontalAlignment(javax.swing.JTextField.CENTER);
  105.         jTextField_quantidade.setToolTipText("Números inteiros");
  106.         jTextField_quantidade.addKeyListener(new java.awt.event.KeyAdapter() {
  107.             public void keyPressed(java.awt.event.KeyEvent evt) {
  108.                 jTextField_quantidadeKeyPressed(evt);
  109.             }
  110.         });
  111.  
  112.         jTextField_total.setBackground(new java.awt.Color(0, 0, 0));
  113.         jTextField_total.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
  114.         jTextField_total.setForeground(new java.awt.Color(255, 255, 0));
  115.         jTextField_total.addActionListener(new java.awt.event.ActionListener() {
  116.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  117.                 jTextField_totalActionPerformed(evt);
  118.             }
  119.         });
  120.  
  121.         jLabel1.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  122.         jLabel1.setText("Valor Unidade:");
  123.  
  124.         jLabel2.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  125.         jLabel2.setText("Quantidade:");
  126.  
  127.         jLabel3.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
  128.         jLabel3.setText("Total:");
  129.  
  130.         jLabel5.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  131.         jLabel5.setText("Produto:");
  132.  
  133.         jTextField_produto.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  134.         jTextField_produto.setHorizontalAlignment(javax.swing.JTextField.CENTER);
  135.  
  136.         jLabel6.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  137.         jLabel6.setText("Valor:");
  138.  
  139.         jTextField_dinheiro.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  140.         jTextField_dinheiro.setHorizontalAlignment(javax.swing.JTextField.CENTER);
  141.  
  142.         jButton_adicionar.setText("Adicionar");
  143.         jButton_adicionar.addActionListener(new java.awt.event.ActionListener() {
  144.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  145.                 jButton_adicionarActionPerformed(evt);
  146.             }
  147.         });
  148.  
  149.         jButton_finalizarCompra.setText("Finalizar Compra");
  150.         jButton_finalizarCompra.addActionListener(new java.awt.event.ActionListener() {
  151.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  152.                 jButton_finalizarCompraActionPerformed(evt);
  153.             }
  154.         });
  155.  
  156.         jTable_venda.setModel(new javax.swing.table.DefaultTableModel(
  157.             new Object [][] {
  158.                 {null, null, null, null},
  159.                 {null, null, null, null},
  160.                 {null, null, null, null},
  161.                 {null, null, null, null},
  162.                 {null, null, null, null},
  163.                 {null, null, null, null},
  164.                 {null, null, null, null},
  165.                 {null, null, null, null},
  166.                 {null, null, null, null},
  167.                 {null, null, null, null},
  168.                 {null, null, null, null},
  169.                 {null, null, null, null},
  170.                 {null, null, null, null},
  171.                 {null, null, null, null},
  172.                 {null, null, null, null},
  173.                 {null, null, null, null},
  174.                 {null, null, null, null},
  175.                 {null, null, null, null},
  176.                 {null, null, null, null}
  177.             },
  178.             new String [] {
  179.                 "Código", "Descrição", "Quantidade", "Valor"
  180.             }
  181.         ));
  182.         jScrollPane1.setViewportView(jTable_venda);
  183.  
  184.         jLabel7.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
  185.         jLabel7.setText("Código:");
  186.  
  187.         volta_menu.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Knob Snapback_1.png"))); // NOI18N
  188.         volta_menu.setToolTipText("Voltar");
  189.         volta_menu.addActionListener(new java.awt.event.ActionListener() {
  190.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  191.                 volta_menuActionPerformed(evt);
  192.             }
  193.         });
  194.  
  195.         jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagens/Knob Cancel.png"))); // NOI18N
  196.         jButton4.setToolTipText("Excluir item ");
  197.  
  198.         jLabel10.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
  199.         jLabel10.setForeground(new java.awt.Color(102, 102, 102));
  200.         jLabel10.setText("Tela de vendas");
  201.  
  202.         jLabel8.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  203.         jLabel8.setText("Dinheiro:");
  204.  
  205.         jLabel9.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  206.         jLabel9.setText("Troco:");
  207.  
  208.         jButton_pesquisar.setText("Pesquisar");
  209.         jButton_pesquisar.addActionListener(new java.awt.event.ActionListener() {
  210.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  211.                 jButton_pesquisarActionPerformed(evt);
  212.             }
  213.         });
  214.  
  215.         jTextField_subTotal.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  216.         jTextField_subTotal.setHorizontalAlignment(javax.swing.JTextField.CENTER);
  217.         jTextField_subTotal.addActionListener(new java.awt.event.ActionListener() {
  218.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  219.                 jTextField_subTotalActionPerformed(evt);
  220.             }
  221.         });
  222.  
  223.         jTextField_troco.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
  224.         jTextField_troco.setHorizontalAlignment(javax.swing.JTextField.CENTER);
  225.  
  226.         javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
  227.         jPanel1.setLayout(jPanel1Layout);
  228.         jPanel1Layout.setHorizontalGroup(
  229.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  230.             .addGroup(jPanel1Layout.createSequentialGroup()
  231.                 .addContainerGap()
  232.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  233.                     .addGroup(jPanel1Layout.createSequentialGroup()
  234.                         .addComponent(volta_menu)
  235.                         .addGap(294, 294, 294)
  236.                         .addComponent(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 227, javax.swing.GroupLayout.PREFERRED_SIZE))
  237.                     .addGroup(jPanel1Layout.createSequentialGroup()
  238.                         .addGap(18, 18, 18)
  239.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  240.                             .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  241.                                 .addComponent(jLabel7)
  242.                                 .addGroup(jPanel1Layout.createSequentialGroup()
  243.                                     .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  244.                                         .addComponent(jLabel2, javax.swing.GroupLayout.Alignment.TRAILING)
  245.                                         .addComponent(jLabel1, javax.swing.GroupLayout.Alignment.TRAILING)
  246.                                         .addComponent(jLabel5, javax.swing.GroupLayout.Alignment.TRAILING)
  247.                                         .addComponent(jLabel8, javax.swing.GroupLayout.Alignment.TRAILING)
  248.                                         .addComponent(jLabel6, javax.swing.GroupLayout.Alignment.TRAILING))
  249.                                     .addGap(18, 18, 18)
  250.                                     .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  251.                                         .addComponent(jTextField_quantidade)
  252.                                         .addComponent(jTextField_valor)
  253.                                         .addComponent(jTextField_produto)
  254.                                         .addComponent(jTextField_dinheiro, javax.swing.GroupLayout.PREFERRED_SIZE, 116, javax.swing.GroupLayout.PREFERRED_SIZE)
  255.                                         .addComponent(jTextField_subTotal, javax.swing.GroupLayout.PREFERRED_SIZE, 116, javax.swing.GroupLayout.PREFERRED_SIZE))))
  256.                             .addComponent(jTextField_codigo, javax.swing.GroupLayout.PREFERRED_SIZE, 235, javax.swing.GroupLayout.PREFERRED_SIZE)
  257.                             .addGroup(jPanel1Layout.createSequentialGroup()
  258.                                 .addComponent(jLabel3)
  259.                                 .addGap(18, 18, 18)
  260.                                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  261.                                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
  262.                                         .addComponent(jLabel9)
  263.                                         .addGap(18, 18, 18)
  264.                                         .addComponent(jTextField_troco, javax.swing.GroupLayout.PREFERRED_SIZE, 116, javax.swing.GroupLayout.PREFERRED_SIZE))
  265.                                     .addComponent(jTextField_total, javax.swing.GroupLayout.PREFERRED_SIZE, 181, javax.swing.GroupLayout.PREFERRED_SIZE))))
  266.                         .addGap(18, 18, 18)
  267.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
  268.                             .addGroup(jPanel1Layout.createSequentialGroup()
  269.                                 .addComponent(jButton_finalizarCompra)
  270.                                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  271.                                 .addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 61, javax.swing.GroupLayout.PREFERRED_SIZE))
  272.                             .addGroup(jPanel1Layout.createSequentialGroup()
  273.                                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
  274.                                     .addComponent(jButton_adicionar, javax.swing.GroupLayout.DEFAULT_SIZE, 116, Short.MAX_VALUE)
  275.                                     .addComponent(jButton_pesquisar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  276.                                 .addGap(31, 31, 31)
  277.                                 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 466, javax.swing.GroupLayout.PREFERRED_SIZE)))))
  278.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  279.             .addComponent(jSeparator1)
  280.             .addComponent(jSeparator2, javax.swing.GroupLayout.Alignment.TRAILING)
  281.         );
  282.         jPanel1Layout.setVerticalGroup(
  283.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  284.             .addGroup(jPanel1Layout.createSequentialGroup()
  285.                 .addGap(19, 19, 19)
  286.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  287.                     .addComponent(volta_menu)
  288.                     .addComponent(jLabel10))
  289.                 .addGap(18, 18, 18)
  290.                 .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
  291.                 .addGap(12, 12, 12)
  292.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  293.                     .addGroup(jPanel1Layout.createSequentialGroup()
  294.                         .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 331, javax.swing.GroupLayout.PREFERRED_SIZE)
  295.                         .addGap(27, 27, 27)
  296.                         .addComponent(jButton4))
  297.                     .addGroup(jPanel1Layout.createSequentialGroup()
  298.                         .addComponent(jLabel7)
  299.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  300.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  301.                             .addComponent(jButton_pesquisar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  302.                             .addComponent(jTextField_codigo, javax.swing.GroupLayout.DEFAULT_SIZE, 39, Short.MAX_VALUE))
  303.                         .addGap(31, 31, 31)
  304.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  305.                             .addComponent(jLabel5)
  306.                             .addComponent(jTextField_produto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  307.                         .addGap(18, 18, 18)
  308.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  309.                             .addComponent(jLabel1)
  310.                             .addComponent(jTextField_valor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  311.                         .addGap(21, 21, 21)
  312.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  313.                             .addComponent(jLabel2)
  314.                             .addComponent(jTextField_quantidade, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  315.                             .addComponent(jButton_adicionar, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE))
  316.                         .addGap(18, 18, 18)
  317.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  318.                             .addComponent(jTextField_subTotal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  319.                             .addComponent(jLabel6))
  320.                         .addGap(18, 18, 18)
  321.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  322.                             .addComponent(jLabel8)
  323.                             .addComponent(jTextField_dinheiro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  324.                         .addGap(18, 18, 18)
  325.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  326.                             .addComponent(jLabel9)
  327.                             .addComponent(jTextField_troco, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  328.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  329.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  330.                             .addComponent(jLabel3)
  331.                             .addComponent(jTextField_total, javax.swing.GroupLayout.PREFERRED_SIZE, 41, javax.swing.GroupLayout.PREFERRED_SIZE)
  332.                             .addComponent(jButton_finalizarCompra))))
  333.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 75, Short.MAX_VALUE)
  334.                 .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 15, javax.swing.GroupLayout.PREFERRED_SIZE)
  335.                 .addGap(32, 32, 32))
  336.         );
  337.  
  338.         jMenu1.setText("Caixa");
  339.         jMenuBar1.add(jMenu1);
  340.  
  341.         jMenu2.setText("Exibir");
  342.         jMenuBar1.add(jMenu2);
  343.  
  344.         jMenu3.setText("Estoque");
  345.         jMenuBar1.add(jMenu3);
  346.  
  347.         setJMenuBar(jMenuBar1);
  348.  
  349.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  350.         getContentPane().setLayout(layout);
  351.         layout.setHorizontalGroup(
  352.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  353.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  354.                 .addGap(0, 0, 0)
  355.                 .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  356.         );
  357.         layout.setVerticalGroup(
  358.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  359.             .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  360.         );
  361.  
  362.         pack();
  363.         setLocationRelativeTo(null);
  364.     }// </editor-fold>                        
  365.  
  366.     private void jTextField_totalActionPerformed(java.awt.event.ActionEvent evt) {  // campo que mostra o valor total da compra                                              
  367.         // TODO add your handling code here:
  368.     }                                                
  369.  
  370.     private void jTextField_codigoActionPerformed(java.awt.event.ActionEvent evt) {      //campo onde é inserido o código de busca                                            
  371.         // TODO add your handling code here:
  372.        
  373.     }                                                
  374.  
  375.     private void jButton_adicionarActionPerformed(java.awt.event.ActionEvent evt) {   //botão que adiciona produtos à lista                                              
  376.              
  377. // TODO add your handling code here:
  378.         long pesquisa = Long.parseLong(jTextField_codigo.getText()); // joga o código digitado na interface para variável
  379.        
  380.        
  381.                 y = cont ;  //Váriável
  382.           // matriz que armazena temporaria o código e quantidade de produtos vendidos por compra
  383.           // esta matriz será usada no botão "finalizar compra" para alterar a quantidade em estoque dos produtos que foram ventidos
  384.            consulta[cont][y] = Long.parseLong(jTextField_codigo.getText());
  385.            consulta[cont][y+1] = Long.parseLong(jTextField_quantidade.getText());
  386.            
  387.              
  388.            
  389.            
  390.              cont++ ;
  391.        
  392.        // jTextField_codigo.setText("");
  393.        // jTextField_produto.setText("");
  394.        // jTextField_quantidade.setText("");
  395.        // jTextField_valor.setText("");
  396.        
  397.  
  398.        
  399.      
  400.     try {
  401.          
  402.       conecta.executaSQL(" select * from produto where id_produto='"+pesquisa+"'");
  403.       conecta.rs.next();
  404.    
  405.         ct.setLucro_produto(conecta.rs.getDouble("lucro_produto")); // adiciona o lucro do produto selecionado ao objeto 'ct'
  406.         lucro = ct.getLucro_produto();
  407.       lucrofinal +=  lucro * quantidade ;
  408.     } catch (SQLException ex) {
  409.         JOptionPane.showMessageDialog(null, "errro!"+ex);
  410.     }
  411.        
  412.        // jTextField_dinheiro.setText(String.valueOf(id[x]));
  413.        
  414.      
  415.        
  416.      //PreencherTabela("select * from produto where id_produto='"+pesquisa+"'");      
  417.     }                                                
  418.  
  419.     private void volta_menuActionPerformed(java.awt.event.ActionEvent evt) {                                          
  420.         // TODO add your handling code here:
  421.         tela_ini voltaM = new tela_ini();
  422.         voltaM.setLocationRelativeTo(null);
  423.         voltaM.setVisible(true);
  424.         dispose();
  425.     }                                          
  426.  
  427.     private void jButton_pesquisarActionPerformed(java.awt.event.ActionEvent evt) {   // botão que pesquisa produto no estoque                                                
  428.         // TODO add your handling code here:
  429.       long pesquisaCodigo = Long.parseLong(jTextField_codigo.getText());
  430.         try{
  431.         conecta.executaSQL("select * from produto where id_produto='"+pesquisaCodigo+"'");
  432.         conecta.rs.first();
  433.           jTextField_produto.setText(conecta.rs.getString("descricao"));
  434.           jTextField_valor.setText(String.valueOf(conecta.rs.getDouble("preco_venda")));
  435.          
  436.             //pst.getString(jTextField_produto.setText(sql));
  437.        
  438.         }catch(SQLException ex){
  439.             JOptionPane.showMessageDialog(null,"erro:  "+ ex);
  440.            
  441.         }
  442.        
  443.        
  444.      
  445.     }                                                
  446.  
  447.     private void jTextField_quantidadeKeyPressed(java.awt.event.KeyEvent evt) {                                                
  448.        if(evt.getKeyCode() == KeyEvent.VK_ENTER){  //aqui vai o q voce deseja fazer quando o usuario clicar enter naquele jtextfield
  449.            
  450.            int QTE = Integer.parseInt( jTextField_quantidade.getText());
  451.            double valor = Double.parseDouble( jTextField_valor.getText());
  452.            double subtotal =0;
  453.             DecimalFormat df = new DecimalFormat("##,##.00");
  454.             DecimalFormat df1 = new DecimalFormat("##,##.00");
  455.          
  456.            subtotal = subtotal + (QTE * valor) ;
  457.            total+= subtotal ;
  458.            // df.format(total);
  459.            jTextField_subTotal.setText(String.valueOf(df.format(subtotal)));
  460.            jTextField_total.setText(String.valueOf((df1.format(total))));
  461.            
  462.          
  463.            
  464.         }// TODO add your handling code here:
  465.     }                                                
  466.  
  467.     private void jTextField_subTotalActionPerformed(java.awt.event.ActionEvent evt) {                                                    
  468.         // TODO add your handling code here:
  469.     }                                                  
  470.  
  471.     private void jButton_finalizarCompraActionPerformed(java.awt.event.ActionEvent evt) {   // botão finalizar compra                                                    
  472.         // TODO add your handling code here:
  473.        
  474.  
  475.         // pesquisar na matriz pelos códigos adicionados no botão adicionar ;
  476.         for(x=0; x <= cont; x++){  
  477.         for(int j =0; j<=1; j++){
  478.           if(j==0){      
  479.        
  480.  
  481.              // seleciona todos os campos da tabela "produto"
  482.                    
  483.                     try{
  484.                         PreparedStatement pst1 = conecta.conn.prepareStatement(" select * from produto where id_produto= ?");
  485.                        conecta.rs.first();
  486.                         long pesq = consulta[x][j] ;
  487.                        pst1.setLong(1, pesq);
  488.                      qtd = Long.parseLong(String.valueOf(conecta.rs.getInt("quantidade"))); //seta o campo "quantidae" no atributo do objeto "p"
  489.                         long ip = consulta[x][j+1];
  490.                     qtd = qtd - ip ;
  491.                      }catch(SQLException erro){
  492.                        Logger.getLogger(Tela_venda.class.getName()).log(Level.SEVERE, null, erro);
  493.                       }
  494.                    
  495.                       //insere na coluna quantidade da tabela produto,  a quantidade atualizada de produtos  
  496.                       try{    
  497.                       PreparedStatement pst = conecta.conn.prepareStatement(" update produto set quantidade = ? where id_produto = ?");
  498.                               pst.setLong(1,qtd);
  499.                               id_prod = consulta[x][j] ;
  500.                               pst.setLong(2,id_prod);
  501.                               pst.execute();
  502.                               //pst.close();
  503.                              
  504.                               }catch (SQLException ex) {
  505.                                  JOptionPane.showMessageDialog(null,"erro ao preencher"+ ex);
  506.                                   }
  507.                    
  508.                     }
  509.                   }
  510.                 }
  511.        
  512.         //for( i=0; i <= x; i++){      // varre todo o vetor que contém o(s) código(s) do(s) produto(s) de uma venda
  513.        
  514.           /*  try {               // pesquisa os campos da classe ControleEstoque
  515.                 conecta.executaSQL(" select * from ControleEstoque where id_produto='"+id[i]+"'");
  516.                 conecta.rs.next();
  517.                 ct.setQtd_vendida(conecta.rs.getInt("quantidade")) ;  // seta o campo "quantidade" no atribudo do objeto "ct"
  518.                  qtd_vendida = ct.getQtd_vendida();  
  519.                  } catch (SQLException ex) {
  520.                 Logger.getLogger(Tela_venda.class.getName()).log(Level.SEVERE, null, ex);
  521.             }
  522.             try{    // seleciona todos os campos da tabela "produto"
  523.                      conecta.executaSQL(" select * from produto where id_produto='"+id[i]+"'");
  524.                      conecta.rs.next();
  525.                      p.setQuantidade(conecta.rs.getInt("quantidade")); //seta o campo "quantidae" no atributo do objeto "p"
  526.                       qtd_produto = p.getQuantidade();
  527.                      }catch(SQLException erro){
  528.                        Logger.getLogger(Tela_venda.class.getName()).log(Level.SEVERE, null, erro);
  529.                       }
  530.              qtd = qtd_produto - qtd_vendida ;    // quantidade de produtos em estoque subtrai a quantidade vendida
  531.              jTextField_troco.setText(String.valueOf(qtd));
  532.              try{   // insere na coluna quantidade da tabela produto,  a quantidade atualizada de produtos  
  533.                              PreparedStatement pst = conecta.conn.prepareStatement(" update produto set quantidade = ? where id_produto = ?");
  534.                               pst.setInt(1,qtd);
  535.                              
  536.                               pst.setLong(2,id[i]);
  537.                               pst.execute();
  538.                              
  539.                               }catch (SQLException ex) {
  540.                                  JOptionPane.showMessageDialog(null,"erro ao preencher"+ ex);
  541.                                   }
  542.            
  543.         */
  544.        
  545.         // zerar a matriz contendo os códigos e a quantidade vendida de cada item
  546.        for(x=0; x <= 100; x++){            
  547.         for(int j =0; j<=1; j++){
  548.             consulta[x][j] = 0;
  549.        
  550.         }
  551.         }
  552.         qtd = 0;   qtd_vendida = 0 ; cont = 0;
  553.         x = 0 ;
  554.         total= 0; id_prod = 0;
  555.         jTextField_codigo.setText("");
  556.         jTextField_produto.setText("");
  557.         jTextField_valor.setText("");
  558.         jTextField_quantidade.setText("");
  559.         jTextField_subTotal.setText("");
  560.         jTextField_total.setText("");    
  561.     }                                                      
  562.    
  563.     private void jTextField_codigoKeyPressed(java.awt.event.KeyEvent evt) {    //teste ainda não funcional                                        
  564.         // TODO add your handling code here:
  565.          if(evt.getKeyCode() == KeyEvent.VK_ENTER){
  566.                int pesquisaCodigo = Integer.parseInt(jTextField_codigo.getText());
  567.         try{
  568.      
  569.          
  570.         conecta.executaSQL(" select * from produto where id_produto='"+pesquisaCodigo+"'");
  571.         conecta.rs.first();
  572.           jTextField_produto.setText(conecta.rs.getString("descricao"));
  573.           jTextField_valor.setText(String.valueOf(conecta.rs.getDouble("preco_venda")));
  574.          
  575.             //pst.getString(jTextField_produto.setText(sql));
  576.        
  577.         }catch(SQLException exx){
  578.             JOptionPane.showMessageDialog(null,"erro:  "+ exx);
  579.            
  580.         }
  581.          
  582.          
  583.          }
  584.     }                                            
  585.       /**
  586.      * @param args the command line arguments
  587.      */
  588.    
  589.     public void PreencherTabela(String SQL){
  590.         ArrayList dados = new ArrayList();
  591.        
  592.         String [] Colunas = new String[]{"Codigo","Descrição","Quantidade","Valor venda"};
  593.    
  594.         conecta.executaSQL(SQL);
  595.         try {
  596.             conecta.rs.first();
  597.          do{
  598.              dados.add(new Object[]{conecta.rs.getInt("id_produto"),conecta.rs.getString("descricao"),conecta.rs.getInt("quantidade"),conecta.rs.getInt("quantidade_min"),conecta.rs.getDouble("preco_compra"),conecta.rs.getDouble("preco_venda")});
  599.              
  600.            }while(conecta.rs.next());
  601.         } catch (SQLException eeex) {
  602.             JOptionPane.showMessageDialog(null,"erro ao preencher"+ eeex);
  603.         }
  604.                
  605.         ModeloTabela modelo = new ModeloTabela(dados, Colunas);
  606.         jTable_venda.setModel(modelo);
  607.         jTable_venda.getColumnModel().getColumn(0).setPreferredWidth(120);
  608.         jTable_venda.getColumnModel().getColumn(0).setResizable(false);
  609.         jTable_venda.getColumnModel().getColumn(1).setPreferredWidth(180);
  610.         jTable_venda.getColumnModel().getColumn(1).setResizable(false);
  611.         jTable_venda.getColumnModel().getColumn(2).setPreferredWidth(95);
  612.         jTable_venda.getColumnModel().getColumn(2).setResizable(false);
  613.         jTable_venda.getColumnModel().getColumn(3).setPreferredWidth(100);
  614.         jTable_venda.getColumnModel().getColumn(3).setResizable(false);
  615.    
  616.        
  617.         jTable_venda.getTableHeader().setReorderingAllowed(false);
  618.         jTable_venda.setAutoResizeMode(jTable_venda.AUTO_RESIZE_OFF);
  619.         jTable_venda.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
  620.     }
  621.  
  622.    
  623.    
  624.        
  625.    
  626.     public static void main(String args[]) {
  627.      
  628.         /* Set the Nimbus look and feel */
  629.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  630.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
  631.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  632.          */
  633.         try {
  634.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  635.                 if ("Nimbus".equals(info.getName())) {
  636.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  637.                     break;
  638.                 }
  639.             }
  640.         } catch (ClassNotFoundException ex) {
  641.             java.util.logging.Logger.getLogger(Tela_venda.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  642.         } catch (InstantiationException ex) {
  643.             java.util.logging.Logger.getLogger(Tela_venda.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  644.         } catch (IllegalAccessException ex) {
  645.             java.util.logging.Logger.getLogger(Tela_venda.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  646.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  647.             java.util.logging.Logger.getLogger(Tela_venda.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  648.         }
  649.         //</editor-fold>
  650.            
  651.         /* Create and display the form */
  652.         java.awt.EventQueue.invokeLater(new Runnable() {
  653.             public void run() {
  654.                 new Tela_venda().setVisible(true);
  655.             }
  656.         });
  657.     }
  658.  
  659.     // Variables declaration - do not modify                    
  660.     private javax.swing.JButton jButton4;
  661.     private javax.swing.JButton jButton_adicionar;
  662.     private javax.swing.JButton jButton_finalizarCompra;
  663.     private javax.swing.JButton jButton_pesquisar;
  664.     private javax.swing.JLabel jLabel1;
  665.     private javax.swing.JLabel jLabel10;
  666.     private javax.swing.JLabel jLabel2;
  667.     private javax.swing.JLabel jLabel3;
  668.     private javax.swing.JLabel jLabel4;
  669.     private javax.swing.JLabel jLabel5;
  670.     private javax.swing.JLabel jLabel6;
  671.     private javax.swing.JLabel jLabel7;
  672.     private javax.swing.JLabel jLabel8;
  673.     private javax.swing.JLabel jLabel9;
  674.     private javax.swing.JMenu jMenu1;
  675.     private javax.swing.JMenu jMenu2;
  676.     private javax.swing.JMenu jMenu3;
  677.     private javax.swing.JMenuBar jMenuBar1;
  678.     private javax.swing.JPanel jPanel1;
  679.     private javax.swing.JScrollPane jScrollPane1;
  680.     private javax.swing.JSeparator jSeparator1;
  681.     private javax.swing.JSeparator jSeparator2;
  682.     private javax.swing.JTable jTable_venda;
  683.     private javax.swing.JTextField jTextField6;
  684.     private javax.swing.JTextField jTextField_codigo;
  685.     private javax.swing.JTextField jTextField_dinheiro;
  686.     private javax.swing.JTextField jTextField_produto;
  687.     private javax.swing.JTextField jTextField_quantidade;
  688.     private javax.swing.JTextField jTextField_subTotal;
  689.     private javax.swing.JTextField jTextField_total;
  690.     private javax.swing.JTextField jTextField_troco;
  691.     private javax.swing.JTextField jTextField_valor;
  692.     private javax.swing.JButton volta_menu;
  693.     // End of variables declaration                  
  694. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement