From 3c3ad200d7a14b3dedf655db86dbf02177eba0ba Mon Sep 17 00:00:00 2001 From: Jaideep Sharma <40294495+JDMansion@users.noreply.github.com> Date: Tue, 31 Mar 2020 18:19:07 +0530 Subject: [PATCH] Add files via upload --- ST2-Project-master/README.md | 2 + ST2-Project-master/src/Client_page.form | 547 ++++++++ ST2-Project-master/src/Client_page.java | 656 ++++++++++ ST2-Project-master/src/Collection.form | 628 ++++++++++ ST2-Project-master/src/Collection.java | 989 +++++++++++++++ ST2-Project-master/src/Collection_tab.form | 688 ++++++++++ ST2-Project-master/src/Collection_tab.java | 1062 ++++++++++++++++ .../src/Data/1-Normal-Home-icon.png | Bin 0 -> 2421 bytes .../src/Data/Actions-edit-find-icon.png | Bin 0 -> 1677 bytes .../src/Data/Actions-go-jump-today-icon.png | Bin 0 -> 1536 bytes .../src/Data/Button-Refresh-icon.png | Bin 0 -> 2219 bytes ST2-Project-master/src/Data/Calendar-icon.png | Bin 0 -> 1450 bytes .../src/Data/Collection-2-icon (1).png | Bin 0 -> 1007 bytes .../src/Data/Collection-2-icon.png | Bin 0 -> 1193 bytes ST2-Project-master/src/Data/Done-icon.png | Bin 0 -> 823 bytes .../src/Data/Search-icon (1).png | Bin 0 -> 1611 bytes ST2-Project-master/src/Data/Thumbs.db | Bin 0 -> 63488 bytes .../src/Data/US-dollar-icon.png | Bin 0 -> 1362 bytes ST2-Project-master/src/Data/add.png | Bin 0 -> 845 bytes ST2-Project-master/src/Data/bang.jpg | Bin 0 -> 1815 bytes ST2-Project-master/src/Data/clear.png | Bin 0 -> 524 bytes ST2-Project-master/src/Data/close.png | Bin 0 -> 812 bytes ST2-Project-master/src/Data/close1.png | Bin 0 -> 679 bytes ST2-Project-master/src/Data/close32.png | Bin 0 -> 1382 bytes ST2-Project-master/src/Data/db.png | Bin 0 -> 27002 bytes ST2-Project-master/src/Data/done.png | Bin 0 -> 923 bytes ST2-Project-master/src/Data/done1.png | Bin 0 -> 697 bytes ST2-Project-master/src/Data/fp.gif | Bin 0 -> 46006 bytes ST2-Project-master/src/Data/fp2.png | Bin 0 -> 50412 bytes ST2-Project-master/src/Data/home-icon.png | Bin 0 -> 2069 bytes ST2-Project-master/src/Data/house-icon.png | Bin 0 -> 775 bytes ST2-Project-master/src/Data/loading.gif | Bin 0 -> 7294 bytes ST2-Project-master/src/Data/login.png | Bin 0 -> 51425 bytes .../src/Data/money-icon (1).png | Bin 0 -> 840 bytes ST2-Project-master/src/Data/money-icon.png | Bin 0 -> 2932 bytes ST2-Project-master/src/Data/new1.png | Bin 0 -> 743 bytes ST2-Project-master/src/Data/new32.png | Bin 0 -> 2115 bytes ST2-Project-master/src/Data/preloader.png | Bin 0 -> 24550 bytes ST2-Project-master/src/Data/preloader2.png | Bin 0 -> 40721 bytes ST2-Project-master/src/Data/print-icon.png | Bin 0 -> 424 bytes ST2-Project-master/src/Data/print32.png | Bin 0 -> 1770 bytes .../src/Data/search-icon (2).png | Bin 0 -> 1875 bytes ST2-Project-master/src/Data/search-icon.png | Bin 0 -> 1327 bytes .../src/Data/silver-database-icon.jpg | Bin 0 -> 142981 bytes ST2-Project-master/src/Data/update-icon.gif | Bin 0 -> 4292 bytes ST2-Project-master/src/Data/update.png | Bin 0 -> 771 bytes ST2-Project-master/src/Data/welcome.jpg | Bin 0 -> 7960 bytes ST2-Project-master/src/DataBase_connect.java | 42 + ST2-Project-master/src/Delivery.form | 764 ++++++++++++ ST2-Project-master/src/Delivery.java | 1101 +++++++++++++++++ ST2-Project-master/src/HomePage.form | 299 +++++ ST2-Project-master/src/HomePage.java | 383 ++++++ ST2-Project-master/src/Login_Frame.form | 153 +++ ST2-Project-master/src/Login_Frame.java | 243 ++++ ST2-Project-master/src/Login_Frame1.form | 103 ++ ST2-Project-master/src/Login_Frame1.java | 219 ++++ ST2-Project-master/src/Login_Image.java | 133 ++ ST2-Project-master/src/MyCalender.form | 324 +++++ ST2-Project-master/src/MyCalender.java | 364 ++++++ ST2-Project-master/src/StockEntry.form | 427 +++++++ ST2-Project-master/src/StockEntry.java | 368 ++++++ ST2-Project-master/src/Supplier_info.form | 451 +++++++ ST2-Project-master/src/Supplier_info.java | 680 ++++++++++ ST2-Project-master/src/client_info.form | 642 ++++++++++ ST2-Project-master/src/client_info.java | 994 +++++++++++++++ ST2-Project-master/src/strtActivity.java | 159 +++ 66 files changed, 12421 insertions(+) create mode 100644 ST2-Project-master/README.md create mode 100644 ST2-Project-master/src/Client_page.form create mode 100644 ST2-Project-master/src/Client_page.java create mode 100644 ST2-Project-master/src/Collection.form create mode 100644 ST2-Project-master/src/Collection.java create mode 100644 ST2-Project-master/src/Collection_tab.form create mode 100644 ST2-Project-master/src/Collection_tab.java create mode 100644 ST2-Project-master/src/Data/1-Normal-Home-icon.png create mode 100644 ST2-Project-master/src/Data/Actions-edit-find-icon.png create mode 100644 ST2-Project-master/src/Data/Actions-go-jump-today-icon.png create mode 100644 ST2-Project-master/src/Data/Button-Refresh-icon.png create mode 100644 ST2-Project-master/src/Data/Calendar-icon.png create mode 100644 ST2-Project-master/src/Data/Collection-2-icon (1).png create mode 100644 ST2-Project-master/src/Data/Collection-2-icon.png create mode 100644 ST2-Project-master/src/Data/Done-icon.png create mode 100644 ST2-Project-master/src/Data/Search-icon (1).png create mode 100644 ST2-Project-master/src/Data/Thumbs.db create mode 100644 ST2-Project-master/src/Data/US-dollar-icon.png create mode 100644 ST2-Project-master/src/Data/add.png create mode 100644 ST2-Project-master/src/Data/bang.jpg create mode 100644 ST2-Project-master/src/Data/clear.png create mode 100644 ST2-Project-master/src/Data/close.png create mode 100644 ST2-Project-master/src/Data/close1.png create mode 100644 ST2-Project-master/src/Data/close32.png create mode 100644 ST2-Project-master/src/Data/db.png create mode 100644 ST2-Project-master/src/Data/done.png create mode 100644 ST2-Project-master/src/Data/done1.png create mode 100644 ST2-Project-master/src/Data/fp.gif create mode 100644 ST2-Project-master/src/Data/fp2.png create mode 100644 ST2-Project-master/src/Data/home-icon.png create mode 100644 ST2-Project-master/src/Data/house-icon.png create mode 100644 ST2-Project-master/src/Data/loading.gif create mode 100644 ST2-Project-master/src/Data/login.png create mode 100644 ST2-Project-master/src/Data/money-icon (1).png create mode 100644 ST2-Project-master/src/Data/money-icon.png create mode 100644 ST2-Project-master/src/Data/new1.png create mode 100644 ST2-Project-master/src/Data/new32.png create mode 100644 ST2-Project-master/src/Data/preloader.png create mode 100644 ST2-Project-master/src/Data/preloader2.png create mode 100644 ST2-Project-master/src/Data/print-icon.png create mode 100644 ST2-Project-master/src/Data/print32.png create mode 100644 ST2-Project-master/src/Data/search-icon (2).png create mode 100644 ST2-Project-master/src/Data/search-icon.png create mode 100644 ST2-Project-master/src/Data/silver-database-icon.jpg create mode 100644 ST2-Project-master/src/Data/update-icon.gif create mode 100644 ST2-Project-master/src/Data/update.png create mode 100644 ST2-Project-master/src/Data/welcome.jpg create mode 100644 ST2-Project-master/src/DataBase_connect.java create mode 100644 ST2-Project-master/src/Delivery.form create mode 100644 ST2-Project-master/src/Delivery.java create mode 100644 ST2-Project-master/src/HomePage.form create mode 100644 ST2-Project-master/src/HomePage.java create mode 100644 ST2-Project-master/src/Login_Frame.form create mode 100644 ST2-Project-master/src/Login_Frame.java create mode 100644 ST2-Project-master/src/Login_Frame1.form create mode 100644 ST2-Project-master/src/Login_Frame1.java create mode 100644 ST2-Project-master/src/Login_Image.java create mode 100644 ST2-Project-master/src/MyCalender.form create mode 100644 ST2-Project-master/src/MyCalender.java create mode 100644 ST2-Project-master/src/StockEntry.form create mode 100644 ST2-Project-master/src/StockEntry.java create mode 100644 ST2-Project-master/src/Supplier_info.form create mode 100644 ST2-Project-master/src/Supplier_info.java create mode 100644 ST2-Project-master/src/client_info.form create mode 100644 ST2-Project-master/src/client_info.java create mode 100644 ST2-Project-master/src/strtActivity.java diff --git a/ST2-Project-master/README.md b/ST2-Project-master/README.md new file mode 100644 index 0000000..77610a0 --- /dev/null +++ b/ST2-Project-master/README.md @@ -0,0 +1,2 @@ +# ST2-Project +30th March is deadline and upload assignment or project with your roll number, name and section. diff --git a/ST2-Project-master/src/Client_page.form b/ST2-Project-master/src/Client_page.form new file mode 100644 index 0000000..57a75b4 --- /dev/null +++ b/ST2-Project-master/src/Client_page.form @@ -0,0 +1,547 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+
+
+
+ diff --git a/ST2-Project-master/src/Client_page.java b/ST2-Project-master/src/Client_page.java new file mode 100644 index 0000000..c29bf5d --- /dev/null +++ b/ST2-Project-master/src/Client_page.java @@ -0,0 +1,656 @@ + + +import com.mysql.jdbc.Connection; +import com.mysql.jdbc.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.JOptionPane; +import javax.swing.JTable; +import javax.swing.JTextField; +import net.proteanit.sql.DbUtils; + +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +/* + * Client_page.java + * + * Created on Sep 21, 2012, 1:56:01 PM + */ + +/** + * + * @author Vish + */ +public class Client_page extends javax.swing.JFrame { + + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + + public Client_page() { + initComponents(); + update_table("0"); + + //txt_name.setComponentPopupMenu(new JTextField("khsdfkshfkh")); + } + + public void printing() + { + MessageFormat header=new MessageFormat("Report Print"); + MessageFormat footer=new MessageFormat("Page{0,number,integer}"); + try{ + delivery_table.print(JTable.PrintMode.NORMAL,header,footer); + }catch(Exception e){ + + } + return ; + } + + private void update_table(String id_num) { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String val1=((JTextField)txt_datef.getDateEditor().getUiComponent()).getText(); + String val2=((JTextField)txt_datet.getDateEditor().getUiComponent()).getText(); + String sql="SELECT serial_no AS serial, truck_number, description, loading_place, delivery_date AS date, length, width, height, amount, rate, total_amount AS total FROM delivery_table where id ='" + id_num + +"' and delivery_date between '"+val1+"' and '" + val2+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + delivery_table.setModel(DbUtils.resultSetToTableModel(rs)); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close(); + System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + } + + + // //GEN-BEGIN:initComponents + private void initComponents() { + + jToolBar1 = new javax.swing.JToolBar(); + jButton8 = new javax.swing.JButton(); + jButton3 = new javax.swing.JButton(); + jButton7 = new javax.swing.JButton(); + jButton9 = new javax.swing.JButton(); + jButton10 = new javax.swing.JButton(); + jButton11 = new javax.swing.JButton(); + jButton12 = new javax.swing.JButton(); + jButton13 = new javax.swing.JButton(); + jButton14 = new javax.swing.JButton(); + jPanel4 = new javax.swing.JPanel(); + search1 = new javax.swing.JTextField(); + jLabel7 = new javax.swing.JLabel(); + jPanel1 = new javax.swing.JPanel(); + txt_datef = new com.toedter.calendar.JDateChooser(); + txt_datet = new com.toedter.calendar.JDateChooser(); + jLabel1 = new javax.swing.JLabel(); + jLabel2 = new javax.swing.JLabel(); + txt_name = new javax.swing.JLabel(); + txt_address = new javax.swing.JLabel(); + jButton15 = new javax.swing.JButton(); + jButton16 = new javax.swing.JButton(); + jScrollPane2 = new javax.swing.JScrollPane(); + jScrollPane1 = new javax.swing.JScrollPane(); + delivery_table = new javax.swing.JTable(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem3 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenuItem5 = new javax.swing.JMenuItem(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); + + jToolBar1.setRollover(true); + + jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/1-Normal-Home-icon.png"))); // NOI18N + jButton8.setText("Home"); + jButton8.setToolTipText("Ctrl + H"); + jButton8.setFocusable(false); + jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton8.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton8ActionPerformed(evt); + } + }); + jToolBar1.add(jButton8); + + jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new32.png"))); // NOI18N + jButton3.setText("New Client"); + jButton3.setToolTipText("Ctrl + N"); + jButton3.setFocusable(false); + jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton3ActionPerformed(evt); + } + }); + jToolBar1.add(jButton3); + + jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon.png"))); // NOI18N + jButton7.setText("Transaction"); + jButton7.setToolTipText("Ctrl + T"); + jButton7.setFocusable(false); + jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton7.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton7ActionPerformed(evt); + } + }); + jToolBar1.add(jButton7); + + jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon.png"))); // NOI18N + jButton9.setText("Collection"); + jButton9.setToolTipText("Ctrl + C"); + jButton9.setFocusable(false); + jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton9.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton9ActionPerformed(evt); + } + }); + jToolBar1.add(jButton9); + + jButton10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton10.setText("Print"); + jButton10.setFocusable(false); + jButton10.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton10.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton10.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton10.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton10.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton10); + + jButton11.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Calendar-icon.png"))); // NOI18N + jButton11.setText("Calender"); + jButton11.setFocusable(false); + jButton11.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton11.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton11.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton11ActionPerformed(evt); + } + }); + jToolBar1.add(jButton11); + + jButton12.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Button-Refresh-icon.png"))); // NOI18N + jButton12.setText("Refresh"); + jButton12.setFocusable(false); + jButton12.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton12.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton12); + + jButton13.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + jButton13.setText("Search"); + jButton13.setFocusable(false); + jButton13.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton13.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton13.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton13.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton13.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton13); + + jButton14.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close32.png"))); // NOI18N + jButton14.setText("Close"); + jButton14.setToolTipText("Ctrl + Alt + C"); + jButton14.setFocusable(false); + jButton14.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton14.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton14.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton14.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton14.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton14.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton14ActionPerformed(evt); + } + }); + jToolBar1.add(jButton14); + + jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Serach Client", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(0, 51, 153))); // NOI18N + + search1.setBackground(new java.awt.Color(153, 204, 255)); + search1.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyReleased(java.awt.event.KeyEvent evt) { + search1KeyReleased(evt); + } + }); + + jLabel7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + + javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); + jPanel4.setLayout(jPanel4Layout); + jPanel4Layout.setHorizontalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addGap(4, 4, 4) + .addComponent(jLabel7) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(search1, javax.swing.GroupLayout.PREFERRED_SIZE, 159, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(23, Short.MAX_VALUE)) + ); + jPanel4Layout.setVerticalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel7) + .addGroup(jPanel4Layout.createSequentialGroup() + .addComponent(search1, javax.swing.GroupLayout.DEFAULT_SIZE, 23, Short.MAX_VALUE) + .addContainerGap()) + ); + + jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Date", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(0, 0, 255))); // NOI18N + + txt_datef.setDateFormatString("yyyy-MM-dd"); + + txt_datet.setDateFormatString("yyyy-MM-dd"); + + jLabel1.setText("From"); + + jLabel2.setText("To"); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() + .addGap(21, 21, 21) + .addComponent(jLabel1) + .addGap(18, 18, 18) + .addComponent(txt_datef, javax.swing.GroupLayout.DEFAULT_SIZE, 113, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(jLabel2) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(txt_datet, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel2) + .addComponent(txt_datef, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel1) + .addComponent(txt_datet, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(14, Short.MAX_VALUE)) + ); + + txt_name.setFont(new java.awt.Font("Tahoma", 1, 24)); + txt_name.setForeground(new java.awt.Color(102, 102, 102)); + txt_name.setText("Serch Client"); + + txt_address.setText("."); + + jButton15.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton15.setText("Print"); + jButton15.setFocusable(false); + jButton15.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton15.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton15.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton15.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton15.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton15.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton15ActionPerformed(evt); + } + }); + + jButton16.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Search-icon (1).png"))); // NOI18N + jButton16.setText("Search"); + jButton16.setFocusable(false); + jButton16.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton16.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton16.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton16.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton16.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton16.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton16ActionPerformed(evt); + } + }); + + delivery_table.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + jScrollPane1.setViewportView(delivery_table); + + jScrollPane2.setViewportView(jScrollPane1); + + jMenu1.setText("Option"); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/house-icon.png"))); // NOI18N + jMenuItem1.setText("Home"); + jMenuItem1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem1ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new1.png"))); // NOI18N + jMenuItem2.setText("New Client"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem2); + + jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon (1).png"))); // NOI18N + jMenuItem3.setText("Transection"); + jMenuItem3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem3ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem3); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon (1).png"))); // NOI18N + jMenuItem4.setText("Collection"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem4); + + jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close1.png"))); // NOI18N + jMenuItem5.setText("Close"); + jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jMenuItem5MouseClicked(evt); + } + }); + jMenuItem5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem5ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem5); + + jMenuBar1.add(jMenu1); + + setJMenuBar(jMenuBar1); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 765, Short.MAX_VALUE)) + .addComponent(jToolBar1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addGap(246, 246, 246) + .addComponent(txt_address)) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addGap(318, 318, 318) + .addComponent(txt_name) + .addGap(241, 241, 241)) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addContainerGap() + .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addComponent(jButton16, javax.swing.GroupLayout.PREFERRED_SIZE, 71, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 31, Short.MAX_VALUE) + .addComponent(jButton15, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(jButton16, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jButton15, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(txt_name) + .addGap(5, 5, 5) + .addComponent(txt_address) + .addGap(18, 18, 18) + .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 323, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-801)/2, (screenSize.height-610)/2, 801, 610); + }// //GEN-END:initComponents + + private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed + this.dispose(); + new HomePage().setVisible(true); +}//GEN-LAST:event_jMenuItem1ActionPerformed + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + this.dispose(); + + new client_info().setVisible(true); +}//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem3ActionPerformed + this.dispose(); + + new Delivery().setVisible(true); +}//GEN-LAST:event_jMenuItem3ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + this.dispose(); + + new Collection().setVisible(true); +}//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jMenuItem5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMenuItem5MouseClicked + System.exit(0); +}//GEN-LAST:event_jMenuItem5MouseClicked + + private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed + System.exit(0); +}//GEN-LAST:event_jMenuItem5ActionPerformed + + private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed + this.dispose(); + new HomePage().setVisible(true); +}//GEN-LAST:event_jButton8ActionPerformed + + private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed + this.dispose(); + new client_info().setVisible(true); +}//GEN-LAST:event_jButton3ActionPerformed + + private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton9ActionPerformed + this.dispose(); + new Collection_tab().setVisible(true); +}//GEN-LAST:event_jButton9ActionPerformed + + private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton11ActionPerformed + + this.dispose(); + + new MyCalender().setVisible(true); + }//GEN-LAST:event_jButton11ActionPerformed + + private void jButton14ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton14ActionPerformed + System.exit(0); +}//GEN-LAST:event_jButton14ActionPerformed + + private void search1KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_search1KeyReleased + + + }//GEN-LAST:event_search1KeyReleased + + private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton7ActionPerformed + + this.dispose(); + + new Delivery().setVisible(true); + }//GEN-LAST:event_jButton7ActionPerformed + + private void jButton16ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton16ActionPerformed + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + +// try{ +// +// String sql="select * from client_info where name=?"; +// pst=(PreparedStatement) conn.prepareStatement(sql); +// pst.setString(1, search1.getText()); +// rs=pst.executeQuery(); +// +// if(rs.next()) +// { +// String add2=rs.getString("name"); +// txt_name.setText(add2); +// String add3=rs.getString("address"); +// txt_address.setText(add3); +// String add4=rs.getString("contact"); +// txt_contact.setText(add4); +// +// } +// else { +// set_client_id(); +// txt_name.setText(""); +// txt_address.setText(""); +// txt_contact.setText(""); +// } +// }catch(Exception e){ +// +// } + + try{ + String sql="select * from client_info where id=?"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.setString(1, search1.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("address"); + String add4=rs.getString("contact"); + txt_address.setText("Address : " +add3 + " Contact: "+ add4); + update_table(search1.getText()); + + String ad=rs.getObject("datee").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(ad); + //txt_date.setDate(dat); + + } + else { + txt_name.setText("No Client Found"); + txt_address.setText("."); + update_table("bal"); + } + + }catch(Exception e){ + + } finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + }//GEN-LAST:event_jButton16ActionPerformed + + private void jButton15ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton15ActionPerformed + + printing(); + + }//GEN-LAST:event_jButton15ActionPerformed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new Client_page().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JTable delivery_table; + private javax.swing.JButton jButton10; + private javax.swing.JButton jButton11; + private javax.swing.JButton jButton12; + private javax.swing.JButton jButton13; + private javax.swing.JButton jButton14; + private javax.swing.JButton jButton15; + private javax.swing.JButton jButton16; + private javax.swing.JButton jButton3; + private javax.swing.JButton jButton7; + private javax.swing.JButton jButton8; + private javax.swing.JButton jButton9; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel7; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem3; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JMenuItem jMenuItem5; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel4; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JScrollPane jScrollPane2; + private javax.swing.JToolBar jToolBar1; + private javax.swing.JTextField search1; + private javax.swing.JLabel txt_address; + private com.toedter.calendar.JDateChooser txt_datef; + private com.toedter.calendar.JDateChooser txt_datet; + private javax.swing.JLabel txt_name; + // End of variables declaration//GEN-END:variables + + + +} diff --git a/ST2-Project-master/src/Collection.form b/ST2-Project-master/src/Collection.form new file mode 100644 index 0000000..7baef0b --- /dev/null +++ b/ST2-Project-master/src/Collection.form @@ -0,0 +1,628 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + +
+
+
+
+
+
+ diff --git a/ST2-Project-master/src/Collection.java b/ST2-Project-master/src/Collection.java new file mode 100644 index 0000000..aaae3ae --- /dev/null +++ b/ST2-Project-master/src/Collection.java @@ -0,0 +1,989 @@ + +import com.mysql.jdbc.Connection; +import com.mysql.jdbc.PreparedStatement; +import com.mysql.jdbc.Statement; +import com.sun.java.swing.plaf.windows.WindowsTreeUI.CollapsedIcon; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.JOptionPane; +import javax.swing.JTable; +import javax.swing.JTextField; +import javax.swing.UIManager; +import net.proteanit.sql.DbUtils; + +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +/* + * Client_information.java + * + * Created on Sep 18, 2012, 3:20:48 AM + */ + +/** + * + * @author Vish + */ +public class Collection extends javax.swing.JFrame { + + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + + private void update_table() { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String sql="select * from collection_table"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + collection_table1.setModel(DbUtils.resultSetToTableModel(rs)); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close(); + System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + } + + public Collection() { + + initComponents(); + + update_table(); + } + + /** This method is called from within the constructor to + * initialize the form. + * WARNING: Do NOT modify this code. The content of this method is + * always regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + jPanel2 = new javax.swing.JPanel(); + txt_discount1 = new javax.swing.JTextField(); + jLabel9 = new javax.swing.JLabel(); + txt_advance1 = new javax.swing.JTextField(); + jLabel10 = new javax.swing.JLabel(); + txt_due1 = new javax.swing.JTextField(); + jLabel11 = new javax.swing.JLabel(); + txt_name1 = new javax.swing.JTextField(); + jLabel12 = new javax.swing.JLabel(); + txt_paidAmmount1 = new javax.swing.JTextField(); + txt_id1 = new javax.swing.JTextField(); + jLabel13 = new javax.swing.JLabel(); + jLabel15 = new javax.swing.JLabel(); + txt_date1 = new com.toedter.calendar.JDateChooser(); + txt_remark1 = new javax.swing.JTextField(); + txt_remarks1 = new javax.swing.JLabel(); + jLabel14 = new javax.swing.JLabel(); + jToolBar1 = new javax.swing.JToolBar(); + jButton8 = new javax.swing.JButton(); + jButton2 = new javax.swing.JButton(); + jButton3 = new javax.swing.JButton(); + jButton4 = new javax.swing.JButton(); + jButton5 = new javax.swing.JButton(); + jButton6 = new javax.swing.JButton(); + jButton9 = new javax.swing.JButton(); + jButton7 = new javax.swing.JButton(); + jButton10 = new javax.swing.JButton(); + jLabel8 = new javax.swing.JLabel(); + jPanel5 = new javax.swing.JPanel(); + button_done9 = new javax.swing.JButton(); + button_done10 = new javax.swing.JButton(); + button_done11 = new javax.swing.JButton(); + jSeparator1 = new javax.swing.JSeparator(); + jScrollPane1 = new javax.swing.JScrollPane(); + jScrollPane3 = new javax.swing.JScrollPane(); + collection_table1 = new javax.swing.JTable(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem3 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenuItem5 = new javax.swing.JMenuItem(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + + jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Collection", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(51, 102, 255))); // NOI18N + jPanel2.setForeground(new java.awt.Color(0, 102, 153)); + + txt_discount1.setText("0"); + + jLabel9.setText("Advance :"); + + txt_advance1.setText("0"); + txt_advance1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txt_advanceActionPerformed(evt); + } + }); + + jLabel10.setText("Total Due :"); + + txt_due1.setText("0"); + + jLabel11.setText("Name :"); + + jLabel12.setText("Discount :"); + + txt_paidAmmount1.setText("0"); + + txt_id1.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_idKeyPressed(evt); + } + public void keyReleased(java.awt.event.KeyEvent evt) { + txt_idKeyReleased(evt); + } + public void keyTyped(java.awt.event.KeyEvent evt) { + txt_idKeyTyped(evt); + } + }); + + jLabel13.setText("Client ID :"); + + jLabel15.setText("Date :"); + + txt_date1.setDateFormatString("yyyy-MM-dd"); + + txt_remark1.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_id1KeyPressed(evt); + } + public void keyReleased(java.awt.event.KeyEvent evt) { + txt_id1KeyReleased(evt); + } + public void keyTyped(java.awt.event.KeyEvent evt) { + txt_id1KeyTyped(evt); + } + }); + + txt_remarks1.setText("Des. :"); + + jLabel14.setText("Paid Amount :"); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel13) + .addComponent(jLabel11) + .addComponent(txt_remarks1) + .addComponent(jLabel15)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(txt_date1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(txt_remark1) + .addComponent(txt_name1) + .addComponent(txt_id1, javax.swing.GroupLayout.DEFAULT_SIZE, 204, Short.MAX_VALUE)) + .addGap(34, 34, 34) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel10) + .addComponent(jLabel9) + .addComponent(jLabel14) + .addComponent(jLabel12)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(txt_paidAmmount1, javax.swing.GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE) + .addComponent(txt_discount1, javax.swing.GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE) + .addComponent(txt_advance1, javax.swing.GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE) + .addComponent(txt_due1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_due1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel13) + .addComponent(txt_id1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel10)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_name1, javax.swing.GroupLayout.DEFAULT_SIZE, 20, Short.MAX_VALUE) + .addComponent(jLabel11) + .addComponent(txt_advance1) + .addComponent(jLabel9)) + .addGap(15, 15, 15) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_remark1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txt_remarks1) + .addComponent(txt_discount1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(jLabel12)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel15) + .addComponent(txt_date1, javax.swing.GroupLayout.PREFERRED_SIZE, 18, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_paidAmmount1, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel14))) + .addContainerGap()) + ); + + jToolBar1.setRollover(true); + + jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/1-Normal-Home-icon.png"))); // NOI18N + jButton8.setText("Home"); + jButton8.setFocusable(false); + jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton8.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton8ActionPerformed(evt); + } + }); + jToolBar1.add(jButton8); + + jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new32.png"))); // NOI18N + jButton2.setText("New Client"); + jButton2.setFocusable(false); + jButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton2ActionPerformed(evt); + } + }); + jToolBar1.add(jButton2); + + jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon.png"))); // NOI18N + jButton3.setText("Transaction"); + jButton3.setFocusable(false); + jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton3ActionPerformed(evt); + } + }); + jToolBar1.add(jButton3); + + jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon.png"))); // NOI18N + jButton4.setText("Collection"); + jButton4.setFocusable(false); + jButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton4.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton4ActionPerformed(evt); + } + }); + jToolBar1.add(jButton4); + + jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton5.setText("Print"); + jButton5.setFocusable(false); + jButton5.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton5.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton5.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton5.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton5.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton5ActionPerformed(evt); + } + }); + jToolBar1.add(jButton5); + + jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Calendar-icon.png"))); // NOI18N + jButton6.setText("Calender"); + jButton6.setFocusable(false); + jButton6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton6.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton6.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton6ActionPerformed(evt); + } + }); + jToolBar1.add(jButton6); + + jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Button-Refresh-icon.png"))); // NOI18N + jButton9.setText("Refresh"); + jButton9.setFocusable(false); + jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton9); + + jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + jButton7.setText("Search"); + jButton7.setFocusable(false); + jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton7.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton7.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton7.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton7); + + jButton10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close32.png"))); // NOI18N + jButton10.setText("Close"); + jButton10.setFocusable(false); + jButton10.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton10.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton10.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton10.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton10.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton10.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton10ActionPerformed(evt); + } + }); + jToolBar1.add(jButton10); + + jLabel8.setFont(new java.awt.Font("Rockwell Extra Bold", 1, 24)); // NOI18N + jLabel8.setForeground(new java.awt.Color(0, 51, 102)); + jLabel8.setText("Recent Collections"); + + jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Options", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(0, 153, 255))); // NOI18N + + button_done9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/done1.png"))); // NOI18N + button_done9.setText("Done"); + button_done9.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + button_doneActionPerformed(evt); + } + }); + + button_done10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/clear.png"))); // NOI18N + button_done10.setText("Clear"); + button_done10.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + button_done1ActionPerformed(evt); + } + }); + + button_done11.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print-icon.png"))); // NOI18N + button_done11.setText("Print"); + button_done11.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + button_done2ActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5); + jPanel5.setLayout(jPanel5Layout); + jPanel5Layout.setHorizontalGroup( + jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel5Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(button_done9, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(button_done10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(button_done11, javax.swing.GroupLayout.DEFAULT_SIZE, 77, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel5Layout.setVerticalGroup( + jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel5Layout.createSequentialGroup() + .addContainerGap() + .addComponent(button_done9) + .addGap(18, 18, 18) + .addComponent(button_done10) + .addGap(18, 18, 18) + .addComponent(button_done11) + .addContainerGap(17, Short.MAX_VALUE)) + ); + + collection_table1.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + collection_table1.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + collection_table1MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + collection_table1MouseEntered(evt); + } + }); + collection_table1.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + collection_table1KeyPressed(evt); + } + }); + jScrollPane3.setViewportView(collection_table1); + + jScrollPane1.setViewportView(jScrollPane3); + + jMenu1.setText("Option"); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/house-icon.png"))); // NOI18N + jMenuItem1.setText("Home"); + jMenuItem1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem1ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new1.png"))); // NOI18N + jMenuItem2.setText("New Client"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem2); + + jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon (1).png"))); // NOI18N + jMenuItem3.setText("Transection"); + jMenuItem3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem3ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem3); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon (1).png"))); // NOI18N + jMenuItem4.setText("Collection"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem4); + + jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close1.png"))); // NOI18N + jMenuItem5.setText("Close"); + jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jMenuItem5MouseClicked(evt); + } + }); + jMenuItem5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem5ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem5); + + jMenuBar1.add(jMenu1); + + setJMenuBar(jMenuBar1); + + 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() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jToolBar1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addGap(227, 227, 227) + .addComponent(jLabel8)) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, 105, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(layout.createSequentialGroup() + .addGap(206, 206, 206) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 332, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap()) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 719, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel8) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(213, 213, 213) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap()) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGap(111, 111, 111) + .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(185, Short.MAX_VALUE))) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-755)/2, (screenSize.height-547)/2, 755, 547); + }// //GEN-END:initComponents + + private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_jButton4ActionPerformed + + private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed + this.dispose(); + new Delivery().setVisible(true); + }//GEN-LAST:event_jButton3ActionPerformed + + private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton10ActionPerformed + System.exit(0); + }//GEN-LAST:event_jButton10ActionPerformed + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + + this.dispose(); + + new client_info().setVisible(true); +}//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem3ActionPerformed + + this.dispose(); + + new Delivery().setVisible(true); + }//GEN-LAST:event_jMenuItem3ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + + this.dispose(); + + new Collection().setVisible(true); + }//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jMenuItem5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMenuItem5MouseClicked + System.exit(0); +}//GEN-LAST:event_jMenuItem5MouseClicked + + private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed + System.exit(0); +}//GEN-LAST:event_jMenuItem5ActionPerformed + + private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jButton8ActionPerformed + + private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed + this.dispose(); + new client_info().setVisible(true); + }//GEN-LAST:event_jButton2ActionPerformed + + private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jMenuItem1ActionPerformed + + private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed + + this.dispose(); + + new MyCalender().setVisible(true); + + }//GEN-LAST:event_jButton6ActionPerformed + + private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed + + this.dispose(); + + new Client_page().setVisible(true); + }//GEN-LAST:event_jButton5ActionPerformed + + private void due_calculation() + { + double t_tk = 0,t_delivery = 0,t_discount = 0; + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + + String sql="select total_paid_amount,total_delivery,total_discount from client_info where id='"+txt_id1.getText()+"'"; + System.out.println("sd"); + Statement statement = (Statement) conn.createStatement(); + + ResultSet rs=statement.executeQuery(sql); + + if(rs.next()){ + System.out.println("df"); + t_tk=rs.getDouble(1); + t_delivery=rs.getDouble(2); + t_discount=rs.getDouble(3); + } + double due =t_tk-t_delivery-t_discount; + String du=""+due; + System.out.println("due"); + if(due>=0) + { + txt_due1.setText(du); + txt_advance1.setText("0"); + } + else { + + due=-1*due; + du=""+due; + txt_due1.setText("0"); + txt_advance1.setText(du); + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e+"asd"); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + return; + } + + public void takin_input_from_table() + { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + int row=collection_table1.getSelectedRow(); + rowf=row; + String table_click=collection_table1.getModel().getValueAt(row, 0).toString(); + String sql="select * from collection_table where serial_no ='"+table_click+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + if(rs.next()) { + String add1=rs.getString("id"); + txt_id1.setText(add1); + String add2=rs.getString("name"); + txt_name1.setText(add2); + String add3=rs.getString("description"); + txt_remark1.setText(add3); + + String add6=rs.getObject("collection_date").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(add6); + txt_date1.setDate(dat); + + String add7=rs.getString("discount"); + txt_discount1.setText(add7); + + String add8=rs.getString("taka"); + txt_paidAmmount1.setText(add8); + + due_calculation(); + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e+" fd"); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + } + + private void txt_id1KeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_id1KeyTyped + // TODO add your handling code here: +}//GEN-LAST:event_txt_id1KeyTyped + + private void txt_id1KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_id1KeyReleased + // TODO add your handling code here: +}//GEN-LAST:event_txt_id1KeyReleased + + private void txt_id1KeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_id1KeyPressed + // TODO add your handling code here: +}//GEN-LAST:event_txt_id1KeyPressed + + private void txt_idKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_idKeyTyped + +}//GEN-LAST:event_txt_idKeyTyped + + private void txt_idKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_idKeyReleased + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + try{ + String id=txt_id1.getText(); + + String sql="select name,total_paid_amount,total_discount,total_delivery from client_info where id='"+id+"'"; + + Statement statement = (Statement) conn.createStatement(); + ResultSet rs=statement.executeQuery(sql); + System.out.println("gffg"); + String nme; + double t_paid_amount,t_discount,t_delivery,cal; + if(rs.next()){ + + nme=rs.getString(1); + t_paid_amount=rs.getDouble(2); + t_discount=rs.getDouble(3); + t_delivery=rs.getDouble(4); + txt_name1.setText(nme); + cal=t_delivery-t_paid_amount-t_discount; + + if(cal>=0) { + String s=""+cal; + txt_due1.setText(s); + } else { + cal=cal*(-1); + String s=""+cal; + txt_advance1.setText(s); + } + + }else{ + txt_name1.setText(""); + txt_due1.setText("0"); + txt_advance1.setText("0"); + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + }//GEN-LAST:event_txt_idKeyReleased + + private void txt_idKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_idKeyPressed + +}//GEN-LAST:event_txt_idKeyPressed + + private void txt_advanceActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txt_advanceActionPerformed + // TODO add your handling code here: +}//GEN-LAST:event_txt_advanceActionPerformed + + private void button_done2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_button_done2ActionPerformed + + MessageFormat header=new MessageFormat("Report Print"); + MessageFormat footer=new MessageFormat("Page{0,number,integer}"); + try{ + collection_table1.print(JTable.PrintMode.NORMAL,header,footer); + }catch(Exception e){ + + } + }//GEN-LAST:event_button_done2ActionPerformed + + private void button_done1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_button_done1ActionPerformed + + txt_name1.setText(""); + txt_id1.setText(""); + txt_remark1.setText(""); + txt_date1.setDate(null); + + txt_discount1.setText("0"); + txt_advance1.setText("0"); + txt_due1.setText("0"); + txt_paidAmmount1.setText("0"); + + }//GEN-LAST:event_button_done1ActionPerformed + + private void button_doneActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_button_doneActionPerformed + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + double total_taka=0,tot1=0;String id = null; + try{ + double dub=Double.parseDouble(txt_paidAmmount1.getText()); + + String sql="select total_paid_amount from client_info where id='"+txt_id1.getText()+"'"; + + Statement statement = (Statement) conn.createStatement(); + + ResultSet rs=statement.executeQuery(sql); + + while(rs.next()){ + total_taka=rs.getDouble(1); + } + total_taka+=dub; + + dub=Double.parseDouble(txt_discount1.getText()); + + sql="select total_discount from client_info where id='"+txt_id1.getText()+"'"; + + rs=statement.executeQuery(sql); + + while(rs.next()){ + tot1=rs.getDouble(1); + } + tot1+=dub; + + id=txt_id1.getText(); + + String total_tk="" +total_taka; + + String val=((JTextField)txt_date1.getDateEditor().getUiComponent()).getText(); + + sql="insert into collection_table(id,name,taka,total_taka,discount,collection_date, description) values ('" + txt_id1.getText() + "','" + txt_name1.getText() + "','" + txt_paidAmmount1.getText() + "','"+ total_tk+ "','" + txt_discount1.getText() +"','" + val +"','" + txt_remark1.getText() + "')"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + + // JOptionPane.showMessageDialog(null, "Updated"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + + try{ + String sql="update client_info set total_paid_amount='" + total_taka +"',total_discount='"+tot1+"' where id='"+id+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "Done"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + + update_table(); + + txt_id1.setText(""); + txt_name1.setText(""); + txt_remark1.setText(""); + txt_discount1.setText("0"); + txt_paidAmmount1.setText("0"); + txt_advance1.setText("0"); + txt_due1.setText("0"); + txt_date1.setDate(null); + }//GEN-LAST:event_button_doneActionPerformed + + private void collection_table1MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_collection_table1MouseClicked + + takin_input_from_table(); +}//GEN-LAST:event_collection_table1MouseClicked + + private void collection_table1MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_collection_table1MouseEntered + // TODO add your handling code here: +}//GEN-LAST:event_collection_table1MouseEntered + + private void collection_table1KeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_collection_table1KeyPressed + +}//GEN-LAST:event_collection_table1KeyPressed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + + try { + + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + //UIManager.setLookAndFeel("com.jtattoo.plaf.smart.SmartLookAndFeel"); + //UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel"); + UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel"); + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + new Collection().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton button_done; + private javax.swing.JButton button_done1; + private javax.swing.JButton button_done10; + private javax.swing.JButton button_done11; + private javax.swing.JButton button_done2; + private javax.swing.JButton button_done3; + private javax.swing.JButton button_done4; + private javax.swing.JButton button_done5; + private javax.swing.JButton button_done6; + private javax.swing.JButton button_done7; + private javax.swing.JButton button_done8; + private javax.swing.JButton button_done9; + private javax.swing.JTable collection_table1; + private javax.swing.JButton jButton10; + private javax.swing.JButton jButton2; + private javax.swing.JButton jButton3; + private javax.swing.JButton jButton4; + private javax.swing.JButton jButton5; + private javax.swing.JButton jButton6; + private javax.swing.JButton jButton7; + private javax.swing.JButton jButton8; + private javax.swing.JButton jButton9; + private javax.swing.JLabel jLabel10; + private javax.swing.JLabel jLabel11; + private javax.swing.JLabel jLabel12; + private javax.swing.JLabel jLabel13; + private javax.swing.JLabel jLabel14; + private javax.swing.JLabel jLabel15; + private javax.swing.JLabel jLabel8; + private javax.swing.JLabel jLabel9; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem3; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JMenuItem jMenuItem5; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JPanel jPanel4; + private javax.swing.JPanel jPanel5; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JScrollPane jScrollPane2; + private javax.swing.JScrollPane jScrollPane3; + private javax.swing.JSeparator jSeparator1; + private javax.swing.JToolBar jToolBar1; + private javax.swing.JTextField txt_advance1; + private com.toedter.calendar.JDateChooser txt_date1; + private javax.swing.JTextField txt_discount1; + private javax.swing.JTextField txt_due1; + private javax.swing.JTextField txt_id1; + private javax.swing.JTextField txt_name1; + private javax.swing.JTextField txt_paidAmmount1; + private javax.swing.JTextField txt_remark1; + private javax.swing.JLabel txt_remarks1; + // End of variables declaration//GEN-END:variables + int rowf; +} diff --git a/ST2-Project-master/src/Collection_tab.form b/ST2-Project-master/src/Collection_tab.form new file mode 100644 index 0000000..97228de --- /dev/null +++ b/ST2-Project-master/src/Collection_tab.form @@ -0,0 +1,688 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + +
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + +
+
+
+
+
+
+
+
+
+
+ diff --git a/ST2-Project-master/src/Collection_tab.java b/ST2-Project-master/src/Collection_tab.java new file mode 100644 index 0000000..094c3cd --- /dev/null +++ b/ST2-Project-master/src/Collection_tab.java @@ -0,0 +1,1062 @@ + +import com.mysql.jdbc.Connection; +import com.mysql.jdbc.PreparedStatement; +import com.mysql.jdbc.Statement; +import com.sun.java.swing.plaf.windows.WindowsTreeUI.CollapsedIcon; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.JOptionPane; +import javax.swing.JTable; +import javax.swing.JTextField; +import javax.swing.UIManager; +import net.proteanit.sql.DbUtils; + +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +/* + * Client_information.java + * + * Created on Sep 18, 2012, 3:20:48 AM + */ + +/** + * + * @author Vish + */ +public class Collection_tab extends javax.swing.JFrame { + + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + + private void update_table(JTable jtable, int client_id) { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String sql; + + if(client_id==0) sql="select * from collection_table"; + + else sql="select * from collection_table where id='" + client_id + "'"; + + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + jtable.setModel(DbUtils.resultSetToTableModel(rs)); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close(); + System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + } + + public Collection_tab() { + + initComponents(); + + update_table(collection_table,0); + + update_table(collection_table_client,-1); + } + + /** This method is called from within the constructor to + * initialize the form. + * WARNING: Do NOT modify this code. The content of this method is + * always regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + jPanel2 = new javax.swing.JPanel(); + txt_discount1 = new javax.swing.JTextField(); + jLabel9 = new javax.swing.JLabel(); + txt_advance1 = new javax.swing.JTextField(); + jLabel10 = new javax.swing.JLabel(); + txt_due1 = new javax.swing.JTextField(); + jLabel11 = new javax.swing.JLabel(); + txt_name1 = new javax.swing.JTextField(); + jLabel12 = new javax.swing.JLabel(); + txt_paidAmmount1 = new javax.swing.JTextField(); + txt_id1 = new javax.swing.JTextField(); + jLabel13 = new javax.swing.JLabel(); + jLabel14 = new javax.swing.JLabel(); + jLabel15 = new javax.swing.JLabel(); + txt_date1 = new com.toedter.calendar.JDateChooser(); + txt_remark1 = new javax.swing.JTextField(); + txt_remarks1 = new javax.swing.JLabel(); + jToolBar1 = new javax.swing.JToolBar(); + jButton8 = new javax.swing.JButton(); + jButton2 = new javax.swing.JButton(); + jButton3 = new javax.swing.JButton(); + jButton4 = new javax.swing.JButton(); + jButton5 = new javax.swing.JButton(); + jButton6 = new javax.swing.JButton(); + jButton9 = new javax.swing.JButton(); + jButton7 = new javax.swing.JButton(); + jButton10 = new javax.swing.JButton(); + jPanel1 = new javax.swing.JPanel(); + button_done = new javax.swing.JButton(); + button_done1 = new javax.swing.JButton(); + button_done2 = new javax.swing.JButton(); + jTabbedPane1 = new javax.swing.JTabbedPane(); + jPanel3 = new javax.swing.JPanel(); + jScrollPane1 = new javax.swing.JScrollPane(); + jScrollPane3 = new javax.swing.JScrollPane(); + collection_table = new javax.swing.JTable(); + jPanel4 = new javax.swing.JPanel(); + jScrollPane2 = new javax.swing.JScrollPane(); + jScrollPane4 = new javax.swing.JScrollPane(); + collection_table_client = new javax.swing.JTable(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem3 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenuItem5 = new javax.swing.JMenuItem(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + + jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Collection", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(51, 102, 255))); // NOI18N + jPanel2.setForeground(new java.awt.Color(0, 102, 153)); + + txt_discount1.setText("0"); + + jLabel9.setText("Advance :"); + + txt_advance1.setText("0"); + txt_advance1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txt_advanceActionPerformed(evt); + } + }); + + jLabel10.setText("Total Due :"); + + txt_due1.setText("0"); + + jLabel11.setText("Name :"); + + jLabel12.setText("Discount :"); + + txt_paidAmmount1.setText("0"); + + txt_id1.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_idKeyPressed(evt); + } + public void keyReleased(java.awt.event.KeyEvent evt) { + txt_idKeyReleased(evt); + } + public void keyTyped(java.awt.event.KeyEvent evt) { + txt_idKeyTyped(evt); + } + }); + + jLabel13.setText("Client ID :"); + + jLabel14.setText("Paid Amount :"); + + jLabel15.setText("Date :"); + + txt_date1.setDateFormatString("yyyy-MM-dd"); + + txt_remark1.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_id1KeyPressed(evt); + } + public void keyReleased(java.awt.event.KeyEvent evt) { + txt_id1KeyReleased(evt); + } + public void keyTyped(java.awt.event.KeyEvent evt) { + txt_id1KeyTyped(evt); + } + }); + + txt_remarks1.setText("Des. :"); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel13) + .addComponent(jLabel11) + .addComponent(txt_remarks1) + .addComponent(jLabel15)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(txt_date1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(txt_remark1) + .addComponent(txt_name1) + .addComponent(txt_id1, javax.swing.GroupLayout.DEFAULT_SIZE, 204, Short.MAX_VALUE)) + .addGap(20, 20, 20) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel10) + .addComponent(jLabel9) + .addComponent(jLabel12) + .addComponent(jLabel14)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(txt_paidAmmount1, javax.swing.GroupLayout.DEFAULT_SIZE, 186, Short.MAX_VALUE) + .addComponent(txt_discount1, javax.swing.GroupLayout.DEFAULT_SIZE, 186, Short.MAX_VALUE) + .addComponent(txt_advance1, javax.swing.GroupLayout.DEFAULT_SIZE, 186, Short.MAX_VALUE) + .addComponent(txt_due1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 186, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_due1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel13) + .addComponent(txt_id1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel10)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_name1, javax.swing.GroupLayout.DEFAULT_SIZE, 20, Short.MAX_VALUE) + .addComponent(jLabel11) + .addComponent(txt_advance1) + .addComponent(jLabel9)) + .addGap(15, 15, 15) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_remark1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txt_remarks1) + .addComponent(txt_discount1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel12)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel15) + .addComponent(txt_date1, javax.swing.GroupLayout.PREFERRED_SIZE, 18, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_paidAmmount1, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel14))) + .addContainerGap()) + ); + + jToolBar1.setRollover(true); + + jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/1-Normal-Home-icon.png"))); // NOI18N + jButton8.setText("Home"); + jButton8.setFocusable(false); + jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton8.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton8ActionPerformed(evt); + } + }); + jToolBar1.add(jButton8); + + jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new32.png"))); // NOI18N + jButton2.setText("New Client"); + jButton2.setFocusable(false); + jButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton2ActionPerformed(evt); + } + }); + jToolBar1.add(jButton2); + + jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon.png"))); // NOI18N + jButton3.setText("Transaction"); + jButton3.setFocusable(false); + jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton3ActionPerformed(evt); + } + }); + jToolBar1.add(jButton3); + + jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon.png"))); // NOI18N + jButton4.setText("Collection"); + jButton4.setFocusable(false); + jButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton4.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton4ActionPerformed(evt); + } + }); + jToolBar1.add(jButton4); + + jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton5.setText("Print"); + jButton5.setFocusable(false); + jButton5.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton5.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton5.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton5.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton5.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton5ActionPerformed(evt); + } + }); + jToolBar1.add(jButton5); + + jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Calendar-icon.png"))); // NOI18N + jButton6.setText("Calender"); + jButton6.setFocusable(false); + jButton6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton6.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton6.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton6ActionPerformed(evt); + } + }); + jToolBar1.add(jButton6); + + jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Button-Refresh-icon.png"))); // NOI18N + jButton9.setText("Refresh"); + jButton9.setFocusable(false); + jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton9); + + jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + jButton7.setText("Search"); + jButton7.setFocusable(false); + jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton7.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton7.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton7.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton7); + + jButton10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close32.png"))); // NOI18N + jButton10.setText("Close"); + jButton10.setFocusable(false); + jButton10.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton10.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton10.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton10.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton10.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton10.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton10ActionPerformed(evt); + } + }); + jToolBar1.add(jButton10); + + jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Options", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(0, 153, 255))); // NOI18N + + button_done.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/done1.png"))); // NOI18N + button_done.setText("Done"); + button_done.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + button_doneActionPerformed(evt); + } + }); + + button_done1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/clear.png"))); // NOI18N + button_done1.setText("Clear"); + button_done1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + button_done1ActionPerformed(evt); + } + }); + + button_done2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print-icon.png"))); // NOI18N + button_done2.setText("Print"); + button_done2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + button_done2ActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(button_done, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(button_done1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(button_done2, javax.swing.GroupLayout.DEFAULT_SIZE, 77, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addComponent(button_done) + .addGap(18, 18, 18) + .addComponent(button_done1) + .addGap(18, 18, 18) + .addComponent(button_done2) + .addContainerGap(17, Short.MAX_VALUE)) + ); + + collection_table.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + collection_table.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + collection_tableMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + collection_tableMouseEntered(evt); + } + }); + collection_table.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + collection_tableKeyPressed(evt); + } + }); + jScrollPane3.setViewportView(collection_table); + + jScrollPane1.setViewportView(jScrollPane3); + + javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); + jPanel3.setLayout(jPanel3Layout); + jPanel3Layout.setHorizontalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 724, Short.MAX_VALUE) + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 724, Short.MAX_VALUE)) + ); + jPanel3Layout.setVerticalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 193, Short.MAX_VALUE) + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 193, Short.MAX_VALUE)) + ); + + jTabbedPane1.addTab("Recent Collections ", jPanel3); + + collection_table_client.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + collection_table_client.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + collection_table_clientMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + collection_table_clientMouseEntered(evt); + } + }); + collection_table_client.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + collection_table_clientKeyPressed(evt); + } + }); + jScrollPane4.setViewportView(collection_table_client); + + jScrollPane2.setViewportView(jScrollPane4); + + javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); + jPanel4.setLayout(jPanel4Layout); + jPanel4Layout.setHorizontalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 724, Short.MAX_VALUE) + .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 724, Short.MAX_VALUE)) + ); + jPanel4Layout.setVerticalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 193, Short.MAX_VALUE) + .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 193, Short.MAX_VALUE)) + ); + + jTabbedPane1.addTab("Client Collections ", jPanel4); + + jMenu1.setText("Option"); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/house-icon.png"))); // NOI18N + jMenuItem1.setText("Home"); + jMenuItem1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem1ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new1.png"))); // NOI18N + jMenuItem2.setText("New Client"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem2); + + jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon (1).png"))); // NOI18N + jMenuItem3.setText("Transection"); + jMenuItem3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem3ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem3); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon (1).png"))); // NOI18N + jMenuItem4.setText("Collection"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem4); + + jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close1.png"))); // NOI18N + jMenuItem5.setText("Close"); + jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jMenuItem5MouseClicked(evt); + } + }); + jMenuItem5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem5ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem5); + + jMenuBar1.add(jMenu1); + + setJMenuBar(jMenuBar1); + + 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) + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(27, 27, 27) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addGap(24, 24, 24)) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 729, Short.MAX_VALUE) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jTabbedPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 221, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(12, 12, 12) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap()) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-765)/2, (screenSize.height-528)/2, 765, 528); + }// //GEN-END:initComponents + + private void button_doneActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_button_doneActionPerformed + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + double total_taka=0,tot1=0;String id = null; + + int client_id=0; + + try{ + double dub=Double.parseDouble(txt_paidAmmount1.getText()); + + String sql="select total_paid_amount from client_info where id='"+txt_id1.getText()+"'"; + + client_id=Integer.parseInt(txt_id1.getText()); + + Statement statement = (Statement) conn.createStatement(); + + ResultSet rs=statement.executeQuery(sql); + + while(rs.next()){ + total_taka=rs.getDouble(1); + } + total_taka+=dub; + + dub=Double.parseDouble(txt_discount1.getText()); + + sql="select total_discount from client_info where id='"+txt_id1.getText()+"'"; + + rs=statement.executeQuery(sql); + + while(rs.next()){ + tot1=rs.getDouble(1); + } + tot1+=dub; + + id=txt_id1.getText(); + + String total_tk="" +total_taka; + + String val=((JTextField)txt_date1.getDateEditor().getUiComponent()).getText(); + + sql="insert into collection_table(id,name,taka,total_taka,discount,collection_date, description) values ('" + txt_id1.getText() + "','" + txt_name1.getText() + "','" + txt_paidAmmount1.getText() + "','"+ total_tk+ "','" + txt_discount1.getText() +"','" + val +"','" + txt_remark1.getText() + "')"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + + // JOptionPane.showMessageDialog(null, "Updated"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + + try{ + String sql="update client_info set total_paid_amount='" + total_taka +"',total_discount='"+tot1+"' where id='"+id+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "Done"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + + update_table(collection_table,0); + + update_table(collection_table_client,client_id); + + txt_id1.setText(""); + txt_name1.setText(""); + txt_remark1.setText(""); + txt_discount1.setText("0"); + txt_paidAmmount1.setText("0"); + txt_advance1.setText("0"); + txt_due1.setText("0"); + txt_date1.setDate(null); + + }//GEN-LAST:event_button_doneActionPerformed + + private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_jButton4ActionPerformed + + private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed + this.dispose(); + new Delivery().setVisible(true); + }//GEN-LAST:event_jButton3ActionPerformed + + private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton10ActionPerformed + System.exit(0); + }//GEN-LAST:event_jButton10ActionPerformed + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + + this.dispose(); + + new client_info().setVisible(true); +}//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem3ActionPerformed + + this.dispose(); + + new Delivery().setVisible(true); + }//GEN-LAST:event_jMenuItem3ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + + this.dispose(); + + new Collection().setVisible(true); + }//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jMenuItem5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMenuItem5MouseClicked + System.exit(0); +}//GEN-LAST:event_jMenuItem5MouseClicked + + private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed + System.exit(0); +}//GEN-LAST:event_jMenuItem5ActionPerformed + + private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jButton8ActionPerformed + + private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed + this.dispose(); + new client_info().setVisible(true); + }//GEN-LAST:event_jButton2ActionPerformed + + private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jMenuItem1ActionPerformed + + private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed + + this.dispose(); + + new MyCalender().setVisible(true); + + }//GEN-LAST:event_jButton6ActionPerformed + + private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed + + this.dispose(); + + new Client_page().setVisible(true); + }//GEN-LAST:event_jButton5ActionPerformed + + + public void takin_input_from_table() + { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + int client_id=0; + + try{ + int row=collection_table.getSelectedRow(); + rowf=row; + String table_click=collection_table.getModel().getValueAt(row, 0).toString(); + String sql="select * from collection_table where serial_no ='"+table_click+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + if(rs.next()) { + String add1=rs.getString("id"); + client_id=Integer.parseInt(add1); + txt_id1.setText(add1); + String add2=rs.getString("name"); + txt_name1.setText(add2); + String add3=rs.getString("description"); + txt_remark1.setText(add3); + + String add6=rs.getObject("collection_date").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(add6); + txt_date1.setDate(dat); + + String add7=rs.getString("discount"); + txt_discount1.setText(add7); + + String add8=rs.getString("taka"); + txt_paidAmmount1.setText(add8); + + due_calculation(); + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e+" fd"); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(collection_table_client,client_id); + + update_table(collection_table,0); + } + + private void due_calculation() + { + double t_tk = 0,t_delivery = 0,t_discount = 0; + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + + String sql="select total_paid_amount,total_delivery,total_discount from client_info where id='"+txt_id1.getText()+"'"; + System.out.println("sd"); + Statement statement = (Statement) conn.createStatement(); + + ResultSet rs=statement.executeQuery(sql); + + if(rs.next()){ + System.out.println("df"); + t_tk=rs.getDouble(1); + t_delivery=rs.getDouble(2); + t_discount=rs.getDouble(3); + } + double due =t_tk-t_delivery-t_discount; + String du=""+due; + System.out.println("due"); + if(due>=0) + { + txt_due1.setText(du); + txt_advance1.setText("0"); + } + else { + + due=-1*due; + du=""+due; + txt_due1.setText("0"); + txt_advance1.setText(du); + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e+"asd"); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + return; + } + + private void txt_id1KeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_id1KeyTyped + // TODO add your handling code here: +}//GEN-LAST:event_txt_id1KeyTyped + + private void txt_id1KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_id1KeyReleased + // TODO add your handling code here: +}//GEN-LAST:event_txt_id1KeyReleased + + private void txt_id1KeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_id1KeyPressed + // TODO add your handling code here: +}//GEN-LAST:event_txt_id1KeyPressed + + private void txt_idKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_idKeyTyped + +}//GEN-LAST:event_txt_idKeyTyped + + private void txt_idKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_idKeyReleased + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + try{ + String id=txt_id1.getText(); + + String sql="select name,total_paid_amount,total_discount,total_delivery from client_info where id='"+id+"'"; + + Statement statement = (Statement) conn.createStatement(); + ResultSet rs=statement.executeQuery(sql); + System.out.println("gffg"); + String nme; + double t_paid_amount,t_discount,t_delivery,cal; + if(rs.next()){ + + nme=rs.getString(1); + t_paid_amount=rs.getDouble(2); + t_discount=rs.getDouble(3); + t_delivery=rs.getDouble(4); + txt_name1.setText(nme); + cal=t_delivery-t_paid_amount-t_discount; + + if(cal>=0) { + String s=""+cal; + txt_due1.setText(s); + } else { + cal=cal*(-1); + String s=""+cal; + txt_advance1.setText(s); + } + + }else{ + txt_name1.setText(""); + txt_due1.setText("0"); + txt_advance1.setText("0"); + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + }//GEN-LAST:event_txt_idKeyReleased + + private void txt_idKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_idKeyPressed + +}//GEN-LAST:event_txt_idKeyPressed + + private void txt_advanceActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txt_advanceActionPerformed + // TODO add your handling code here: +}//GEN-LAST:event_txt_advanceActionPerformed + + private void button_done1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_button_done1ActionPerformed + + txt_name1.setText(""); + txt_id1.setText(""); + txt_remark1.setText(""); + txt_date1.setDate(null); + + txt_discount1.setText("0"); + txt_advance1.setText("0"); + txt_due1.setText("0"); + txt_paidAmmount1.setText("0"); + + }//GEN-LAST:event_button_done1ActionPerformed + + private void button_done2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_button_done2ActionPerformed + + MessageFormat header=new MessageFormat("Report Print"); + MessageFormat footer=new MessageFormat("Page{0,number,integer}"); + try{ + collection_table.print(JTable.PrintMode.NORMAL,header,footer); + }catch(Exception e){ + + } + + }//GEN-LAST:event_button_done2ActionPerformed + + private void collection_tableMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_collection_tableMouseClicked + + takin_input_from_table(); +}//GEN-LAST:event_collection_tableMouseClicked + + private void collection_tableMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_collection_tableMouseEntered + // TODO add your handling code here: +}//GEN-LAST:event_collection_tableMouseEntered + + private void collection_tableKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_collection_tableKeyPressed + +}//GEN-LAST:event_collection_tableKeyPressed + + private void collection_table_clientMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_collection_table_clientMouseClicked + + //takin_input_from_table(); + +}//GEN-LAST:event_collection_table_clientMouseClicked + + private void collection_table_clientMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_collection_table_clientMouseEntered + // TODO add your handling code here: +}//GEN-LAST:event_collection_table_clientMouseEntered + + private void collection_table_clientKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_collection_table_clientKeyPressed + +}//GEN-LAST:event_collection_table_clientKeyPressed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + + try { + + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + //UIManager.setLookAndFeel("com.jtattoo.plaf.smart.SmartLookAndFeel"); + //UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel"); + UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel"); + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + new Collection_tab().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton button_done; + private javax.swing.JButton button_done1; + private javax.swing.JButton button_done2; + private javax.swing.JTable collection_table; + private javax.swing.JTable collection_table_client; + private javax.swing.JButton jButton10; + private javax.swing.JButton jButton2; + private javax.swing.JButton jButton3; + private javax.swing.JButton jButton4; + private javax.swing.JButton jButton5; + private javax.swing.JButton jButton6; + private javax.swing.JButton jButton7; + private javax.swing.JButton jButton8; + private javax.swing.JButton jButton9; + private javax.swing.JLabel jLabel10; + private javax.swing.JLabel jLabel11; + private javax.swing.JLabel jLabel12; + private javax.swing.JLabel jLabel13; + private javax.swing.JLabel jLabel14; + private javax.swing.JLabel jLabel15; + private javax.swing.JLabel jLabel9; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem3; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JMenuItem jMenuItem5; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JPanel jPanel4; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JScrollPane jScrollPane2; + private javax.swing.JScrollPane jScrollPane3; + private javax.swing.JScrollPane jScrollPane4; + private javax.swing.JTabbedPane jTabbedPane1; + private javax.swing.JToolBar jToolBar1; + private javax.swing.JTextField txt_advance1; + private com.toedter.calendar.JDateChooser txt_date1; + private javax.swing.JTextField txt_discount1; + private javax.swing.JTextField txt_due1; + private javax.swing.JTextField txt_id1; + private javax.swing.JTextField txt_name1; + private javax.swing.JTextField txt_paidAmmount1; + private javax.swing.JTextField txt_remark1; + private javax.swing.JLabel txt_remarks1; + // End of variables declaration//GEN-END:variables + int rowf; +} diff --git a/ST2-Project-master/src/Data/1-Normal-Home-icon.png b/ST2-Project-master/src/Data/1-Normal-Home-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..90f39c94f7b05a1992c7a6a8f07bf5e9df672b93 GIT binary patch literal 2421 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 Xm~E2eTunam00000NkvXXu0mjf@A*hh literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/Actions-go-jump-today-icon.png b/ST2-Project-master/src/Data/Actions-go-jump-today-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4a894be64f25d0ad79b9c2dd673ba2a93f8b2a7e GIT binary patch literal 1536 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 literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/Calendar-icon.png b/ST2-Project-master/src/Data/Calendar-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..788fc24923c485a710bd8935fd99a747eb0ea6e8 GIT binary patch literal 1450 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 Bj4%KI literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/Search-icon (1).png b/ST2-Project-master/src/Data/Search-icon (1).png new file mode 100644 index 0000000000000000000000000000000000000000..ed2e0db54080302fae4abdb1b0c419fe74b7b5ab GIT binary patch literal 1611 zcmV-R2DJH!P) zdrVVT9LK-+wxy-zDb)Fb@#uJp;AQ{;p(Go)xQw_=A`po#&Jp>;Em^jh2?mxe+Y%Pd zOy;u8z#K#|b0U(B48*v}qBDRFd2cHC!11U&TKc?qztaLkg4&|~l22~Zo_o*d{Lb&( zb1sJ`4>zKKc%6tQ)P#i46W56g#8L4ag20EwXOC$!NUS1k&qAP?Snou;l<90d zRe@#1ZGv~A?H6!l>!}EM5@AF(@qv@~^bxy=e~5lUbX9=0eT#U9SW8G3DbG3{B5H_I zR|HtchZouD!=m?b0_=abtlWv6#J>3rf&!(&jeaYKM`UxUninVaA`Av`ew*QiZej(M zMeHEb2(L#OzE|ia?9BJXx8)N!dVG=_85Qi$X)HqdX)A0-O>Ow`v z;w+6cy|}m-@$vC!YdVHt?i$u;x58hO1gTsF{qRlPYCVn1Ev-LZHu`$*Iv71XModN`#$&puH0*RXv<99mI@cllFEYF4i zb1SiX_ipI*dS@j*B0ilja6}@J>|iPF|GOQ@zHL~yxd;}cj{XwhnEvTR(H!$qIi_@X zP<`|pEKhkKCr_S4U0t2C0;h-~qJ6GFZ)j+!X7Ap;=xQiK?v{;^E4^sMf}{BOISbrT zWROTz=%?v8-4_NQbpT3BOI@i2R*Y<4*iYElv(0H~X);!LOGl3)S^ElgVxp09tg=aD zPNj(Uq(G#~HjWLU^6Y(tCFWw!o;{8w;98UuJJ_Se%*;##2L~g``)34&hJcreG)g=u zf&V+VSw&b4dQ_j&BRJu0uHf@4x>=aT~PtmfYjuo`s zk%&}ASIPt{2a!6rnrQU2Ff3C7%A4ch=@*JahYl^Ka~2zzK&4zR&n+k@!2Nq2*qZnk zXthDc1QZBDpWia?j#{$qZVPD5HU0)!ReM12>cRMRaHT!(=Aq@m>wTO<6hI$DHwdXY`6$6kfXdmVLF)u&;$k$--3{5f{rbJgyaGDC%@u*`^UniGL!%W>u0C#bEg!inDu7wi_DCd zk)9|*t@;jsHjU%gMkA`v8y=Pk_6#;pYzsX@9DCfEkR8W@r=^C88*qHxu-|A4mjq=b zu0+~PRwSoNvFdr?^0_IyM0vv`Oct?++I>shBUqL8!tot38&C3K62!70;knSXSTAIz zs%9n5*H2;R{$ZG{V#RbO9~w{kWfVX(@g$+0mPkmFq3nnbwe{od;Ka+`~Uy|002ov JPDHLkV1jAk{MG;f literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/Thumbs.db b/ST2-Project-master/src/Data/Thumbs.db new file mode 100644 index 0000000000000000000000000000000000000000..a436d7399380c9f3b862016edf531a4069c7a432 GIT binary patch literal 63488 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 p;ucQI2jq}A{ddBDU-W!I*PrG2{{flT=z0JE literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/US-dollar-icon.png b/ST2-Project-master/src/Data/US-dollar-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..cd557ee99185d69bb490325badca275391787a23 GIT binary patch literal 1362 zcmV-Y1+DstP)A=2D`=Bq6CY@rR)evoAmW1pwOSj)A5}>t zU}&@nX-Q1fwvlS0Es6L@6-Zix6v|;y+GwymT6!GZb8mkB_HLoj07v$~NoIF$?l<4x zXMZ#Eo1sKOIq-E1O~{CRLd6@af%rV4&r!WE#oDPviz*p(xILDxTOT(>2*h(#MMUOk zA08SjIJ|WjRvnwdEHUVkkJ;T;Dm#<}Td+QbRWF-OW7YZnQ%RFT zxF*>(?HW!lOB?)GF~BRwqi9B+sg2{+TfM$plC9+YG(Mig_Xu{FAn<+C7Ceq>N2#nS za0Vud&cgEaYu_sdC_?~CUi5$n_7vF`DCIvVgx>?;8Npzf0`ovR@VOZ+4x-UJ(xl*G zxCTBh=QYbeHpKv?%~3RUllCXdk$iL_1sB593Ct_nn!L>R0``T=DjnE<7{f0GBpaRI zMHu<@b<6N%uqh6@2I_j_$~lhK-?pVBO8)?vaP$%e9@&cP(W+v$;0~}k9Jk2+?7x>0)7fzlXyAfNBw?CZX=$9m3P;;Xg6;og$<_ZQRIZjOs zx`YAy^jOAQxxXzMg`fZj&!?nwJb4wHQ@}`V?L&i;6|G5}@or%hBd|sW=)&5F^%LSx zPX62oI&~EDcwOd04|ZQs1W@&38ZW5GAetovf(xe@BhTWtMBii-zjg+o1D~5wtPa~1 z@>&Is3JiQ?V{Lxl?}`8_+wY6uc{+i5oE&LspYOuQNe%&Uw0{alcw6WC{*wFT$^2KgU7 z+OK>KRGiD)j`{ZtHu)vYU;!-=2_9=G>}_94KPbT7(-tb|_~$VbH((_6bH>cP@BBJx zPF#2(mVwAl9Np0ydLG!_Vxd}-DiO^qab};!8D6`qgW>90Cmd8bA#(Ew>B4p2(@w=bF#vfB-Zr_(L_pRJnuuv&JmPPf^>LHwxczGAJ zPmg&DzIdr;^>4*e+3}&7MyKkF5TF`=dN2aj%{wo2DbZ2{AeEBV+!zE%!zM$3J_N8S z(Fp|rFCbJWPr(fYxcI*Tlzg>Ojf?PpT!jAIfDv%utG{{YMenKs?ENO2$72|CKaIpu z>IIE};1vmMcnsY9w5WUKE+nPjWoglQ6o#CG#mB;Ir<4&Wj5j^r;|dv|{A?zVxBUp& zd@*~NuLnQ_9QMY-Uf)vs!Owy=3r{&b4d=UKByjhj@^1-%5qigY!GP5l^eqYSA35aw UFf?;u$p8QV07*qoM6N<$f<{9 literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/add.png b/ST2-Project-master/src/Data/add.png new file mode 100644 index 0000000000000000000000000000000000000000..23d5bed776023cee0402e7c0b1649d57704e36d3 GIT binary patch literal 845 zcmV-T1G4;yP)|8WvWN;ij47sw?j7x|_Q?^be&3;f({(`?mg#x_uO;8OYpDlu%$EA zuI)_08kf3~5Dg=PhA~gC`Z^j=n`pc{F_|RbG;;=ff73Dh!F}Z_$ypIYvPFd)CkRH8 zFyS|%$E|674QDu1^om z4GRUdj@Jnc>8AE0x1B{bB>{*sgK2u=tYCmbPggZiClKOvf8L1Mc>^Ueqwlh>BOZwD zULZKQ<^0mts}}=$(CartQV3YWp={MNy}cH11r$v{jFOCmID|zO@7e(0U2iENX=Zoh zdqYWPs)R2-D`K>R1zT#_fa=^%9XAc{#FW^thTMNd>FUGgcaDkycR~r z0*-aUZOXa`9)tk2x67Y+FPAjnZVL=n#> zu3=(+9KBy0`0;ciK$fj#+;uPQB_I8E_=Vpypih@;Uyp`uE&B5G+cFGC1{PHlj<6W= zS`fYFY15za#6x?lbsdLZJ{6kwE6L?phe!F%I z+R$Fnl(x$&CBqZ7>xuLdc(S!g$4B2)LxiB?XpkT@#XxEBw1XG-{E>2I)@D;z{)O~B zo)&%;Y?xJ9D8FjJasZ=fh|j2)3u;gve;dR|q;OHnzb)OmjBRvPr4=V{w2_c(#EhJz z3nwlCl1SzJDWWMa$6FDKo&5VVC0d~|m964j)&k-*X3JE*Qa~D$hiALAh`ey8p2Xyz X@8?yrXY&hd00000NkvXXu0mjf$sm%K literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/bang.jpg b/ST2-Project-master/src/Data/bang.jpg new file mode 100644 index 0000000000000000000000000000000000000000..678de880bbbec90d581bd97ba8234e9d845e8b4f GIT binary patch literal 1815 zcmV+y2k7|!*#F=F5K2Z#MgRc;000310RRC1+W>?B2?hoa5D*m*5)=>=6%P*(6c82< z5DyO!4G$C)6%-W^5)v02CLk9XBN-AEA3Go;Gbt`OEEOIxHZUqdCM-BL0SO8U4h#(% z4-XnOAs-<%DJ(TFEh;HBFex!KH7PGCEG#T6DJ(23DK9T7EG{W8EHEiGEG#T6EG;Z4 zEG{lDF8{y)5eNWg0A>RLA^-vr0Rs^M|HJ?s000350|5X40000000000000971qT5F z1_=Me06h=@0RsX82m=KK2?YQE0000100IL95d|Rz2NE$sQDK1-GI3I3k)g37LXy!n zLsN2ef|H`b6c!gFCI7?#8vy_U0|5a60000000000000050RjUD1P1@a04fmx0s#X8 z1p@>F00000000000RjUA5fU*46CpuiB2l4%k-^a;GqL~L01N{G00I#M5dc2`yikN7 z0SOw)$l+t9kD&3veig;nI7Q5&2-4?Hi$(eYhgeiy9+$t=nV~uA=Ua>5l|l5J49NW(ejA%BsKG^;BnX4ylou+`}>2 ziTyLn;ybC`9o9=Kn`f2h2oS~HPu|8Y(9Z`buth0$M9l{WW2H=Dt00|1(*x`-R z$l%sS(&xDDYeHRATG`TPPdjkvkJ)3J<5>CTb+%Y~G!T7HMJX9osmqQ;>ahuNsmzjX zGL9Gj0M!^aGdO+c_4;1JiCr~5%NiKK8rF+6G*|)9C~6iqDBBx%F`y2-&vTk|DioeH z@zw513D&|@9?4eXWrV7G4=7k>I;w8_4@|2bI%(r1-zu~xmxg0`X6Z+n9fziMAB^E} z)yJ_Yy|1$2ZMe@ipYge1&a^cPQBI`R8K#G6bhJ|pI|<-OgRtoiOUBOIF!rH*}LZ?>yda;(jXS*3DUu43H1jz9{<_ z0)9RyhV4j^`-1sO{q&oK57y=tL8YTl=CW7dSKbV4~IVL5cB?Z{1XkC zDkV{@nJgwtwH*#L2fiZF@+RIg)zcwQ42jytadCS-hFv;I)d{q-W}7~A(REolbCZOe zUv7h{neN8}#jg4;b3rkqNnI1~X1s{xociu%@-5tj>^+v73G*^U?a z5~xNMc#1Dq@)Fb)b{i+Rz#`vF`WMi1& z&8`F=kzQxS@aNM{BoFgLBbs{KbGwTk>(k1w*8YhX0bdZ!fHt53nPBqC+i~e`O39u( zx?16t*sECN<_RoQCb=rtD@iFV3aM0;8nLS#;?w&Q?2#_nRBSU{E+k2(O~v7zg3k6A zG*wz}qxkUrk9<^=vsffNRNiUsuR@l&csx9BiYrT5Vfv-fe*S>>rtfkb^pl*N9Fj3L zc~W{Mgqo_zq5|V=Io%o*LyEaIO`?VfjZ}iqlzofuYgHu1Hk7qbJ&|EW7;8gD-~b(v zwnCuf7Lvr*G_}AG;6Vp4LEZ}82m+1M{a-$b=6FGL4mYsOzPcd2fop&u zix6`JD%VRjMAwroAq*zu#(aePyp@v|SG3QnA7ZI%(!!*z@hl3enZ>h2_S=n#Y4jm6 z4@9FGZjUu8_ZF@4v^4T?9q z{A@rS)t#bRrDQ})R70FI3?5PHp|g5cla~Dv&+7A6E*ouo$7c7u_5S4?q+fY2-e zumgZtiYBxMv;Y9G10Vw3P;Ce(EinWk2rdXh5CDWB03}gN9D>hlTs`0lfUVW;9WG`T zf_#cj8hMTE4@g%tF#fwVDuu5=fq>q>eFWHLV`#0V;$bkU|iE1R)3m F|Jhf347mUR literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/clear.png b/ST2-Project-master/src/Data/clear.png new file mode 100644 index 0000000000000000000000000000000000000000..4715d038ba93712ab30f9ab1b5668cb6c489c19c GIT binary patch literal 524 zcmV+n0`vWeP)FcA3v@Bin>Nf-aZ#2AUyysFrQTTnp$@~g*J*G12|Q9`l-8_I3!*ne|Yzxr^; zFn-?sYa|)4I8&8Hm{0!6yVnor#mu{1g)B#$0qLr4ylkTLKYV$rmN5U}SCR}^S0lps z@4eLKA3wexj+uM66I~v!0Xsr8b%p&u&SPWYF}`>0gLPo@tK&o&u&Ik#L`al6yWD&;1^b6 z`1JNY11skfhBJF!#CYWYSc=zxB^4qnn$~jHxp;oC2nq@^aB?y*{QB{l;lZuP&t5$E zqwZV!`wLzJio^JsbTxSw>6-~h35)$_WM*P!c>Cfe!>*k_@=7NCn~W{IkPTpDWoBUK zs*_~JO@>P^2_^e+8h`Tsw|PoNqQ{sE=`q8q>t#5_>UyvP>tV!7?cvfK-n092;#EagWC8Ti2p$OU;qH*E2a literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/close.png b/ST2-Project-master/src/Data/close.png new file mode 100644 index 0000000000000000000000000000000000000000..7173b4e900f1afa29b76665b007fa2c0975402ac GIT binary patch literal 812 zcmV+{1JnG8P)Nkl*%=J3^|9P;U7ReSmr}X zWO%qWHZv1bSlAzQm%~9-K>;-t6)o>z-cfk`8!%YfTmfbAW^-a}##(eHBRWk(^(cC} z!Rvu;j|Zg`wU;hYRbAbD4`PeqqYp3#RxO5tnB>_QCr2|XEr+@bCo$TaP~93fr(*Pm zE!1DRimS4cn!-ZLJ)U#NV5RB@S{77H)oGJPq)wrGS`yavJ8(O`QNA|~SIZ}2b5Ap9 zR3x?6i)q-k8+XlX-q>tiM_`yTL5R%rIouyDG{K0|9DsXTIx{l&()rCsd-DedM~vfD zNfB@I)?jJ*j^n+PCNG?U1!@>fJOIyz28oK3!EY$OpZ4*2%*)>C6YxdZEvoj+C)&?V zS0gw?#pZT64;e}Xj23@iS^^3$ifjr*ID2yS?a{gFUyuoV(} zT`+8f%QIyj%>tpDbBW8@$4A-RcySS?0dDj$*+irs;`8HDo@XZ0^+X!+(zsTV>a%e; z%sK(3;+Vl3su-EJ8e7F#foW9Lc7c!-~?%)bO)sLh@O4ZIv_;=>mb`9S~_KuM?#`>5)_xf z+#tN3J5Y2G*13Ih{&ksT1%$!$B~l=UBuGYr>MDRIQD9O8&XoW(KzDC>`Qutc$W0T1_ zq1EEl+}!mH(6I<$fJ;3VOZUFkRw^e+_&6|t zpSuu?b!34Xd4SFZ#JtVTTFz!ukITkl2>JauDF~za1zv+;$7Z)1jK!kHrAP$rK3_Tj zSPEA-bkS_Sf5PcxX`Y{lBog=#2&n!RmkW%^r22{|qBj_nZ^q+oL_R7mqWd(@51w~8 zGzEwv2ZX)vaiftrj zv;yy58VvU8y1FHSFXQ9bBM9N|z&0Y2D*;Sv33-s?92={u08;HGM!GXLJ&gmB6q+HK zl9@y?z*GYa`&oADI;#~F!>E&TCZmq5Mx&0oY!;tpXW^FR_fx>mJVXWPfZJm*tP0Qrp64vv>C_XCqL7khG>PK3 zVW3{EEHL8Z`3gPDk~DG%rc!8>a-`e=k_6O_T(HU+ZHY5N5 N002ovPDHLkV1kx8Lt6j< literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/close32.png b/ST2-Project-master/src/Data/close32.png new file mode 100644 index 0000000000000000000000000000000000000000..50961eccfd3d7ca19f30122a5432e2a7e92092e0 GIT binary patch literal 1382 zcmV-s1)2JZP)R*!&vV{$&U;=Y z{Le+Yl?8YZpAsp=Mbr_w#Kdd_i1v~MU{g9Phk$neWDu9!Bwt8WzXZfo zvC;$_=FfA4&0PUSl%GptL=hhmN8J}8lfOdp*H~#Jo+tiLy!o;_0t!f)U&6lm+1VJo zejTG{&&ndc0sgd$Xx1Q)739wX(XX>Iylfe~qN31RS}H`?I)Oqqzv)WAJK?~)T)7mV zm4%??%VD$G(0%+k%oMSg1HRK1A(KBr@~y0Rl00<%dPtIlzB6agP*EX^Fw;J}-&Yf` zSq~H!vn_eW3h2|*CwnNO*J#AG+FE?V&+>nZkjWn<`Kzo1rKTb{Gn1Ak&09{NM%}4X zc#+mDzzdL%)}(+SqK%srwwlTV)6%9*c8IW?Jc;&m=dh2TMn%LbyN#-c?JGAVCqut- zrRx0tni^Emle`ji1m+Wcj!|K(bbJW-Ka!CFpSU>96E;92ZT0oCCn%y*w5@fI-1>oAW^=BYAQ>44H5K;TC1y(f@2N0kQ%VZFg$POIqR^eg=g;HH#f$Rioe2r>UAk0r z>?p|(*VTa@?%~QGWNVGuA#{{`i3(mL!xpZ}J3d~0Ni;li;euTCS+Yc(oMp7J5eMik zUSktKvxr}&_G<;AyNSwNvA2sBDW15AB38b)wN*qQaaPt6zd4U_^%mSkoY>66vOOjS z-m$Tot5kJ+b2E0fw~M>h!Im||?`lJ5vM8=f)l+;}K43)iUc7i_5rVv>1#dHgeyKcQ ztBE$P;qEMH15vhze>NHn@ZgrXDid`1F_Q^-%I8CngQs?xNq~5YE1v|yMTDD6FX*D8 zTu!iZ@bozL}U_SbiEW7<`%i5*vw{_xfS9K-mlz$A>wCu1jyw1c5;1aD5Q`ObrP#p zF{0C{_xJR`(%p^ESl^`~!dZY!zLVr4eenwphNRbP_}PjclS!_I&_mD?VX7iI8(TKA@;@ z7Lda*bL2+`nn>YxHA5ut=Pn1K9lR1?-oir~nP;+i4z3>17RSWP8 zr(0 z25r|Mr literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/db.png b/ST2-Project-master/src/Data/db.png new file mode 100644 index 0000000000000000000000000000000000000000..d412f4552f987db13de34570a68ff64f6ec0adcb GIT binary patch literal 27002 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 TO>IyS-KVc@s8w~#A@Y9#ot>S2 literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/done.png b/ST2-Project-master/src/Data/done.png new file mode 100644 index 0000000000000000000000000000000000000000..069a1e125b07c90d1d4ece4b722bafbdbc907571 GIT binary patch literal 923 zcmV;M17!S(P)XZG{rP+(-oD_{_s)7N-Ky$)cQjVMo_5*5qzTHFJIJR z{bTWk(8!`7D5w-$D7HVWRZJ>r&1TayZnoLoWIOws*`1w-cav6&esGvO_ug~n+;7e$ zxUL8bq;?0CjrWC~45r-o(y0Nq3&b5Ij#A4@bz2i#S zdq|WxpWx!?B0!yLr?Iwy14b2r3&64F5r}XEijw~OvTK2lY*74}*&{+7Cthm`hF@%&5gu+W; z3BhVd!$rM{S*?QNs@`>h+LCGIzN_xMbgc3-;r%S`KHUFfu-~=ohKLVaBpI8<9>l%7 zz%y|a^{;WExrnOOi(7+_;jPpAQ7%_dI%gc8`mk^piH}OkEeCoE{-ldZh5gtj#i&R> zlD=o*VK*ROe-D4P8@M_03UsrImrp*7e7S(iT*tnUSxJzAy`g)CAC3IrOK{i_kuW66 z*eb@L2;0Fj0jS0bQvUtWtSa95<8jQ)=U}xR)bb{>->ADuYEO7<=%H{%jIroTB=Ewf z&ylTXV47zkx;9}r^dfXhKAfAtOd*R#(SlCX}+jm*Y8speGu^ zOX-i06o;w(WgN_oW1+eLqiMsa+ptZ*wj8X^c8r;$r6^%Ig7h=JlkpMHBgBn0^;kHJ zr*C>4ncVwW)GpB9`&cU2JtH`P zrGhRm1I|NeL&-W>vr*2r>*tP^w=bQp&68_+Ozn~P_U-V06;ASQk!FMES-3rv?4^O` z>DQ@?R?C9AWOPoxk$lw=Mb9|M=jfawZQTgCHw z{nVRFla)VPUsB3>iZa1}i$D%-6rP9;iw_3-+C&S!9D;0002ovPDHLkV1kxk&+Y&K literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/done1.png b/ST2-Project-master/src/Data/done1.png new file mode 100644 index 0000000000000000000000000000000000000000..c4d5504e9e56d95b9bcad7fc93d595472d6f7db3 GIT binary patch literal 697 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�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 G1OPh@6d;8F literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/fp2.png b/ST2-Project-master/src/Data/fp2.png new file mode 100644 index 0000000000000000000000000000000000000000..342af016493a47e72a3410d9457f97c7067d0303 GIT binary patch literal 50412 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 Z1JLuPG5Tj|>@xuJBQLEYRVQH@@_+3kl;r>b literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/home-icon.png b/ST2-Project-master/src/Data/home-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ae2db7621ff6da3e0acaeddf6a35e266592ecf6b GIT binary patch literal 2069 zcmV+w2 zdvH|M9ml_W_x;M|9g=mMgjgUDFd#6 zTan=prPB${Foo$f)PgNloKi3a0s*3xcS!SKlTG%$ckiR$bCOarYRFhTJ7>=Bz31HD z=lss^_x;_q;5IbVH0N^o8oQVMBlZLAZ5E3qd8@US+XUd}P{$r(pE3j@jK4^TE1x^S zO(5Ul5M&=abV)$GOo+DI4$#rjQDL=OSGnEpJQ~=Nlaq6q02RD-5BmgmCwmF|Dc*ni zwgS+2t<&jzFE=;W$A=@6$*9R>a!p}j;SNGLIAuAzW5^Rx&Ux{+0d#hDF7o+&fAo62 zuHK$boOtg57Cih7D2jquEY_Hpm-qGWJ~-LDdCeH?Ao?gE-J4qM?t^?Q`gYlH-P?V68+&YCf~CNk3aV_i1}B~pTkSvU;fzuM3gha z57Bs~rfJyq^B>{Nu|vo&EW+5am4n7LRqj^Tb%X~J2uGp_U+;t0mxHID-+|IlCE~Fd z+Ap7fp{92FPeu*U)z!6*F5lvExzKs_5`MjL1v04wcU^(9F~!Ks@xm~4=rnE`n*0ui zT`ZYKFFn!G(StPSH!NF)`bVFV&x}MO?`N~wWx-(Z@}~lbT{FFY&-9vR7zW;I+>S&0 z-hj*PL3w!y!7)Yfcsvju`J|?$yz4XSl&K^X1!?>fW8c%O}4PLJg0|NtKx;{yW zH$DcyT`%OW_tWjJ{=Vz@&Bm1oceW$HC?6B_ik&R+`p zqH%n5{t}Y00o2ZEz+-DRf$5BBG`gRn^bTPWZ(Q%{ zgogpTdh_cj4SoUfcsyn4>FF`Aoj-%dUv5BFRkhM!nJrjS0EbQCVg(KwxA8%yX-ELO zC55b^V8fQLO2eU=dO5Cn=-YD4nl3C{$a2870>Vz6P^@+ts9nsEYwg#Vx>-E<&1W%X z&SF@;_sHxYnp$FurW@O>3RX{@HWd!5Rl42baB{ItF3zeM?AzM}D}UUgMrHX!V7kXOM)1tiL+-~IalAz>(4nnfs+>MwkR4CDHbh4!{;xU z51-cye~w=+<~bqDfJ-IgNGB5nNmKPS3FdTrVYQ2*XUdP7PDAC~WITb4N{yg8ayg%4 zqbJ=^c#JK_Tcj}2mMGi4VQDA;?rT`gl=095PH9|Y)MnBtsRLqE=?MWK?uo#(ad*NC z!kEf95>lzzU;kCM8NVQ;sUh02Hnl@+UUnx2y_8tIec z)e9GH%ncOg%W)vwhg-Fdt}tATDUIGpq*5aT)YUJRlWmMhGT_x6jZg^m-=^yZti1Q7 z`=)cpI{xzZ;adWTR$W~sgLi8EyRC9?EcV*uz@?)sBX_HPi%^dfYrP4HrK= zi`KTQg8)27ahBrEM*!5#oFMc2;9viaBEJQyX2H76%Wga?G_ek=?tc<~zX$zs9n}-7 zWSxjcV9dy+3YAJN5CzKVa!Y`DcaN8A4jn#*e76Brw_yF& z`=MA0hXJ^pRwPs#swaJs9?%iH6+lhxG$i`3!_M>1G7FON({Q`##$K-w5IOHscO3Jk zPvDL;ynpoMsA6E!lxm)ij{ZnwWPrk=Lbzz%PAL|x`NRi&2gsMkg$L|RQ3)`kTBaH0 zTLz}k1)1xt9io0HOigi3bkRg23V?7=&&U7;EWaM7jiptQD%SkZvnVRexd9-Gi2ztI zd$JUrxBfi3EU0goPdEkbEYBkX1oCoO3m^eRJve&oGzxOv(zu9&Kz^|Vm^F1A46bQA zesoj-)pyTg8k*>AZ~tTf*5|s7%jf(pR5cz&#ifW|Z-=fXaOB7dMbkOQkgAv231y6&CRVeTr(;^eh%$F@D|*u#SDI$00000NkvXXu0mjf5f=C8 literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/house-icon.png b/ST2-Project-master/src/Data/house-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b7ed6cc42525759684f96a68ab80ba059e3bec94 GIT binary patch literal 775 zcmV+i1Ni)jP)?_( zO2U-+3M~m;KG;a+hfI7eL7RK%Ms8zwx4ZdTkkB6v_kZs_=lssO+&_W;Si?YEJWyf= z-W~;JLf;WPi9P{QDxla6oM&-@eMGV_nShh00q2eemcqhZQm3n1bGx(s0LLFf@~^w- zx`F)a_1kTOmns!iAd%ersZi7(G@Hpatrqmg*Z_$RA+y(qvB1qOgVD@PNi;=imkRPT zbk zE-fxTw{7sbr^BT;%nBnT!XYPyurQ*9NR|bKsursjD-LKfArJ_HAAn5?ovu?_R$d;O zpu=S{7=)fM36xwt*2Z7Mvo96O3oj5JE&}8Cvswle+dqKr?jC7nqFjUx(#I#U)dOTCJ9sm6eXktWX@V~cUIpR2EMUR4!DRN!N_!-R2&0%D8Y_zfQPHHfLP$-O2sgBj;=H}MOWJjWT zmO&8Tnm`>&L1OtUI9*OQ0SSl0fyv1qbZ_s+=DxoE+jhJC*I&OfpU)E|CnsOb&d$CO zClSjcIX0+HRbzgB4vULR&=2X2ZEYW}&6~|bKA(@-@i1|@T%J;ybT&()sZ%5=R4%7$ z2q2bFS55!`002ovPDHLk FV1j*gXS@Ia literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/loading.gif b/ST2-Project-master/src/Data/loading.gif new file mode 100644 index 0000000000000000000000000000000000000000..0a324429920d7bedfa660f4ab185492b452ed2a9 GIT binary patch literal 7294 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 Dp_<7e literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/money-icon (1).png b/ST2-Project-master/src/Data/money-icon (1).png new file mode 100644 index 0000000000000000000000000000000000000000..6cd570a3808188a9f0338eabac4dec8c7731bc25 GIT binary patch literal 840 zcmV-O1GoH%P)>@tq!1Kjr@6TLUY$3@^wTL;vd*p%e!&%tY1AkyE(480$LHQs1aAT? z)&L3>@aQ!WWS2uiL4NV^KfuY8$E@WN+3@+C3vhCChWW~wq1~#%(<&~wL4fAV3QX$s zu%|5tlQMx*LSUI|QU?FBAd`@NIg2A|y4S+vXToDM3-S&r8XFp+d*6X`oR`pkH%6=E z8=_cx=q*e^cQ?VbT7&pPQ{AqRIA4NtWz5UIB0Rh-#GGSb3{5S%3g zW~(6?04VAq=vj0y*i=A0hD-cmtathi%tk>z-&&*54$q!rVq|d`!FM$fLFlQJUP9QJ+DX7d8&jou>QX)uHzEcWEl}c>2Y{H&s3Tmnp2x9B;>^0!N z&k?rvw&2BoSL9Z-(-z&t%E}^FGcvhc@lxzzJXKC&N6_Hl$iU}s6HqBe@uZ6Q@&0qG zop+mC<^TK(O?PWeNF-8-a%e=O9cs>9W2Cm7oHEr?Y`v?lRkt;@bx8VW^L_!n#Vh6b SxKE$}00003#U-%>h*X*K(HF$kTIwdKlJ$# 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 tyn@pMhm|Da8S_vqT^}asBTSEbJdYf5 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 M07*qoM6N<$g1wkng#Z8m literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/search-icon (2).png b/ST2-Project-master/src/Data/search-icon (2).png new file mode 100644 index 0000000000000000000000000000000000000000..c4cccb07e4236bc468c1aecda543cc5a326fe26f GIT binary patch literal 1875 zcmV-Z2dwysP)AIBrO=dw5J6g1LKMU!@KmWPJfR@OQX#c@ zKxw2(QPt8uR7D~|k!aM?=7CC86x%33u*c)rV~=OOb7$^scbTRCa}rR55*Xyr9_h#< z>)d;O=llNO|2tPl|L37=cj2MOjvUie?SQJPeZ^uSpBIF)@%Z|M{~5rMqfclZ9UYz7 zY?hkM1|>E(KaH=iMfUB#-zzJ!yH>4ga;^4xEVfeoUH~3^=;8Q~W5gAWE|I3Hl*?xR zIzF*8-J$PzQI=(DwwhFuBrTiC97?5C4cAgc&^;LXYa2U z78j^oERrY+R4SFc1yNkz7Qo*92To(t=j!!3)iunzMgxOGmMUd=SL9X z>z{nGNad15`CN{qlC*t*$kg;1$H>UzC_8F28dPu8sjI7tL&Rb+Qso*uDVfdY=KT-; zKz}1ZrCRku3)=$-1Vhh4;lKC#d{n7aD92umzdCB61e?frg=)1Lhq`aye!39=kvrGX z*?G3rZ2oP1eeGL8ZVKS_1)f9%-kY2Z^A+psaf0)ZUZ;nUY5+n$bHWQm1 zpp2+=c6MHiTD{)F`~ttvwOY-S$*rxcZ3FoHfkUG%_qmywU8L9RDF&6NQz`t`k=bYh zOrDHJBbm%5VrgP2Vw>`fuWN?sM}t=Cm=N-38yoR(+W#J34^)vRHW;+3Dm)^hC{nRdxQGbOeHRh_a@6ViRVXyZ z-u4whI2`7iEiTMcUtb?NT~1PDg^H2{QA*fUBiJ<=pbb?~pq(tCB3LwDgK@pmHo#t|*y)-2W&EEB5#925BC+{u+W=mF;3==y_a{saK-46&$wcvZ zoOQf^=d#(o@Bxd(YI_=$v9Gt+=&H%`ZkUt4r>BRkRtv9)tE;Po_MCuu?S~fH_W`fZ z|59jd{4JOfE#uVeRDEVMYd~nXsR|%Ma6A>|ra>%<&1y4S2L>}9w_CTlxxvennO317 zG7nh7Wo3eHF>VF$&YhFt7j1SsMWa#VQ>8lqAixci$t@BE;inMRGM37iRin|gYjSG( z{V<#}z7gk|=rI@w=EG8k{v_S;odDp3A52CfkM;Lkh+Q@mn2#B*$0~sXZOs#EzvGIw2!VMoV;nXWDF*Kek z*FddWVJTqs{Vu|K7E9BZarA@NAj+qm=nK)6C{8Vr4LV?zu?5d))HT15%eAk8$;kAF z;Yj3Qx1pPsqszScFn}hskjZ3lvcw4hu)1C|noPxE$LPgKByyLn;8L{D!oZ zNU*Bd2P^)#ZGhRi-FpIo;Gdy#@8!#vxu^yQ>^Moi7L6|dMa&DYpcf=qY+>1*W^-R@ zYI>%-r?-a#F!Sn%Raej-SOlbE@u_OH@*afSuWAmsKWOc3Cl_Q!+zJXVR=8ok0&di4;nBq;g%n%p%L%25@`4FORxh zZ%$0?Bi@`4ZsGznjUw$TrZ>ib}ub0>l^5vcDs#fpp1*@2e?7M zfoLq@<3;=Wv$qA{E09MI_oMFzaEa-atJPvo$i=a-f@)GA#OBSO`7g_1dt(UAmQVly N002ovPDHLkV1jyep4R{X literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/search-icon.png b/ST2-Project-master/src/Data/search-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b6f49f6d1ed122aad52117d51e6abeb26ddb2ad3 GIT binary patch literal 1327 zcmV+~1 zdrVtp6u{5DeE|hZDFuoOWPns2gKP~JN`X-}Fvc+miW5N-XEKcjW|kQrf6c#UoF@LE zE}9Ux$WYugFv_dU0_}i+B)rDlV8EydjIov?GN7&JD|gEn6eyIFoZI_2x99hrbH4L^ zmx2xCQ05^&3aCV@)w+kGC@$Wbp=r9uX0vtG)zw+R1wyTNGcz+&&g1bul>|vLg+d`) z;Nt^aE(hk!b6_-?;NJA~#MI=}IehzUZB4D&WdIo&8Eh7d^+m+95${LG#L#hj;~+dN z41@>(6a`C5OE5k@4%Y{+LvLRn^mg|cOeWLOnwlEjjsa9E6`RZDUP^dA;jluX0OFjY zsrBEo0hrBZ&^9+gTWi~bVQefHA!>F6ka6(fmkLGFi30}?Ku}Q7mR`o%fVTE__~Yu; zxrvEMSzT@IU)usmSEVONrP9`Pm5L4t4%r|{YacCJEYR863F>Nfle)S(ZCe0Xbicop zeK`9$snniphhcI+WSTWWb8`#yba$sTYBViQ0i>j+`h-V>Phsde0)b#N*41YZPp~HL z7{=hYUoV~0Xf(&20#GWIFQlZUsv{$%z~OK(08fn2;U%@|=G@#I)T-6}6~9!(I0cZH zm{^jR|H@Y$9(;TB3BZcdkFFhso($cFqsPXCY6ZPc|L>2brJha!$mQ}=1w}d+D$qVPt2Rapjl?mW;z9sq)<@7!NJ2va&tql4TA;eHPQ8Azcv#T zuxQ#|C)3l@P+nG6+}zakwNn7(fKfR0T4CWC(uAy51i%iryu6GcRiuu3qJb+T^?(gs4`+CtEVL~4PEG{nE9}?F#gt0QIq3q7-M~NUH zByBeaZb0>ws*?@%^=F-NzG_(5kYtfksWv+&hc6Ne?JFM{nIqw_+4e{c-5!Q(I-ON0 z^ncN4oT>Za`){{A1Jfi>qOGcMo*5 zcUUBnr)imNKaAcP`|hI;PrSQr03z5KLvdODCP6OG+P7auiN$`v<8tk}CN*KkjyF7v zqt@$;qa!1yMWUcTWB0~srzZb_V{gAj{aju?=;p>R{Ot56ZQBBPDA*rlnC}9SNTl@g z_TGab=g!a1&lruy9^4D4Sv2b>y0OY*ppuES;`p zQwVA^gRRQ(cS?GrqGF;O8|z_Td=&Kc_s*R&ag%K(T-Bu~ZT#MO9sc!-R~`>+)VmjV#+_V$kF^F6l=;c@_HA$A48 z8Him2*eb+M09dGOMp?{%kv2@)<`SbebRI7d_&9{v34j|a*?xI2>W)gjA2|#Zkp-1Q`3S)?8IAZEs50N1 znTd8)4bV(Pycow~RIce4n|E|>pUgot`# lQF8qJ{5nTRNB$;8{{z-@8UVSM+Z6x+002ovPDHLkV1i`Tb5sBT literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/silver-database-icon.jpg b/ST2-Project-master/src/Data/silver-database-icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..36fb8d3ab0d70cdced4a0eb55fdb3b5bb975e76f GIT binary patch literal 142981 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

i~L1FsgCK!GOd#5{VrNil-&qMyET7*`tlN)5wW zHGok;KP&&3h!;BH^-(;4V!O&=gs6X(apzZz-N~fhV5V(4J^ivrf~-@YYg$JA=D~8d z#W$H^9X90i4jg%)-w7L?;Uo8BlJz*RoB@Egud)DRxacNnWgLT}V8kOKEkL>F0nUq& zwq>D!y=q+L?d~PF5A=7&!&be?Xmq>4n{NB}xGTeN#?h-9(J#J%N$b5_>&SgjZb0=@ zd6aTGtA7)?k%{1p)PX)(_zj5gFR+y_2Wj0L5Qlv7R6Mx}mqS(LZ2_Rx_s<)6ekiTVpQ4RkhRJ6_qtjPAKqO^M((mLIZ=fu} ztEc$($BM{}VS6G&3-~(1FLhn0avU@-XoiurDT!H@M8LuZ3m~m?O0{KnjN>b&A=B^b zp1$z}R~lZT0UV>MZ}aC1CaVpTk|Sx;i$X@$QBanzNL(~;4`CzU>51nfbR4_|ELQ6Y zx^9IjDRqbV&l6y|8MfqYjGHYEf10htPfbTwt>w3E?2)nD4_L}GMlVKr_f;!CPTM(l z=84Idp*Pv{pb0g=3d@J5YRYGEI;iI%2i4O33po)TF1e-2QHlsxJok0Z8`s&!ZuOOZrnO+isRY4kRBd^f9D@;#MA zCOCXol6o(TdCgE3?4d;DIy~Tbf8(N$*BrBmgicPnhAj`7Y8Tgl1u5$aX+p7`A`WLF zQJa&NTR2H80?!h}VAY`LvMsi`7Y=`%_R2!WL=kYxPF*c`yVh|37#b)(mB}6VTBe5Y z8-vw`*ilwgxMyga;M4FV`9SD$6E0BMa;1XBQeSf3;E z+8t$;gACY^LaNSrcIJYn3C+r>SQQd-N3pYJGsJ_;(sruT<&WkfP2=9O@`DUaKGef@ zCH3iC{83vE#L1|b59a#-qsp}Gi?l*2jz;2AuqJk6lPH2T>~| zCb?P+`vb*aF=Rbm^nKH29Cd7m%$7|=DPVdnEBDRSK2@fQ1^crdz2XyaQdDyWEE07e zdC;lWrITiIJ~pPj&0YYQ%hPm z67@PT!#jRijiQCo_)|>A1k?}dYfkI_UHYA_Li>xiXg+g$bq2CKWD8pN&D10pgG@Lt z2f$U^v(JYPuq9^=RaBrLSz2wS57dZ7Q#`+K=5&f0JOpyv3Df<2)>A-pJc9F@c;-gR zvF|LH;yt7155FwJn{=Q>4Zhwzd-A4S2m3w@@+t)9!jVbPD7y%2QXASaT@_UAt_QR; zI5gA)9Q$~JgZeXAWl&06DgL{P{nE_FtN8M6B@>m9D+TJaVQS6X7P5#nCd{i?_)ky#y#V? zR3j>a#F+e71csdF3Y&YM8hfM6NxuA0APjQ2S-0|(XRmD=L7$ATr)ub*b>BtMezOVX zBTum#@c+`8}CK(f8PL z4P-JHFER;4@vDBRlW9+2%Tk$=@@wl>b5D3G`JgaW6ulxCSy;QM7%^_=CiO@pQ*UlO zSFun@%_|>h(GLIokHqN+DEohEOWr>i>w3aQbIMioY;YE}k`v_DPp6uX^Cr;I0#?x3 z>u%j(+N2&}bmZD@b=+9|Ij=7oeN#(ep2ymtbd-gxgQ@*hB?s?dij`DbWyIUH4wg%y zCJtpJL_oh~in4(W9nzRIL>%9~Z-Zlx3t5NYsDJXq)-dHKum&L_yWKOp?zjC=F61&0 zp*{46LsV!cR1OP((*gWosI)9$qyITQjGctB`t^X1*K_Oiuv{7$p@tA)2*-lf7weH_ zD(lJ6(FHK8G;2>CUBK%w1NG0Rh771C3z)t2cz!MAeZm9s%BId#ap^?$GySeVN8d z?+))*c~L>&^MQ2c7ag#uq2y5Y1SYr+|KLYJJ@zK(LQqlL4Cc33ybA0Jy7U-!ve_TB zuzRas zEetQ7M%Geha;9>Fn&|%19CCUwk&Tr6ugB}8 z-%`|7bgVTHvGcFTE_Rv=$!ZVqqrl92ciy@5obn{K%c#R5l1FDviE0ZapB^Pe2$fyi zgcBQ!MEpYFE$Zocc;^F8{s{zuKJY;#px&>uE{woWXB!V8BMvlxsl@~ke8may%t*vD zrAtUV_&0rh*m^v{lhD$IJozD#@5BG1Gl6uJfVqmb zCn}SGTcMC9q4?q69iy2_AYdS3{AIsJ=C^FRf~kl>Ut?X?j`$Z%MXI@L-I_+RKYoJb zOHjCy@$5Vo6iNu^UZC0B%Ul&DQ&$0=$0)$_=2+e&q6Xw><~v4GD;@G{yn1HuM<87L zznGOBn}ooq|2KA%3S58m7PEXL(=f$L$5cd4}#w( z;W#`OR6htVy83T;?KCoq$N>;Y)lY}wNyaLuw@$DGiZ|@3jNXD*qp;J<@*SreBqW4d zE~&4yX8}e-hwa=cD8U2+5(-m~H>*bEMndlr8s`8xNz~#_ZOYt+k7lJ_fM|i&&qSzQ z-94Oki_;BT1X1+ug+(%Yv?&dyrYPxn=NbYE(Jn`o5{dd5*0XT3m^4S4Xsj!cPXs{D zNMQ1=u4A?`dgn3FXJ|oW_l(4p39tH`1gn4DEhY=qhmIAJOpBynqZ2$jkwa1NQX}k`7$nr%PK@DGw10>rGT}fb+DJkf>?l>3(Mngybaw_?Id6=1h%jB>H+N4=4I$L%@y8B_ay`p^4=V8XG<3WdoG4 zefaNr{rF#{!0Y5H8YLYZnD>r>8PNQ|rXU=-Z_faEV)WfaEXMZ=mD*^JGZP*=G`>Y6 zL)40z;qI)~AWtwmL_=%Mmrmd||0={_fO?Cmo#J=Mk19{1LE1h8EiQQvz|QS<6j(mY zTqZO?r_-LLg>tpmx{(q&z|D?PBsh0mY zpTK|c9*`f3{&5NF(vjb0e8p-Rz_MU_s&iu7ZdhFXj#CQP8wtEdCPi)qY=wQb$aUo> z!Jf5Zs@=`I94jUosYEerH?xuK97;apYxt2=a+9$yV89Rz@+rIu7V*MYm;<%o2sF|b& zeSlR4;Nas5s{L1zfh9pmf@tx9>Hzwo;`P7vlK)Np`42Gg!5@Df_nI`tQHP64z-0Nkh!VG&tD?bz9jn#UYuk8_SoEq~`)7Qg^Zf9h=bYy~?|II9&NF>R zk~(JPaw$GIy?F7O)qXx868@! znIw#=t@dQXq@t}PW1|RGMO!p>m(A|tXdA&eD9&kC>(Gt2X7{@84-5>D7L~z4n|TBO z#^D-p(Pon7G?)f8@>gYvxU)72Rql8HWaEP!rEM z2Y8c%R#T|WWqtOB$Bn4NWi#=*fdQAz$vFp}S$LzxX`*eUmL;`jjm`C0bZR&i=VY~Z zoa9i#tRh(qXBBFL!pgI{&zU$#(yAhjYUi70TDzJwVYpFYrqA>FeW7DX$pIt_?(@0o8 zUx=w`1!W@mH@!L=x$zc(k*J1M6BZOVDF}ngKEP?s1nnSrmjgGd)C@|R)SSzrv0#jy zkX1pY zGtP{fBU0zSOpKoit~Z7V0k7nWfIy}wmIo*9IWW7nAXT!aYxmw`V}qXcaNXC-PDXSb zH4GD80jzfVV^stt(EAGE0D17VgqGn8kFL7?v~#r2skF&r-=%M}A6=1_v`%c}&5ZRQ zp0iD?GQL72X{9)xi+g~0TFV~G59wESnmweUS;?T+`qhvC9(&hOa%1oKB^Gk!nGAc= zWXfi2)3tYJkLaqIx~0P{v}R-?w~xsyk?xO;bqqTw6F%kLf(QTN@R;03cMdN2d0C-2 z1L2~NTMD22Kr}t^ix?~YK7XC_?um@PEw7JIMR}#$>yyMEUfII;T(HU`K6@(@SMbd0@LEG!+%Xc=dd)-pwah<#(_Z4?vfe|pi9hoNe z5z7A2G+nuAUXZl0dUWI?7LVfZm&u}g*$xq|9kfuoWBxU(%ZnFgXseq}$gd#%AB$Ir z5@hcLep3?LMFB%F9gsvel{JDNPQxaclwkP^|aPZa5ETkFVi3y;2Rn6`9Z%nJj zN_;+jSVF%!5jnnL8EK2I6pt^%Gvti>&I7a_FjOD z_-)$D5FQG#_>WwN5<=Ph(&7X~`d2sdM(9V>E)bLZX^6NX+01q2HZM`h+%l$EoB$=wet4tLUOyMI* zBG}Go6LTsjcLd@>LR%YqZ|?!0bSe1rEIxT8e)|*V5G3E2(?uqWJ9ib%7;2d9 ziSjK&(89TW*BAV>lo1A*x;rT>x#rX9Lk(4Wxq>=VS8y5`j*V^y7HDcHw}0yXTcRlz z{iCZ)L;SfH;{uDS<%Cj{y)>(lTrKqECboL970GKK3Vc=Uv4USmeO(jm2H&SFhhG*V zbo&Ai&87+ZVVnp)tyijWbHcf>|0X*WH-Zbr`m3+vTlm7v!TbkNY>kJJSo^4}W#PHw zzaNtu$@x7|ooT^kT!z=peFBs*WdFWy(f>uH!mn_#Sk;vC-DogGCAe@aeTav5xbbcT zCkp?#F45oY9c=_R2RvZ=;Cu(ojxs>%i5VC@{Y={(&Pxqmtl^_v}|0 zm!ynakm4RfVUnR|2ks>;Jo{od>%QP={-xZ~^2RZ@zZQr)u=wk_g6wV1;IKz~53b>~ zfn&T89X=FMeRpUmnH{Otr(M66Il|PJJ;q&=H{Hpc96!1`9HqkX;PZ(>0ql2wu4=AA zFSb>rXQXL>KQWWq5LrDuAWp30M_))$F-o?{{pFBo&ncD-+cRPw_KOCs>y{G@!rcH z9(;s1Et+Q(jKV1XbiXM#_eZe)uYWpzz>CK0;#VfYK-_}0UH#aXA}D4ggd*$*H+^^D zD?rRxx-My}a??2wy-Z%QsrfDH@(3Y;k--~3wWVY$5AZz`; zFA{-xX3pfn-v0W6*jt>}CeIGps^8Z(ZH#|A&XM5T9J?(#_tU9|c?Fv#I~#!&o%h5K z`ZaF*rPbS=ej>3}r7D5 zDEEA!$^asC?knwju}-3*M2pa2lQGyE70Bf~QY}UOFN%Ce=|~l_tONMk1>1||DctOn z&x-|N#rQ9?j-<>Jq3*k=5{U0*@XdvM&EOiyHwl0+#Gfp! z2SSVi2q_$5L`Gv#i>rYb=^e>I6+>xK4g666W6Kh{kvO|vg_WPxir8<1_W*d9tHhw# zQNS6}okjkd(i$CfO$#(+nSp~a4l-DFY0#NrfSxJvKjtWFH3>WL@?HZJ%84_;#Nmu& zg`sF15M*LIDx8KrwvC-Ca7_obnhLIoX|pQ(p|dQZABn?}K4(QJ1Kr#kBVa^nc2Tr$ zcd2Q2IM}t@kiN!P_?Fmp%&GA1$vA2)3u7u`Kw1e3f3j7CVwIs7lw{YESA@rb_-k^v z!D_th%xrgT@K;xO=T}7!O1^XGmR~vqM$AA2G36mMDo0{Mg3g%TFIWrQ#?%?dy@O_0 zkUSI$=QBOuWzO>ZZgJ+WdMr7H&Jj`YC>OGdL=y6AM`E7~7+Px~G7HCj$5ngtmGk@y zGv(6c)S5;4JHQ$^R+qDe-T1r*2{C#=(@;(-wjfTvD8h?2M@{y;$!-Lj7;mUT@tZ!|S4nI)ek$)`?I`Y+>up zzo={ISyg3`R#Vb!5+aTJj$PcBStresKpq%GS(vrwL>U+|2d%40t@E(&_b`h1I#KK( zfHE`1jU4Q}4(~M9UVkTy1#Yd}zMB&0O={zbQsjbT>I5F%jS41VdvjC2m*#)}xM%+p zNy8s?>>sI({YOl)8|>4VhQ3lr&x?ei@M%ScvJ=A8QG(xYZUTk{;Yd7K?SY=P&y;F@~*1YQ*H`n*oMm2)Qw%;#@3eQi8; zZqiY27ql9KlU#1=d6E6x(XJ5v2HGu$cV9+J)9mnS4k-mv)+jFJkgb@^OiGgEVqA_a va=~9}kN+n{K8ux}wM!~3!eSaG_|_aAuB6>gx#0Mjtz9L>1C!(e0hs(hBq7t{ literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/Data/update.png b/ST2-Project-master/src/Data/update.png new file mode 100644 index 0000000000000000000000000000000000000000..a882f1bd50e7eb16a07059ba3dd7a1cf326b3461 GIT binary patch literal 771 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 literal 0 HcmV?d00001 diff --git a/ST2-Project-master/src/DataBase_connect.java b/ST2-Project-master/src/DataBase_connect.java new file mode 100644 index 0000000..abd0aea --- /dev/null +++ b/ST2-Project-master/src/DataBase_connect.java @@ -0,0 +1,42 @@ + +import com.mysql.jdbc.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + + +public class DataBase_connect { + + private static String url; + + //public static Connection main(String args[ ]) + public Connection Open() + { + String host = "jdbc:mysql://localhost:3306/"; + String dbName = "projectDatabase"; + String username = "root"; + String password = ""; + url =host +dbName +"?user="+username+"&password="+ password; + + try{ + Class.forName("com.mysql.jdbc.Driver"); + Connection conn =(Connection) DriverManager.getConnection(url); + System.out.println("Succeed!"); + return conn; + } + catch(ClassNotFoundException ex){ + System.out.println("Class not found!"); + } + catch(SQLException ex){ + System.out.println("SQL exception!"); + } + + return null; + } + + public void db_Cloase(Connection con) throws SQLException + { + con.close(); + return ; + } + +} diff --git a/ST2-Project-master/src/Delivery.form b/ST2-Project-master/src/Delivery.form new file mode 100644 index 0000000..9524310 --- /dev/null +++ b/ST2-Project-master/src/Delivery.form @@ -0,0 +1,764 @@ + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ diff --git a/ST2-Project-master/src/Delivery.java b/ST2-Project-master/src/Delivery.java new file mode 100644 index 0000000..9da915c --- /dev/null +++ b/ST2-Project-master/src/Delivery.java @@ -0,0 +1,1101 @@ + +import com.mysql.jdbc.Connection; +import com.mysql.jdbc.PreparedStatement; +import com.mysql.jdbc.Statement; +import com.sun.java.swing.plaf.windows.WindowsTreeUI.CollapsedIcon; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.JOptionPane; +import javax.swing.JTable; +import javax.swing.JTextField; +import javax.swing.UIManager; +import net.proteanit.sql.DbUtils; + +public class Delivery extends javax.swing.JFrame { + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + /** Creates new form StockEntry */ + public Delivery() { + initComponents(); + update_table(); + } + + private void update_table() { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String sql="select * from delivery_table"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + delivery_table.setModel(DbUtils.resultSetToTableModel(rs)); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close(); + System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + } + + /** This method is called from within the constructor to + * initialize the form. + * WARNING: Do NOT modify this code. The content of this method is + * always regenerated by the Form Editor. + */ + + // //GEN-BEGIN:initComponents + private void initComponents() { + + jScrollPane1 = new javax.swing.JScrollPane(); + jScrollPane2 = new javax.swing.JScrollPane(); + delivery_table = new javax.swing.JTable(); + jPanel3 = new javax.swing.JPanel(); + jPanel1 = new javax.swing.JPanel(); + jLabel5 = new javax.swing.JLabel(); + jLabel6 = new javax.swing.JLabel(); + jLabel7 = new javax.swing.JLabel(); + jLabel8 = new javax.swing.JLabel(); + jLabel9 = new javax.swing.JLabel(); + txt_length = new javax.swing.JTextField(); + txt_width = new javax.swing.JTextField(); + txt_height = new javax.swing.JTextField(); + txt_rate = new javax.swing.JTextField(); + txt_amount = new javax.swing.JTextField(); + txt_remark = new javax.swing.JTextField(); + jLabel16 = new javax.swing.JLabel(); + jPanel2 = new javax.swing.JPanel(); + jLabel10 = new javax.swing.JLabel(); + jLabel11 = new javax.swing.JLabel(); + jLabel12 = new javax.swing.JLabel(); + jLabel13 = new javax.swing.JLabel(); + jLabel14 = new javax.swing.JLabel(); + txt_name = new javax.swing.JTextField(); + txt_truck = new javax.swing.JTextField(); + txt_description = new javax.swing.JTextField(); + txt_place = new javax.swing.JTextField(); + txt_id = new javax.swing.JTextField(); + jLabel15 = new javax.swing.JLabel(); + txt_date = new com.toedter.calendar.JDateChooser(); + jLabel1 = new javax.swing.JLabel(); + jSeparator1 = new javax.swing.JSeparator(); + jPanel4 = new javax.swing.JPanel(); + jButton4 = new javax.swing.JButton(); + jButton5 = new javax.swing.JButton(); + jButton6 = new javax.swing.JButton(); + jButton1 = new javax.swing.JButton(); + jButton2 = new javax.swing.JButton(); + jToolBar1 = new javax.swing.JToolBar(); + jButton8 = new javax.swing.JButton(); + jButton3 = new javax.swing.JButton(); + jButton7 = new javax.swing.JButton(); + jButton9 = new javax.swing.JButton(); + jButton10 = new javax.swing.JButton(); + jButton11 = new javax.swing.JButton(); + jButton12 = new javax.swing.JButton(); + jButton13 = new javax.swing.JButton(); + jButton14 = new javax.swing.JButton(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem3 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenuItem5 = new javax.swing.JMenuItem(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); + + delivery_table.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + delivery_table.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + delivery_tableMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + delivery_tableMouseEntered(evt); + } + }); + delivery_table.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + delivery_tableKeyPressed(evt); + } + }); + jScrollPane2.setViewportView(delivery_table); + + jScrollPane1.setViewportView(jScrollPane2); + + jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Delivery Information", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(51, 153, 255))); // NOI18N + + jPanel1.setToolTipText("Insert All the Information About The truck"); + jPanel1.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); + jPanel1.setDebugGraphicsOptions(javax.swing.DebugGraphics.NONE_OPTION); + + jLabel5.setText("Rate :"); + + jLabel6.setText("Length :"); + + jLabel7.setText("Height :"); + + jLabel8.setText("Width :"); + + jLabel9.setText("Ammount :"); + + jLabel16.setText("Remarks :"); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel9) + .addComponent(jLabel5)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_length, javax.swing.GroupLayout.PREFERRED_SIZE, 159, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txt_width, javax.swing.GroupLayout.DEFAULT_SIZE, 159, Short.MAX_VALUE) + .addComponent(txt_height, javax.swing.GroupLayout.DEFAULT_SIZE, 159, Short.MAX_VALUE) + .addComponent(txt_amount, javax.swing.GroupLayout.DEFAULT_SIZE, 159, Short.MAX_VALUE) + .addComponent(txt_rate, javax.swing.GroupLayout.DEFAULT_SIZE, 159, Short.MAX_VALUE))) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGap(14, 14, 14) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel6) + .addComponent(jLabel8) + .addComponent(jLabel7) + .addComponent(jLabel16)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(txt_remark, javax.swing.GroupLayout.DEFAULT_SIZE, 159, Short.MAX_VALUE))) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_length, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel6)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel8) + .addComponent(txt_width, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_height, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel7)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_amount, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_rate, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel5)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_remark, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel16)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jPanel2.setToolTipText("Insert All the Information About The truck"); + jPanel2.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); + jPanel2.setDebugGraphicsOptions(javax.swing.DebugGraphics.NONE_OPTION); + + jLabel10.setText("Client ID :"); + + jLabel11.setText("Client Name :"); + + jLabel12.setText("Description :"); + + jLabel13.setText("Truck Number :"); + + jLabel14.setText("Loading Place :"); + + txt_name.setEditable(false); + + txt_id.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyReleased(java.awt.event.KeyEvent evt) { + txt_idKeyReleased(evt); + } + }); + + jLabel15.setText("Delivery Date :"); + + txt_date.setDateFormatString("yyyy-MM-dd"); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel13) + .addComponent(jLabel12) + .addComponent(jLabel10) + .addComponent(jLabel11) + .addComponent(jLabel14) + .addComponent(jLabel15)) + .addGap(15, 15, 15) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_date, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE) + .addComponent(txt_place, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE) + .addComponent(txt_name, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE) + .addComponent(txt_id, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE) + .addComponent(txt_truck, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE) + .addComponent(txt_description, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel10) + .addComponent(txt_id, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel11) + .addComponent(txt_name, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel13) + .addComponent(txt_truck, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel12) + .addComponent(txt_description, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_place, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel14, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel15, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txt_date, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(3, Short.MAX_VALUE)) + ); + + javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); + jPanel3.setLayout(jPanel3Layout); + jPanel3Layout.setHorizontalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 31, Short.MAX_VALUE) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + ); + jPanel3Layout.setVerticalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, 192, Short.MAX_VALUE) + .addContainerGap()) + .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + ); + + jLabel1.setFont(new java.awt.Font("Rockwell Extra Bold", 1, 24)); + jLabel1.setForeground(new java.awt.Color(0, 51, 102)); + jLabel1.setText("Delivery Report"); + + jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Options", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 0, 14), new java.awt.Color(0, 153, 255))); // NOI18N + jPanel4.setFont(new java.awt.Font("Tahoma", 1, 14)); + + jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/update.png"))); // NOI18N + jButton4.setText("Update"); + jButton4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton4ActionPerformed(evt); + } + }); + + jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/clear.png"))); // NOI18N + jButton5.setText("Clear"); + jButton5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton5ActionPerformed(evt); + } + }); + + jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close.png"))); // NOI18N + jButton6.setText("Delete"); + jButton6.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton6ActionPerformed(evt); + } + }); + + jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/add.png"))); // NOI18N + jButton1.setText("Save"); + jButton1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton1ActionPerformed(evt); + } + }); + + jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print-icon.png"))); // NOI18N + jButton2.setText("Print"); + jButton2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton2ActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); + jPanel4.setLayout(jPanel4Layout); + jPanel4Layout.setHorizontalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, 91, Short.MAX_VALUE) + .addComponent(jButton2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 91, Short.MAX_VALUE) + .addComponent(jButton6, javax.swing.GroupLayout.DEFAULT_SIZE, 91, Short.MAX_VALUE) + .addComponent(jButton4, javax.swing.GroupLayout.DEFAULT_SIZE, 91, Short.MAX_VALUE) + .addComponent(jButton5, javax.swing.GroupLayout.DEFAULT_SIZE, 91, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel4Layout.setVerticalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addComponent(jButton1) + .addGap(18, 18, 18) + .addComponent(jButton4) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 13, Short.MAX_VALUE) + .addComponent(jButton5) + .addGap(18, 18, 18) + .addComponent(jButton6) + .addGap(18, 18, 18) + .addComponent(jButton2) + .addContainerGap()) + ); + + jToolBar1.setRollover(true); + + jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/1-Normal-Home-icon.png"))); // NOI18N + jButton8.setText("Home"); + jButton8.setToolTipText("Ctrl + H"); + jButton8.setFocusable(false); + jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton8.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton8ActionPerformed(evt); + } + }); + jToolBar1.add(jButton8); + + jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new32.png"))); // NOI18N + jButton3.setText("New Client"); + jButton3.setToolTipText("Ctrl + N"); + jButton3.setFocusable(false); + jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton3ActionPerformed(evt); + } + }); + jToolBar1.add(jButton3); + + jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon.png"))); // NOI18N + jButton7.setText("Transaction"); + jButton7.setToolTipText("Ctrl + T"); + jButton7.setFocusable(false); + jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton7); + + jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon.png"))); // NOI18N + jButton9.setText("Collection"); + jButton9.setToolTipText("Ctrl + C"); + jButton9.setFocusable(false); + jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton9.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton9ActionPerformed(evt); + } + }); + jToolBar1.add(jButton9); + + jButton10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton10.setText("Print"); + jButton10.setFocusable(false); + jButton10.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton10.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton10.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton10.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton10.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton10.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton10ActionPerformed(evt); + } + }); + jToolBar1.add(jButton10); + + jButton11.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Calendar-icon.png"))); // NOI18N + jButton11.setText("Calender"); + jButton11.setFocusable(false); + jButton11.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton11.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton11.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton11ActionPerformed(evt); + } + }); + jToolBar1.add(jButton11); + + jButton12.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Button-Refresh-icon.png"))); // NOI18N + jButton12.setText("Refresh"); + jButton12.setFocusable(false); + jButton12.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton12.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton12); + + jButton13.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + jButton13.setText("Search"); + jButton13.setFocusable(false); + jButton13.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton13.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton13.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton13.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton13.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton13); + + jButton14.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close32.png"))); // NOI18N + jButton14.setText("Close"); + jButton14.setToolTipText("Ctrl + Alt + C"); + jButton14.setFocusable(false); + jButton14.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton14.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton14.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton14.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton14.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton14.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton14ActionPerformed(evt); + } + }); + jToolBar1.add(jButton14); + + jMenu1.setText("Option"); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/house-icon.png"))); // NOI18N + jMenuItem1.setText("Home"); + jMenuItem1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem1ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new1.png"))); // NOI18N + jMenuItem2.setText("New Client"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem2); + + jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon (1).png"))); // NOI18N + jMenuItem3.setText("Transection"); + jMenuItem3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem3ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem3); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon (1).png"))); // NOI18N + jMenuItem4.setText("Collection"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem4); + + jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close1.png"))); // NOI18N + jMenuItem5.setText("Close"); + jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jMenuItem5MouseClicked(evt); + } + }); + jMenuItem5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem5ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem5); + + jMenuBar1.add(jMenu1); + + setJMenuBar(jMenuBar1); + + 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) + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(layout.createSequentialGroup() + .addGap(264, 264, 264) + .addComponent(jLabel1)) + .addGroup(layout.createSequentialGroup() + .addGap(228, 228, 228) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 295, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) + .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))) + .addContainerGap(36, Short.MAX_VALUE)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel1) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 170, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(22, 22, 22) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-779)/2, (screenSize.height-592)/2, 779, 592); + }// //GEN-END:initComponents + + private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed + + + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + double amount=Double.parseDouble(txt_amount.getText()); + double rate=Double.parseDouble(txt_rate.getText()); + double delivery=amount*rate; + PreparedStatement pst; + double tot=0,tot1=0; + try{ + + String sql="select total_delivery from client_info where id='"+txt_id.getText()+"'"; + + Statement statement = (Statement) conn.createStatement(); + ResultSet rs=statement.executeQuery(sql); + + while(rs.next()){ + tot=rs.getDouble(1); + } + tot+=delivery; + sql="update client_info set total_delivery='" + tot +"' where id='"+txt_id.getText()+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + //sql="insert into client_info(id,name,address,contact,datee) values (NULL,'" + txt_name.getText() + "','" + txt_address.getText() + "','" + txt_contact.getText() + "','"+val+ "')"; + + + + // JOptionPane.showMessageDialog(null, "Updated"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + + try{ + //String sql="insert into client_info values(?,?,?,?)"; + String val=((JTextField)txt_date.getDateEditor().getUiComponent()).getText(); + + amount=Double.parseDouble(txt_amount.getText()); + rate=Double.parseDouble(txt_rate.getText()); + double mul=amount*rate; + String s=""+mul; + + String sql="select total_paid_amount from client_info where id='"+txt_id.getText()+"'"; + + Statement statement = (Statement) conn.createStatement(); + ResultSet rs=statement.executeQuery(sql); + + while(rs.next()){ + tot1=rs.getDouble(1); + } + double due =tot-tot1; + String du=""+due; + String tot_delivery=""+tot; + String ad="0"; + //String sql="insert into client_info(id,name,address,contact,datee) values (NULL,'" + txt_name.getText() + "','" + txt_address.getText() + "','" + txt_contact.getText() + "','"+val+ "')"; + if(due>=0) + sql="insert into delivery_table values(null,'"+txt_id.getText()+"','"+txt_name.getText()+"','"+txt_truck.getText()+"','"+txt_description.getText()+"','"+txt_place.getText()+"','"+val+"','"+txt_length.getText()+"','"+txt_width.getText()+"','"+txt_height.getText()+"','"+txt_amount.getText()+"','"+txt_rate.getText()+"','"+s+"','"+tot_delivery+"','"+du+"','"+ad+"','"+txt_remark.getText()+"')"; + else { + due*=(-1); + ad=""+due; + sql="insert into delivery_table values(null,'"+txt_id.getText()+"','"+txt_name.getText()+"','"+txt_truck.getText()+"','"+txt_description.getText()+"','"+txt_place.getText()+"','"+val+"','"+txt_length.getText()+"','"+txt_width.getText()+"','"+txt_height.getText()+"','"+txt_amount.getText()+"','"+txt_rate.getText()+"','"+s+"','"+tot_delivery+"','"+du+"','"+ad+"','"+txt_remark.getText()+"')"; + } + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "Saved"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_jButton1ActionPerformed + + private void txt_idKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_idKeyReleased + System.out.println("sfdfsd"); + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + try{ + String id=txt_id.getText(); + System.out.println("fds : "+id); + String sql="select name from client_info where id='"+id+"'"; + + Statement statement = (Statement) conn.createStatement(); + + ResultSet rs=statement.executeQuery(sql); + //System.out.println("gffg"); + String nme; + double t_paid_amount,t_discount,t_delivery,cal; + // System.out.println(""+rs.next()); + if(rs.next()==false){ + System.out.println("sfd"); + txt_name.setText(""); + } + else{ + + nme=rs.getString(1); + txt_name.setText(nme); + } + + + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + + }//GEN-LAST:event_txt_idKeyReleased + + private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed + txt_id.setText(""); + txt_name.setText(""); + txt_amount.setText(""); + txt_description.setText(""); + txt_date.setDate(null); + txt_height.setText(""); + txt_length.setText(""); + txt_truck.setText(""); + txt_remark.setText(""); + txt_place.setText(""); + txt_width.setText(""); + txt_rate.setText(""); + + + }//GEN-LAST:event_jButton5ActionPerformed + + private void delivery_tableMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_delivery_tableMouseClicked + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + int row=delivery_table.getSelectedRow();rowf=row; + String table_click=delivery_table.getModel().getValueAt(row, 0).toString(); + String sql="select * from delivery_table where serial_no ='"+table_click+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + if(rs.next()) + { + String add1=rs.getString("id"); + txt_id.setText(add1); + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("truck_number"); + txt_truck.setText(add3); + String add4=rs.getString("description"); + txt_description.setText(add4); + + String add5=rs.getString("loading_place"); + txt_place.setText(add5); + + String add6=rs.getObject("delivery_date").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(add6); + txt_date.setDate(dat); + + String add7=rs.getString("length"); + txt_length.setText(add7); + + String add8=rs.getString("width"); + txt_width.setText(add8); + + String add9=rs.getString("height"); + txt_height.setText(add9); + + String add10=rs.getString("amount"); + txt_amount.setText(add10); + + String add11=rs.getString("rate"); + txt_rate.setText(add11); + + String add12=rs.getString("remarks"); + txt_remark.setText(add12); + + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + }//GEN-LAST:event_delivery_tableMouseClicked + + private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String table_click=delivery_table.getModel().getValueAt(rowf, 0).toString(); + + String val1=txt_id.getText(); + String val10=txt_amount.getText(); + String val11=txt_rate.getText(); + double v1=Double.parseDouble(val10); + double v2=Double.parseDouble(val11); + double v=v1*v2; + + //trunsaction + String sql="select total_amount from delivery_table where serial_no='"+table_click+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + double dub1=0,dub2=0,dub; + if(rs.next()) + { + dub1=rs.getDouble(1); + } + + sql="select total_delivery from client_info where id='"+val1+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(); + + if(rs.next()) + { + dub2=rs.getDouble(1); + } + dub=dub2-dub1+v; + sql="update client_info set total_delivery='"+dub+"' where id='"+val1+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + + String val2=txt_name.getText(); + String val3=txt_truck.getText(); + String val4=txt_description.getText(); + + String val5=txt_place.getText(); + String val6=((JTextField)txt_date.getDateEditor().getUiComponent()).getText(); + String val7=txt_length.getText(); + String val8=txt_width.getText(); + String val9=txt_height.getText(); + + String val12=""+v; + String val13=txt_remark.getText(); + + sql="update delivery_table set id ='"+val1+"',name='"+val2+"',truck_number='"+val3+"',description='"+val4+"',loading_place='"+val5+"',delivery_date='"+val6+"',length='"+val7+"',width='"+val8+"',height='"+val9+"',amount='"+val10+"',rate='"+val11+"',total_amount='"+val12+"',remarks='"+val13+"' "+"where serial_no ='"+table_click+"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "updated"); + update_table(); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_jButton4ActionPerformed + + private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed + int p=JOptionPane.showConfirmDialog(null, "Do you really want to delete","delete",JOptionPane.YES_NO_OPTION); + if(p==0){ + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + String sql="delete from delivery_table where serial_no=?"; + try{ + int row=rowf; + System.out.println("row "+row); + String table_click=delivery_table.getModel().getValueAt(row, 0).toString(); + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.setString(1, table_click); + pst.execute(); + JOptionPane.showMessageDialog(null, "deleted"); + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + + update_table(); + + } + } + }//GEN-LAST:event_jButton6ActionPerformed + + private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed + + MessageFormat header=new MessageFormat("Report Print"); + MessageFormat footer=new MessageFormat("Page{0,number,integer}"); + try{ + delivery_table.print(JTable.PrintMode.NORMAL,header,footer); + }catch(Exception e){ + + } + + }//GEN-LAST:event_jButton2ActionPerformed + + private void delivery_tableKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_delivery_tableKeyPressed + + }//GEN-LAST:event_delivery_tableKeyPressed + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + + this.dispose(); + + new client_info().setVisible(true); +}//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem3ActionPerformed + + this.dispose(); + + new Delivery().setVisible(true); +}//GEN-LAST:event_jMenuItem3ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + + this.dispose(); + + new Collection().setVisible(true); +}//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jMenuItem5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMenuItem5MouseClicked + System.exit(0); +}//GEN-LAST:event_jMenuItem5MouseClicked + + private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed + System.exit(0); +}//GEN-LAST:event_jMenuItem5ActionPerformed + + private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jButton8ActionPerformed + + private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed + this.dispose(); + new client_info().setVisible(true); + }//GEN-LAST:event_jButton3ActionPerformed + + private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton9ActionPerformed + + new Collection_tab().setVisible(true); + this.dispose(); + }//GEN-LAST:event_jButton9ActionPerformed + + private void jButton14ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton14ActionPerformed + System.exit(0); + }//GEN-LAST:event_jButton14ActionPerformed + + private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jMenuItem1ActionPerformed + + private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton11ActionPerformed + + this.dispose(); + + new MyCalender().setVisible(true); + + }//GEN-LAST:event_jButton11ActionPerformed + + private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton10ActionPerformed + + this.dispose(); + + new Client_page().setVisible(true); + }//GEN-LAST:event_jButton10ActionPerformed + + private void delivery_tableMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_delivery_tableMouseEntered + // TODO add your handling code here: + }//GEN-LAST:event_delivery_tableMouseEntered + + public static void main(String args[]) { + + /* Set the Nimbus look and feel */ + // + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + /*if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + }*/ + UIManager.setLookAndFeel("com.jtattoo.plaf.smart.SmartLookAndFeel"); + //UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel"); + UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel"); + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(Delivery.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(Delivery.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(Delivery.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(Delivery.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + Delivery frm=new Delivery(); + frm.setVisible(true); + //frm.setSize(1020, 680); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JTable delivery_table; + private javax.swing.JButton jButton1; + private javax.swing.JButton jButton10; + private javax.swing.JButton jButton11; + private javax.swing.JButton jButton12; + private javax.swing.JButton jButton13; + private javax.swing.JButton jButton14; + private javax.swing.JButton jButton2; + private javax.swing.JButton jButton3; + private javax.swing.JButton jButton4; + private javax.swing.JButton jButton5; + private javax.swing.JButton jButton6; + private javax.swing.JButton jButton7; + private javax.swing.JButton jButton8; + private javax.swing.JButton jButton9; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel10; + private javax.swing.JLabel jLabel11; + private javax.swing.JLabel jLabel12; + private javax.swing.JLabel jLabel13; + private javax.swing.JLabel jLabel14; + private javax.swing.JLabel jLabel15; + private javax.swing.JLabel jLabel16; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JLabel jLabel7; + private javax.swing.JLabel jLabel8; + private javax.swing.JLabel jLabel9; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem3; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JMenuItem jMenuItem5; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JPanel jPanel4; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JScrollPane jScrollPane2; + private javax.swing.JSeparator jSeparator1; + private javax.swing.JToolBar jToolBar1; + private javax.swing.JTextField txt_amount; + private com.toedter.calendar.JDateChooser txt_date; + private javax.swing.JTextField txt_description; + private javax.swing.JTextField txt_height; + private javax.swing.JTextField txt_id; + private javax.swing.JTextField txt_length; + private javax.swing.JTextField txt_name; + private javax.swing.JTextField txt_place; + private javax.swing.JTextField txt_rate; + private javax.swing.JTextField txt_remark; + private javax.swing.JTextField txt_truck; + private javax.swing.JTextField txt_width; + // End of variables declaration//GEN-END:variables + int rowf; +} diff --git a/ST2-Project-master/src/HomePage.form b/ST2-Project-master/src/HomePage.form new file mode 100644 index 0000000..eb2f9fd --- /dev/null +++ b/ST2-Project-master/src/HomePage.form @@ -0,0 +1,299 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/ST2-Project-master/src/HomePage.java b/ST2-Project-master/src/HomePage.java new file mode 100644 index 0000000..69ef8ea --- /dev/null +++ b/ST2-Project-master/src/HomePage.java @@ -0,0 +1,383 @@ + + +import java.awt.Graphics; +import java.awt.Image; +import java.awt.Toolkit; +import javax.swing.JFrame; + + +public class HomePage extends javax.swing.JFrame { + + JFrame obj=new JFrame(); + /** Creates new form MainPage */ + public HomePage() { + initComponents(); + repaint(); + } + + @Override + public void paint(Graphics g) + { + Image b=Toolkit.getDefaultToolkit().getImage("images/bc.jpg"); + g.drawImage(b,0,0,820,700,this); + + Image a=Toolkit.getDefaultToolkit().getImage("images/login.png"); + g.drawImage(a,0,0,570+75,390+50,this); + super.paint(g); + } + + /** This method is called from within the constructor to + * initialize the form. + * WARNING: Do NOT modify this code. The content of this method is + * always regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + jToolBar1 = new javax.swing.JToolBar(); + jButton8 = new javax.swing.JButton(); + jButton1 = new javax.swing.JButton(); + jButton2 = new javax.swing.JButton(); + jButton3 = new javax.swing.JButton(); + jButton5 = new javax.swing.JButton(); + jButton6 = new javax.swing.JButton(); + jButton9 = new javax.swing.JButton(); + jButton4 = new javax.swing.JButton(); + jButton7 = new javax.swing.JButton(); + jLabel1 = new javax.swing.JLabel(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem3 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenuItem5 = new javax.swing.JMenuItem(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); + + jToolBar1.setRollover(true); + + jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/1-Normal-Home-icon.png"))); // NOI18N + jButton8.setText("Home"); + jButton8.setFocusable(false); + jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton8.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton8ActionPerformed(evt); + } + }); + jToolBar1.add(jButton8); + + jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new32.png"))); // NOI18N + jButton1.setText("New Client"); + jButton1.setFocusable(false); + jButton1.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton1.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton1ActionPerformed(evt); + } + }); + jToolBar1.add(jButton1); + + jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon.png"))); // NOI18N + jButton2.setText("Transaction"); + jButton2.setFocusable(false); + jButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton2ActionPerformed(evt); + } + }); + jToolBar1.add(jButton2); + + jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon.png"))); // NOI18N + jButton3.setText("Collection"); + jButton3.setFocusable(false); + jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton3ActionPerformed(evt); + } + }); + jToolBar1.add(jButton3); + + jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton5.setText("Print"); + jButton5.setFocusable(false); + jButton5.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton5.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton5.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton5.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton5.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton5ActionPerformed(evt); + } + }); + jToolBar1.add(jButton5); + + jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Calendar-icon.png"))); // NOI18N + jButton6.setText("Calender"); + jButton6.setFocusable(false); + jButton6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton6.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton6.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton6ActionPerformed(evt); + } + }); + jToolBar1.add(jButton6); + + jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Button-Refresh-icon.png"))); // NOI18N + jButton9.setText("Refresh"); + jButton9.setFocusable(false); + jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton9.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton9ActionPerformed(evt); + } + }); + jToolBar1.add(jButton9); + + jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + jButton4.setText("Search"); + jButton4.setFocusable(false); + jButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton4.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton4.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton4.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton4.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton4); + + jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close32.png"))); // NOI18N + jButton7.setText("Close"); + jButton7.setFocusable(false); + jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton7.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton7.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton7.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton7.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton7ActionPerformed(evt); + } + }); + jToolBar1.add(jButton7); + + jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/db.png"))); // NOI18N + + jMenu1.setText("Option"); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/house-icon.png"))); // NOI18N + jMenuItem1.setText("Home"); + jMenu1.add(jMenuItem1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new1.png"))); // NOI18N + jMenuItem2.setText("New Client"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem2); + + jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon (1).png"))); // NOI18N + jMenuItem3.setText("Transection"); + jMenuItem3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem3ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem3); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon (1).png"))); // NOI18N + jMenuItem4.setText("Collection"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem4); + + jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close1.png"))); // NOI18N + jMenuItem5.setText("Close"); + jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jMenuItem5MouseClicked(evt); + } + }); + jMenuItem5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem5ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem5); + + jMenuBar1.add(jMenu1); + + setJMenuBar(jMenuBar1); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jToolBar1, javax.swing.GroupLayout.DEFAULT_SIZE, 810, Short.MAX_VALUE) + .addGroup(layout.createSequentialGroup() + .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGap(10, 10, 10)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 78, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 591, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-811)/2, (screenSize.height-583)/2, 811, 583); + }// //GEN-END:initComponents + + private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed + + this.dispose(); + + new client_info().setVisible(true); + + }//GEN-LAST:event_jButton1ActionPerformed + + private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton7ActionPerformed + + System.exit(0); + + }//GEN-LAST:event_jButton7ActionPerformed + + private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed + + this.dispose(); + + new Client_page().setVisible(true); + }//GEN-LAST:event_jButton5ActionPerformed + + private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jButton8ActionPerformed + + private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton9ActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_jButton9ActionPerformed + + private void jMenuItem5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMenuItem5MouseClicked + System.exit(0); + }//GEN-LAST:event_jMenuItem5MouseClicked + + private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed + System.exit(0); + }//GEN-LAST:event_jMenuItem5ActionPerformed + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + + this.dispose(); + + new client_info().setVisible(true); + }//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem3ActionPerformed + + this.dispose(); + + new Delivery().setVisible(true); + + }//GEN-LAST:event_jMenuItem3ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + + this.dispose(); + + new Collection().setVisible(true); + + }//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed + this.dispose(); + new Delivery().setVisible(true); + }//GEN-LAST:event_jButton2ActionPerformed + + private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed + this.dispose(); + new Collection_tab().setVisible(true); + }//GEN-LAST:event_jButton3ActionPerformed + + private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed + + this.dispose(); + + new MyCalender().setVisible(true); + + }//GEN-LAST:event_jButton6ActionPerformed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new HomePage().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton jButton1; + private javax.swing.JButton jButton2; + private javax.swing.JButton jButton3; + private javax.swing.JButton jButton4; + private javax.swing.JButton jButton5; + private javax.swing.JButton jButton6; + private javax.swing.JButton jButton7; + private javax.swing.JButton jButton8; + private javax.swing.JButton jButton9; + private javax.swing.JLabel jLabel1; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem3; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JMenuItem jMenuItem5; + private javax.swing.JToolBar jToolBar1; + // End of variables declaration//GEN-END:variables + +} diff --git a/ST2-Project-master/src/Login_Frame.form b/ST2-Project-master/src/Login_Frame.form new file mode 100644 index 0000000..2869110 --- /dev/null +++ b/ST2-Project-master/src/Login_Frame.form @@ -0,0 +1,153 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ST2-Project-master/src/Login_Frame.java b/ST2-Project-master/src/Login_Frame.java new file mode 100644 index 0000000..84fcefe --- /dev/null +++ b/ST2-Project-master/src/Login_Frame.java @@ -0,0 +1,243 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + + +import java.awt.*; +import java.awt.event.KeyEvent; +import java.awt.event.WindowEvent; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.*; + +public class Login_Frame extends javax.swing.JFrame { + + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + + public Login_Frame() { + + super("Login"); + System.out.println(this.getMaximumSize().getHeight()); + System.out.println(this.getMaximumSize().getWidth()); + initComponents(); + } + public void close(){ + WindowEvent winclosingevent=new WindowEvent(this,WindowEvent.WINDOW_CLOSING); + Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(winclosingevent); + } + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + jPanel1 = new javax.swing.JPanel(); + txt_password = new javax.swing.JPasswordField(); + jLabel1 = new javax.swing.JLabel(); + jLabel2 = new javax.swing.JLabel(); + txt_username = new javax.swing.JTextField(); + cmd_login = new javax.swing.JButton(); + jLabel3 = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + + jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Login", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 18), new java.awt.Color(0, 153, 255))); // NOI18N + + txt_password.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txt_passwordActionPerformed(evt); + } + }); + txt_password.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_passwordKeyPressed(evt); + } + }); + + jLabel1.setFont(new java.awt.Font("Tahoma", 0, 14)); + jLabel1.setText("Username"); + + jLabel2.setFont(new java.awt.Font("Tahoma", 0, 14)); + jLabel2.setText("Password"); + + cmd_login.setFont(new java.awt.Font("Tahoma", 0, 14)); + cmd_login.setText("Login"); + cmd_login.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + cmd_loginActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGap(33, 33, 33) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel1) + .addComponent(jLabel2)) + .addGap(28, 28, 28) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(txt_username) + .addComponent(txt_password, javax.swing.GroupLayout.DEFAULT_SIZE, 156, Short.MAX_VALUE)) + .addContainerGap(11, Short.MAX_VALUE)) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() + .addContainerGap(205, Short.MAX_VALUE) + .addComponent(cmd_login) + .addGap(19, 19, 19)) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGap(39, 39, 39) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_username, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel1)) + .addGap(23, 23, 23) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_password, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel2)) + .addGap(18, 18, 18) + .addComponent(cmd_login) + .addContainerGap(37, Short.MAX_VALUE)) + ); + + jLabel3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/fp2.png"))); // NOI18N + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(jLabel3) + .addGap(28, 28, 28) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(44, Short.MAX_VALUE)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGap(119, 119, 119) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(jLabel3)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-789)/2, (screenSize.height-555)/2, 789, 555); + }// //GEN-END:initComponents + + private void cmd_loginActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmd_loginActionPerformed + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + String sql="select * from login_table where username=? and password=?"; + try{ + pst=conn.prepareStatement(sql); + pst.setString(1, txt_username.getText()); + pst.setString(2, txt_password.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + + rs.close(); + pst.close(); + + // + + close(); + HomePage pg=new HomePage(); + pg.setVisible(true); + } + else{ + JOptionPane.showMessageDialog(null, "Username and Password is incorrect"); + } + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + +}//GEN-LAST:event_cmd_loginActionPerformed + + private void txt_passwordKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_passwordKeyPressed + + if(evt.getKeyCode()==KeyEvent.VK_ENTER){ + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + String sql="select * from login_table where username=? and password=?"; + + try{ + pst=conn.prepareStatement(sql); + pst.setString(1, txt_username.getText()); + pst.setString(2, txt_password.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + // JOptionPane.showMessageDialog(null, "Username and Password is correct"); + rs.close(); + pst.close(); + close(); + new HomePage().setVisible(true); + } + else{ + JOptionPane.showMessageDialog(null, "Username and Password is incorrect"); + } + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + finally { + try { + conn.close(); + } catch (SQLException ex) { + Logger.getLogger(Login_Frame.class.getName()).log(Level.SEVERE, null, ex); + } + } + } + +}//GEN-LAST:event_txt_passwordKeyPressed + + private void txt_passwordActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txt_passwordActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_txt_passwordActionPerformed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new Login_Frame().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton cmd_login; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JPanel jPanel1; + private javax.swing.JPasswordField txt_password; + private javax.swing.JTextField txt_username; + // End of variables declaration//GEN-END:variables +} diff --git a/ST2-Project-master/src/Login_Frame1.form b/ST2-Project-master/src/Login_Frame1.form new file mode 100644 index 0000000..3b1449b --- /dev/null +++ b/ST2-Project-master/src/Login_Frame1.form @@ -0,0 +1,103 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ST2-Project-master/src/Login_Frame1.java b/ST2-Project-master/src/Login_Frame1.java new file mode 100644 index 0000000..51966dd --- /dev/null +++ b/ST2-Project-master/src/Login_Frame1.java @@ -0,0 +1,219 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + + +import java.awt.*; +import java.awt.event.KeyEvent; +import java.awt.event.WindowEvent; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.*; + +public class Login_Frame1 extends javax.swing.JFrame { + + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + + public Login_Frame1() { + + super("Login"); + System.out.println(this.getMaximumSize().getHeight()); + System.out.println(this.getMaximumSize().getWidth()); + initComponents(); + } + public void close(){ + WindowEvent winclosingevent=new WindowEvent(this,WindowEvent.WINDOW_CLOSING); + Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(winclosingevent); + } + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + txt_username = new javax.swing.JTextField(); + cmd_login = new javax.swing.JButton(); + txt_password = new javax.swing.JPasswordField(); + jLabel1 = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + setBackground(new java.awt.Color(0, 0, 0)); + + txt_username.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txt_usernameActionPerformed(evt); + } + }); + + cmd_login.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N + cmd_login.setText("Login"); + cmd_login.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + cmd_loginActionPerformed(evt); + } + }); + + txt_password.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txt_passwordActionPerformed(evt); + } + }); + txt_password.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_passwordKeyPressed(evt); + } + }); + + jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/login.png"))); // NOI18N + + 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(308, 308, 308) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(txt_username) + .addComponent(txt_password, javax.swing.GroupLayout.PREFERRED_SIZE, 156, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 83, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(cmd_login) + .addGap(8, 8, 8)))) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel1))) + .addContainerGap(20, Short.MAX_VALUE)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel1) + .addGap(180, 180, 180) + .addComponent(txt_username, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(23, 23, 23) + .addComponent(txt_password, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addComponent(cmd_login) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-617)/2, (screenSize.height-454)/2, 617, 454); + }// //GEN-END:initComponents + + private void cmd_loginActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cmd_loginActionPerformed + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + String sql="select * from login_table where username=? and password=?"; + try{ + pst=conn.prepareStatement(sql); + pst.setString(1, txt_username.getText()); + pst.setString(2, txt_password.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + + rs.close(); + pst.close(); + + // + + close(); + HomePage pg=new HomePage(); + pg.setVisible(true); + } + else{ + JOptionPane.showMessageDialog(null, "Username and Password is incorrect"); + } + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + +}//GEN-LAST:event_cmd_loginActionPerformed + + private void txt_passwordKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_passwordKeyPressed + + if(evt.getKeyCode()==KeyEvent.VK_ENTER){ + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + String sql="select * from login_table where username=? and password=?"; + + try{ + pst=conn.prepareStatement(sql); + pst.setString(1, txt_username.getText()); + pst.setString(2, txt_password.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + // JOptionPane.showMessageDialog(null, "Username and Password is correct"); + rs.close(); + pst.close(); + close(); + new HomePage().setVisible(true); + } + else{ + JOptionPane.showMessageDialog(null, "Username and Password is incorrect"); + } + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + } + finally { + try { + conn.close(); + } catch (SQLException ex) { + Logger.getLogger(Login_Frame.class.getName()).log(Level.SEVERE, null, ex); + } + } + } + +}//GEN-LAST:event_txt_passwordKeyPressed + + private void txt_passwordActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txt_passwordActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_txt_passwordActionPerformed + + private void txt_usernameActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txt_usernameActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_txt_usernameActionPerformed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new Login_Frame1().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton cmd_login; + private javax.swing.JLabel jLabel1; + private javax.swing.JPasswordField txt_password; + private javax.swing.JTextField txt_username; + // End of variables declaration//GEN-END:variables +} diff --git a/ST2-Project-master/src/Login_Image.java b/ST2-Project-master/src/Login_Image.java new file mode 100644 index 0000000..9ac6c71 --- /dev/null +++ b/ST2-Project-master/src/Login_Image.java @@ -0,0 +1,133 @@ +import com.mysql.jdbc.Connection; +import com.mysql.jdbc.PreparedStatement; +import java.awt.event.MouseEvent; +import javax.swing.JFrame; +import javax.swing.JPanel; +import java.awt.Graphics; +import java.awt.Image; +import java.awt.Toolkit; +import java.awt.event.MouseListener; +import java.sql.ResultSet; +import javax.swing.JOptionPane; +import javax.swing.JTextField; + + +public class Login_Image extends JPanel implements MouseListener +{ + static JTextField name,pass; + static JPanel panel; + static JFrame myFrame; + + public Login_Image() + { + setOpaque(false); + + setLayout(null); + + this.addMouseListener(this); + } + + + public static void main(String[]args) + { + myFrame=new JFrame("OS Lab"); + + Login_Image c=new Login_Image(); + + name=new JTextField(); + name.setBounds(280,190, 110, 15); + name.setHighlighter(null); + c.add(name); + + pass=new JTextField(); + pass.setBounds(280,223, 110, 15); + c.add(pass); + + myFrame.add(c); + myFrame.setResizable(false); + // myFrame.setLocationRelativeTo(null); + myFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + myFrame.setSize(645,440); + myFrame.setVisible(true); + myFrame.repaint(); + } + + @Override + public void paint(Graphics g) + { + Image b=Toolkit.getDefaultToolkit().getImage("images/bc.jpg"); + g.drawImage(b,0,0,820,700,this); + + Image a=Toolkit.getDefaultToolkit().getImage("images/login.png"); + g.drawImage(a,0,0,570+75,390+50,this); + super.paint(g); + } + + + @Override + public void mouseClicked(MouseEvent e) { + + int x=e.getX(),y=e.getY(); + + System.out.println(x+" "+y); + + if ( (x-432)*(x-432) + (y-211)*(y-211) < 17*17) + { + + DataBase_connect obj=new DataBase_connect(); + + ResultSet rs=null; + + PreparedStatement pst=null; + + Connection conn=obj.Open(); + + String sql="select * from login_table where username=? and password=?"; + try{ + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.setString(1, name.getText()); + pst.setString(2, pass.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + + rs.close(); + pst.close(); + + myFrame.dispose(); + + HomePage pg=new HomePage(); + pg.setVisible(true); + } + else{ + JOptionPane.showMessageDialog(null, "Username and Password is incorrect"); + } + + }catch(Exception ex){ + JOptionPane.showMessageDialog(null, e); + } + + + } + } + + @Override + public void mousePressed(MouseEvent e) { + + } + + @Override + public void mouseReleased(MouseEvent e) { + + } + + @Override + public void mouseEntered(MouseEvent e) { + + } + + @Override + public void mouseExited(MouseEvent e) { + + } + +} diff --git a/ST2-Project-master/src/MyCalender.form b/ST2-Project-master/src/MyCalender.form new file mode 100644 index 0000000..1ae0fd4 --- /dev/null +++ b/ST2-Project-master/src/MyCalender.form @@ -0,0 +1,324 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ST2-Project-master/src/MyCalender.java b/ST2-Project-master/src/MyCalender.java new file mode 100644 index 0000000..cbebd0f --- /dev/null +++ b/ST2-Project-master/src/MyCalender.java @@ -0,0 +1,364 @@ + + +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +/* + * MyCalender.java + * + * Created on Sep 20, 2012, 5:23:31 AM + */ + +/** + * + * @author Vish + */ +public class MyCalender extends javax.swing.JFrame { + + /** Creates new form MyCalender */ + public MyCalender() { + initComponents(); + } + + /** This method is called from within the constructor to + * initialize the form. + * WARNING: Do NOT modify this code. The content of this method is + * always regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + jToolBar1 = new javax.swing.JToolBar(); + jButton8 = new javax.swing.JButton(); + jButton1 = new javax.swing.JButton(); + jButton2 = new javax.swing.JButton(); + jButton3 = new javax.swing.JButton(); + jButton5 = new javax.swing.JButton(); + jButton6 = new javax.swing.JButton(); + jButton9 = new javax.swing.JButton(); + jButton4 = new javax.swing.JButton(); + jButton7 = new javax.swing.JButton(); + jPanel1 = new javax.swing.JPanel(); + jCalendar1 = new com.toedter.calendar.JCalendar(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem3 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenuItem5 = new javax.swing.JMenuItem(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + + jToolBar1.setRollover(true); + + jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/1-Normal-Home-icon.png"))); // NOI18N + jButton8.setText("Home"); + jButton8.setFocusable(false); + jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton8.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton8ActionPerformed(evt); + } + }); + jToolBar1.add(jButton8); + + jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new32.png"))); // NOI18N + jButton1.setText("New Client"); + jButton1.setFocusable(false); + jButton1.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton1.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton1ActionPerformed(evt); + } + }); + jToolBar1.add(jButton1); + + jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon.png"))); // NOI18N + jButton2.setText("Transaction"); + jButton2.setFocusable(false); + jButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton2ActionPerformed(evt); + } + }); + jToolBar1.add(jButton2); + + jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon.png"))); // NOI18N + jButton3.setText("Collection"); + jButton3.setFocusable(false); + jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton3ActionPerformed(evt); + } + }); + jToolBar1.add(jButton3); + + jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton5.setText("Print"); + jButton5.setFocusable(false); + jButton5.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton5.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton5.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton5.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton5.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton5ActionPerformed(evt); + } + }); + jToolBar1.add(jButton5); + + jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Calendar-icon.png"))); // NOI18N + jButton6.setText("Calender"); + jButton6.setFocusable(false); + jButton6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton6.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton6); + + jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Button-Refresh-icon.png"))); // NOI18N + jButton9.setText("Refresh"); + jButton9.setFocusable(false); + jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton9.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton9ActionPerformed(evt); + } + }); + jToolBar1.add(jButton9); + + jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + jButton4.setText("Search"); + jButton4.setFocusable(false); + jButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton4.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton4.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton4.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton4.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(jButton4); + + jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close32.png"))); // NOI18N + jButton7.setText("Close"); + jButton7.setFocusable(false); + jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton7.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton7.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton7.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton7.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton7ActionPerformed(evt); + } + }); + jToolBar1.add(jButton7); + + jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Current Month", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 18), new java.awt.Color(51, 153, 255))); // NOI18N + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jCalendar1, javax.swing.GroupLayout.PREFERRED_SIZE, 289, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jCalendar1, javax.swing.GroupLayout.PREFERRED_SIZE, 210, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + + jMenu1.setText("Option"); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/house-icon.png"))); // NOI18N + jMenuItem1.setText("Home"); + jMenu1.add(jMenuItem1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new1.png"))); // NOI18N + jMenuItem2.setText("New Client"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem2); + + jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon (1).png"))); // NOI18N + jMenuItem3.setText("Transection"); + jMenuItem3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem3ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem3); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon (1).png"))); // NOI18N + jMenuItem4.setText("Collection"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem4); + + jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close1.png"))); // NOI18N + jMenuItem5.setText("Close"); + jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jMenuItem5MouseClicked(evt); + } + }); + jMenuItem5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem5ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem5); + + jMenuBar1.add(jMenu1); + + setJMenuBar(jMenuBar1); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jToolBar1, javax.swing.GroupLayout.DEFAULT_SIZE, 815, Short.MAX_VALUE) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addContainerGap(251, Short.MAX_VALUE) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(243, 243, 243)) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 78, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(45, 45, 45) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(105, Short.MAX_VALUE)) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-831)/2, (screenSize.height-554)/2, 831, 554); + }// //GEN-END:initComponents + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + + this.dispose(); + + new client_info().setVisible(true); +}//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem3ActionPerformed + + this.dispose(); + + new Delivery().setVisible(true); + }//GEN-LAST:event_jMenuItem3ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + + this.dispose(); + + new Collection().setVisible(true); + }//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jMenuItem5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMenuItem5MouseClicked + System.exit(0); +}//GEN-LAST:event_jMenuItem5MouseClicked + + private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed + System.exit(0); +}//GEN-LAST:event_jMenuItem5ActionPerformed + + private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed + this.dispose(); + new HomePage().setVisible(true); +}//GEN-LAST:event_jButton8ActionPerformed + + private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed + + this.dispose(); + + new client_info().setVisible(true); + }//GEN-LAST:event_jButton1ActionPerformed + + private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed + this.dispose(); + new Delivery().setVisible(true); +}//GEN-LAST:event_jButton2ActionPerformed + + private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed + this.dispose(); + new Collection_tab().setVisible(true); + }//GEN-LAST:event_jButton3ActionPerformed + + private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed + + this.dispose(); + + new Client_page().setVisible(true); + +}//GEN-LAST:event_jButton5ActionPerformed + + private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton9ActionPerformed + // TODO add your handling code here: +}//GEN-LAST:event_jButton9ActionPerformed + + private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton7ActionPerformed + + System.exit(0); + }//GEN-LAST:event_jButton7ActionPerformed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new MyCalender().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton jButton1; + private javax.swing.JButton jButton2; + private javax.swing.JButton jButton3; + private javax.swing.JButton jButton4; + private javax.swing.JButton jButton5; + private javax.swing.JButton jButton6; + private javax.swing.JButton jButton7; + private javax.swing.JButton jButton8; + private javax.swing.JButton jButton9; + private com.toedter.calendar.JCalendar jCalendar1; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem3; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JMenuItem jMenuItem5; + private javax.swing.JPanel jPanel1; + private javax.swing.JToolBar jToolBar1; + // End of variables declaration//GEN-END:variables + +} diff --git a/ST2-Project-master/src/StockEntry.form b/ST2-Project-master/src/StockEntry.form new file mode 100644 index 0000000..c93e6b6 --- /dev/null +++ b/ST2-Project-master/src/StockEntry.form @@ -0,0 +1,427 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ diff --git a/ST2-Project-master/src/StockEntry.java b/ST2-Project-master/src/StockEntry.java new file mode 100644 index 0000000..f034659 --- /dev/null +++ b/ST2-Project-master/src/StockEntry.java @@ -0,0 +1,368 @@ + +import javax.swing.UIManager; + +public class StockEntry extends javax.swing.JFrame { + + /** Creates new form StockEntry */ + public StockEntry() { + initComponents(); + } + + /** This method is called from within the constructor to + * initialize the form. + * WARNING: Do NOT modify this code. The content of this method is + * always regenerated by the Form Editor. + */ + + // //GEN-BEGIN:initComponents + private void initComponents() { + + jPanel1 = new javax.swing.JPanel(); + jLabel5 = new javax.swing.JLabel(); + jLabel6 = new javax.swing.JLabel(); + jLabel7 = new javax.swing.JLabel(); + jLabel8 = new javax.swing.JLabel(); + jLabel9 = new javax.swing.JLabel(); + jTextField6 = new javax.swing.JTextField(); + jTextField7 = new javax.swing.JTextField(); + jTextField8 = new javax.swing.JTextField(); + jTextField9 = new javax.swing.JTextField(); + jTextField10 = new javax.swing.JTextField(); + jPanel2 = new javax.swing.JPanel(); + jLabel10 = new javax.swing.JLabel(); + jLabel11 = new javax.swing.JLabel(); + jLabel12 = new javax.swing.JLabel(); + jLabel13 = new javax.swing.JLabel(); + jLabel14 = new javax.swing.JLabel(); + jTextField11 = new javax.swing.JTextField(); + jTextField12 = new javax.swing.JTextField(); + jTextField13 = new javax.swing.JTextField(); + jTextField14 = new javax.swing.JTextField(); + jTextField15 = new javax.swing.JTextField(); + jTextField16 = new javax.swing.JTextField(); + jLabel15 = new javax.swing.JLabel(); + jScrollPane1 = new javax.swing.JScrollPane(); + jScrollPane2 = new javax.swing.JScrollPane(); + jTable1 = new javax.swing.JTable(); + jLabel1 = new javax.swing.JLabel(); + jSeparator1 = new javax.swing.JSeparator(); + jPanel4 = new javax.swing.JPanel(); + jButton4 = new javax.swing.JButton(); + jButton5 = new javax.swing.JButton(); + jButton6 = new javax.swing.JButton(); + jButton1 = new javax.swing.JButton(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR)); + + jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED), "Truck Info", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Trebuchet MS", 1, 14), new java.awt.Color(0, 0, 102))); // NOI18N + jPanel1.setToolTipText("Insert All the Information About The truck"); + jPanel1.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); + jPanel1.setDebugGraphicsOptions(javax.swing.DebugGraphics.NONE_OPTION); + + jLabel5.setText("Truck Number :"); + + jLabel6.setText("Length :"); + + jLabel7.setText("Height :"); + + jLabel8.setText("Width :"); + + jLabel9.setText("Ammount(ton) : "); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel6) + .addComponent(jLabel5) + .addComponent(jLabel8) + .addComponent(jLabel7) + .addComponent(jLabel9)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jTextField10, javax.swing.GroupLayout.DEFAULT_SIZE, 167, Short.MAX_VALUE) + .addComponent(jTextField6, javax.swing.GroupLayout.DEFAULT_SIZE, 167, Short.MAX_VALUE) + .addComponent(jTextField9, javax.swing.GroupLayout.DEFAULT_SIZE, 167, Short.MAX_VALUE) + .addComponent(jTextField8, javax.swing.GroupLayout.DEFAULT_SIZE, 167, Short.MAX_VALUE) + .addComponent(jTextField7, javax.swing.GroupLayout.DEFAULT_SIZE, 167, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jTextField10, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel5)) + .addGap(18, 18, 18) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jTextField6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel6)) + .addGap(18, 18, 18) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jTextField7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel8)) + .addGap(18, 18, 18) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jTextField8, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel7)) + .addGap(18, 18, 18) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jTextField9, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(19, Short.MAX_VALUE)) + ); + + jPanel2.setToolTipText("Insert All the Information About The truck"); + jPanel2.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR)); + jPanel2.setDebugGraphicsOptions(javax.swing.DebugGraphics.NONE_OPTION); + + jLabel10.setText("L.C. Number :"); + + jLabel11.setText("L.C. Date :"); + + jLabel12.setText("Supplier Id :"); + + jLabel13.setText("Rate :"); + + jLabel14.setText("Received Invoice :"); + + jLabel15.setText("Received Date :"); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel10) + .addComponent(jLabel11) + .addComponent(jLabel13) + .addComponent(jLabel12) + .addComponent(jLabel15) + .addComponent(jLabel14)) + .addGap(15, 15, 15) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jTextField16, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jTextField14, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jTextField11, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jTextField15, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jTextField12, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jTextField13, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel10) + .addComponent(jTextField15, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel11) + .addComponent(jTextField11, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel13) + .addComponent(jTextField12, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel12) + .addComponent(jTextField13, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel14, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jTextField14, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel15, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jTextField16, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jTable1.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + jScrollPane2.setViewportView(jTable1); + + jScrollPane1.setViewportView(jScrollPane2); + + jLabel1.setFont(new java.awt.Font("Rockwell Extra Bold", 1, 24)); + jLabel1.setForeground(new java.awt.Color(0, 51, 102)); + jLabel1.setText("Stock Entry"); + + jPanel4.setBorder(new javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED)); + + jButton4.setText("Update"); + + jButton5.setText("Clear"); + + jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close.png"))); // NOI18N + jButton6.setText("Delete"); + + jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/add.png"))); // NOI18N + jButton1.setText("Save"); + + javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); + jPanel4.setLayout(jPanel4Layout); + jPanel4Layout.setHorizontalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jButton6, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jButton5, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 83, Short.MAX_VALUE) + .addComponent(jButton4, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 83, Short.MAX_VALUE) + .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, 83, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel4Layout.setVerticalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jButton1) + .addGap(18, 18, 18) + .addComponent(jButton4) + .addGap(18, 18, 18) + .addComponent(jButton5) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 10, Short.MAX_VALUE) + .addComponent(jButton6) + .addContainerGap()) + ); + + 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(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 125, Short.MAX_VALUE) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(layout.createSequentialGroup() + .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 624, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(7, 7, 7))) + .addGap(8, 8, 8)) + .addGroup(layout.createSequentialGroup() + .addGap(218, 218, 218) + .addComponent(jLabel1)) + .addGroup(layout.createSequentialGroup() + .addGap(201, 201, 201) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 207, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addComponent(jLabel1) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 4, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(28, 28, 28) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 170, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(24, Short.MAX_VALUE)) + ); + + pack(); + }// //GEN-END:initComponents + + public static void main(String args[]) { + + /* Set the Nimbus look and feel */ + // + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + /*if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + }*/ + UIManager.setLookAndFeel("com.jtattoo.plaf.smart.SmartLookAndFeel"); + //UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel"); + UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel"); + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + StockEntry frm=new StockEntry(); + frm.setVisible(true); + //frm.setSize(1020, 680); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton jButton1; + private javax.swing.JButton jButton4; + private javax.swing.JButton jButton5; + private javax.swing.JButton jButton6; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel10; + private javax.swing.JLabel jLabel11; + private javax.swing.JLabel jLabel12; + private javax.swing.JLabel jLabel13; + private javax.swing.JLabel jLabel14; + private javax.swing.JLabel jLabel15; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JLabel jLabel7; + private javax.swing.JLabel jLabel8; + private javax.swing.JLabel jLabel9; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel4; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JScrollPane jScrollPane2; + private javax.swing.JSeparator jSeparator1; + private javax.swing.JTable jTable1; + private javax.swing.JTextField jTextField10; + private javax.swing.JTextField jTextField11; + private javax.swing.JTextField jTextField12; + private javax.swing.JTextField jTextField13; + private javax.swing.JTextField jTextField14; + private javax.swing.JTextField jTextField15; + private javax.swing.JTextField jTextField16; + private javax.swing.JTextField jTextField6; + private javax.swing.JTextField jTextField7; + private javax.swing.JTextField jTextField8; + private javax.swing.JTextField jTextField9; + // End of variables declaration//GEN-END:variables + +} diff --git a/ST2-Project-master/src/Supplier_info.form b/ST2-Project-master/src/Supplier_info.form new file mode 100644 index 0000000..ba9b7e5 --- /dev/null +++ b/ST2-Project-master/src/Supplier_info.form @@ -0,0 +1,451 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ diff --git a/ST2-Project-master/src/Supplier_info.java b/ST2-Project-master/src/Supplier_info.java new file mode 100644 index 0000000..1f5e0a7 --- /dev/null +++ b/ST2-Project-master/src/Supplier_info.java @@ -0,0 +1,680 @@ + + + +import java.awt.*; +import java.awt.event.KeyEvent; +import java.awt.event.WindowEvent; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.*; +import net.proteanit.sql.DbUtils; +import java.util.Calendar; +import java.util.GregorianCalendar; + + +public class Supplier_info extends javax.swing.JFrame { + + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + + public Supplier_info() + { + initComponents(); + update_table(); + } + + public void close() + { + WindowEvent winclosingevent=new WindowEvent(this,WindowEvent.WINDOW_CLOSING); + Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(winclosingevent); + } + + public void currentdate() + { + Calendar cal=new GregorianCalendar(); + int month=cal.get(Calendar.MONTH); + int year=cal.get(Calendar.YEAR); + int day=cal.get(Calendar.DAY_OF_MONTH); + date.setText("Date-"+day+"/"+(month+1)+"/"+year); + int second=cal.get(Calendar.SECOND); + int mn=cal.get(Calendar.MINUTE); + int hr=cal.get(Calendar.HOUR); + + } + + private void update_table() { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String sql="select id,name,address,contact,datee from client_info"; + pst=conn.prepareStatement(sql); + rs=pst.executeQuery(); + client_table.setModel(DbUtils.resultSetToTableModel(rs)); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close(); + System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + } + + + + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + menuBar1 = new java.awt.MenuBar(); + menu1 = new java.awt.Menu(); + menu2 = new java.awt.Menu(); + menuBar2 = new java.awt.MenuBar(); + menu3 = new java.awt.Menu(); + menu4 = new java.awt.Menu(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenu2 = new javax.swing.JMenu(); + jPanel1 = new javax.swing.JPanel(); + update = new javax.swing.JButton(); + save = new javax.swing.JButton(); + clear = new javax.swing.JButton(); + delete = new javax.swing.JButton(); + jPanel2 = new javax.swing.JPanel(); + jLabel1 = new javax.swing.JLabel(); + txt_address = new javax.swing.JTextField(); + jLabel2 = new javax.swing.JLabel(); + txt_id = new javax.swing.JTextField(); + jLabel4 = new javax.swing.JLabel(); + txt_name = new javax.swing.JTextField(); + jLabel3 = new javax.swing.JLabel(); + txt_contact = new javax.swing.JTextField(); + jLabel5 = new javax.swing.JLabel(); + txt_date = new com.toedter.calendar.JDateChooser(); + txt_pro_name = new javax.swing.JTextField(); + jLabel6 = new javax.swing.JLabel(); + jScrollPane2 = new javax.swing.JScrollPane(); + jScrollPane1 = new javax.swing.JScrollPane(); + client_table = new javax.swing.JTable(); + jPanel3 = new javax.swing.JPanel(); + search = new javax.swing.JTextField(); + jMenuBar2 = new javax.swing.JMenuBar(); + jMenu3 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jSeparator1 = new javax.swing.JPopupMenu.Separator(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenu4 = new javax.swing.JMenu(); + date = new javax.swing.JMenu(); + + menu1.setLabel("File"); + menuBar1.add(menu1); + + menu2.setLabel("Edit"); + menuBar1.add(menu2); + + menu3.setLabel("File"); + menuBar2.add(menu3); + + menu4.setLabel("Edit"); + menuBar2.add(menu4); + + jMenu1.setText("File"); + jMenuBar1.add(jMenu1); + + jMenu2.setText("Edit"); + jMenuBar1.add(jMenu2); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + + jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Options", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(0, 51, 153))); // NOI18N + + update.setText("Update"); + update.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + updateActionPerformed(evt); + } + }); + + save.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/add.png"))); // NOI18N + save.setText("Save"); + save.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + saveActionPerformed(evt); + } + }); + + clear.setText("Clear"); + clear.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + clearActionPerformed(evt); + } + }); + + delete.setText("Delete"); + delete.setToolTipText("delete the selected row"); + delete.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + deleteActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(save, javax.swing.GroupLayout.DEFAULT_SIZE, 77, Short.MAX_VALUE) + .addComponent(update, javax.swing.GroupLayout.DEFAULT_SIZE, 77, Short.MAX_VALUE) + .addComponent(clear, javax.swing.GroupLayout.DEFAULT_SIZE, 77, Short.MAX_VALUE) + .addComponent(delete, javax.swing.GroupLayout.DEFAULT_SIZE, 77, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addComponent(save) + .addGap(18, 18, 18) + .addComponent(delete) + .addGap(18, 18, 18) + .addComponent(update) + .addGap(18, 18, 18) + .addComponent(clear) + .addContainerGap(73, Short.MAX_VALUE)) + ); + + jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Supplier Information", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Arial", 1, 14), new java.awt.Color(0, 102, 153))); // NOI18N + + jLabel1.setText("Supplier ID"); + + jLabel2.setText("Name"); + + jLabel4.setText("Contact"); + + jLabel3.setText("Address"); + + jLabel5.setText("Date "); + + txt_date.setDateFormatString("yyyy-MM-dd"); + + jLabel6.setText("Pro. Name"); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel5) + .addComponent(jLabel4) + .addComponent(jLabel6) + .addComponent(jLabel1) + .addComponent(jLabel2) + .addComponent(jLabel3)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_id, javax.swing.GroupLayout.DEFAULT_SIZE, 196, Short.MAX_VALUE) + .addComponent(txt_address, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 196, Short.MAX_VALUE) + .addComponent(txt_pro_name, javax.swing.GroupLayout.DEFAULT_SIZE, 196, Short.MAX_VALUE) + .addComponent(txt_date, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 196, Short.MAX_VALUE) + .addComponent(txt_contact, javax.swing.GroupLayout.DEFAULT_SIZE, 196, Short.MAX_VALUE) + .addComponent(txt_name, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 196, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel1) + .addComponent(txt_id, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel2) + .addComponent(txt_name, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addComponent(txt_address, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_pro_name, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel6))) + .addComponent(jLabel3)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txt_contact, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel4)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel5) + .addComponent(txt_date, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + client_table.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + client_table.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + client_tableMouseClicked(evt); + } + }); + jScrollPane1.setViewportView(client_table); + + jScrollPane2.setViewportView(jScrollPane1); + + jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Serach Supplier", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 12), new java.awt.Color(0, 51, 153))); // NOI18N + + search.setBackground(new java.awt.Color(153, 204, 255)); + search.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyReleased(java.awt.event.KeyEvent evt) { + searchKeyReleased(evt); + } + }); + + javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); + jPanel3.setLayout(jPanel3Layout); + jPanel3Layout.setHorizontalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addGap(35, 35, 35) + .addComponent(search, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(37, Short.MAX_VALUE)) + ); + jPanel3Layout.setVerticalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addComponent(search, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jMenu3.setText("File"); + jMenu3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenu3ActionPerformed(evt); + } + }); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setText("New"); + jMenu3.add(jMenuItem1); + jMenu3.add(jSeparator1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close.png"))); // NOI18N + jMenuItem2.setText("Close"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu3.add(jMenuItem2); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_E, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setText("Exit"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu3.add(jMenuItem4); + + jMenuBar2.add(jMenu3); + + jMenu4.setText("Edit"); + jMenuBar2.add(jMenu4); + + date.setText("Date"); + jMenuBar2.add(date); + + setJMenuBar(jMenuBar2); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGap(19, 19, 19) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(30, 30, 30) + .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 409, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addGap(20, 20, 20) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) + .addComponent(jScrollPane2, javax.swing.GroupLayout.Alignment.LEADING, 0, 0, Short.MAX_VALUE) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(54, 54, 54) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) + .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + pack(); + }// //GEN-END:initComponents + + private void saveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveActionPerformed + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + //String sql="insert into client_info values(?,?,?,?)"; + String val=((JTextField)txt_date.getDateEditor().getUiComponent()).getText(); + String sql="insert into client_info(id,name,address,contact,datee) values (NULL,'" + txt_name.getText() + "','" + txt_address.getText() + "','" + txt_contact.getText() + "','"+val+ "')"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "Saved"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_saveActionPerformed + + private void deleteActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_deleteActionPerformed + int p=JOptionPane.showConfirmDialog(null, "Do you really want to delete","delete",JOptionPane.YES_NO_OPTION); + if(p==0){ + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + String sql="delete from client_info where id=?"; + try{ + pst=conn.prepareStatement(sql); + pst.setString(1, txt_id.getText()); + pst.execute(); + JOptionPane.showMessageDialog(null, "deleted"); + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + + update_table(); + + } + } + }//GEN-LAST:event_deleteActionPerformed + + private void updateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_updateActionPerformed + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String val=((JTextField)txt_date.getDateEditor().getUiComponent()).getText(); + String sql="update client_info set name='" + txt_name.getText() + "',address='" + txt_address.getText() + "',contact='" + txt_contact.getText() +"',datee='" +val+ "' where id='" + txt_id.getText() + "'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "Updated"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_updateActionPerformed + + private void clearActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_clearActionPerformed + txt_id.setText(""); + txt_name.setText(""); + txt_address.setText(""); + txt_contact.setText(""); + txt_date.setDate(null); + + }//GEN-LAST:event_clearActionPerformed + + private void searchKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_searchKeyReleased + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + + String sql="select * from client_info where name=?"; + pst=conn.prepareStatement(sql); + pst.setString(1, search.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + String add1=rs.getString("id"); + txt_id.setText(add1); + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("address"); + txt_address.setText(add3); + String add4=rs.getString("contact"); + txt_contact.setText(add4); + + } + }catch(Exception e){ + + } + + try{ + String sql="select * from client_info where id=?"; + pst=conn.prepareStatement(sql); + pst.setString(1, search.getText()); + rs=pst.executeQuery(); + if(rs.next()){ + String add1=rs.getString("id"); + txt_id.setText(add1); + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("address"); + txt_address.setText(add3); + String add4=rs.getString("contact"); + txt_contact.setText(add4); + + } + }catch(Exception e){ + + } finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + }//GEN-LAST:event_searchKeyReleased + + private void jMenu3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenu3ActionPerformed + +}//GEN-LAST:event_jMenu3ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + System.exit(0); +}//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + close(); +}//GEN-LAST:event_jMenuItem2ActionPerformed + + private void client_tableMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_client_tableMouseClicked + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + int row=client_table.getSelectedRow(); + String table_click=client_table.getModel().getValueAt(row, 0).toString(); + String sql="select * from client_info where id ='"+table_click+"'"; + pst=conn.prepareStatement(sql); + rs=pst.executeQuery(); + if(rs.next()) + { + String add1=rs.getString("id"); + txt_id.setText(add1); + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("address"); + txt_address.setText(add3); + String add4=rs.getString("contact"); + txt_contact.setText(add4); + + String ad=rs.getObject("datee").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(ad); + txt_date.setDate(dat); + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_client_tableMouseClicked + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + /*if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + }*/ + UIManager.setLookAndFeel("com.jtattoo.plaf.smart.SmartLookAndFeel"); + // UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel"); + //UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel"); + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new Supplier_info().setVisible(true); + } + }); + } + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton clear; + private javax.swing.JTable client_table; + private javax.swing.JMenu date; + private javax.swing.JButton delete; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenu jMenu2; + private javax.swing.JMenu jMenu3; + private javax.swing.JMenu jMenu4; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuBar jMenuBar2; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JScrollPane jScrollPane2; + private javax.swing.JPopupMenu.Separator jSeparator1; + private java.awt.Menu menu1; + private java.awt.Menu menu2; + private java.awt.Menu menu3; + private java.awt.Menu menu4; + private java.awt.MenuBar menuBar1; + private java.awt.MenuBar menuBar2; + private javax.swing.JButton save; + private javax.swing.JTextField search; + private javax.swing.JTextField txt_address; + private javax.swing.JTextField txt_contact; + private com.toedter.calendar.JDateChooser txt_date; + private javax.swing.JTextField txt_id; + private javax.swing.JTextField txt_name; + private javax.swing.JTextField txt_pro_name; + private javax.swing.JButton update; + // End of variables declaration//GEN-END:variables +} diff --git a/ST2-Project-master/src/client_info.form b/ST2-Project-master/src/client_info.form new file mode 100644 index 0000000..42e3ed0 --- /dev/null +++ b/ST2-Project-master/src/client_info.form @@ -0,0 +1,642 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ diff --git a/ST2-Project-master/src/client_info.java b/ST2-Project-master/src/client_info.java new file mode 100644 index 0000000..78883dc --- /dev/null +++ b/ST2-Project-master/src/client_info.java @@ -0,0 +1,994 @@ + + + +import com.sun.java.swing.plaf.windows.WindowsTreeUI.CollapsedIcon; +import java.awt.*; +import java.awt.event.KeyEvent; +import java.awt.event.WindowEvent; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.*; +import net.proteanit.sql.DbUtils; +import java.util.Calendar; +import java.util.GregorianCalendar; + + +public class client_info extends javax.swing.JFrame { + + Connection conn=null; + ResultSet rs=null; + PreparedStatement pst=null; + public client_info() + { + initComponents(); + + set_client_id(); + + update_table(); + + + } + public void close(){ + WindowEvent winclosingevent=new WindowEvent(this,WindowEvent.WINDOW_CLOSING); + Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(winclosingevent); + } + + private void set_client_id() + { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try { + + String sql="select max_id from variable_table"; + pst=(PreparedStatement) conn.prepareStatement(sql); + System.out.println("aaaaaaa"); + rs=pst.executeQuery(sql); + System.out.println("cfjl"); + if(rs.next()) + { + int num=rs.getInt(1) + 1; + txt_id.setText(""+num); + } + }catch(Exception e) { + System.out.println("max id te exception "+e); + } + + try { + conn.close(); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + + } + + private void update_table() { + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String sql="select id,name,address,contact,datee from client_info"; + pst=conn.prepareStatement(sql); + rs=pst.executeQuery(); + client_table.setModel(DbUtils.resultSetToTableModel(rs)); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close(); + System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + } + + public void Searching(){ + + int flg=0; + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + + String sql="select * from client_info where name=?"; + pst=conn.prepareStatement(sql); + pst.setString(1, search.getText()); + rs=pst.executeQuery(); + if(rs.next() ){ + flg=1; + String add1=rs.getString("id"); + txt_id.setText(add1); + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("address"); + txt_address.setText(add3); + String add4=rs.getString("contact"); + txt_contact.setText(add4); + + String ad=rs.getObject("datee").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(ad); + txt_date.setDate(dat); + + } + else { + set_client_id(); + + txt_name.setText(""); + txt_address.setText(""); + txt_contact.setText(""); + txt_date.setDate(null); + } + }catch(Exception e){ + + } + + try{ + String sql="select * from client_info where id=?"; + pst=conn.prepareStatement(sql); + pst.setString(1, search.getText()); + rs=pst.executeQuery(); + if(rs.next() && flg==0){ + String add1=rs.getString("id"); + txt_id.setText(add1); + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("address"); + txt_address.setText(add3); + String add4=rs.getString("contact"); + txt_contact.setText(add4); + + String ad=rs.getObject("datee").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(ad); + txt_date.setDate(dat); + + } + else if(flg==0){ + flg=1; + set_client_id(); + + txt_name.setText(""); + txt_address.setText(""); + txt_contact.setText(""); + txt_date.setDate(null); + } + + }catch(Exception e){ + + } finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + + } + + + + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() { + + menuBar1 = new java.awt.MenuBar(); + menu1 = new java.awt.Menu(); + menu2 = new java.awt.Menu(); + menuBar2 = new java.awt.MenuBar(); + menu3 = new java.awt.Menu(); + menu4 = new java.awt.Menu(); + jPanel1 = new javax.swing.JPanel(); + update = new javax.swing.JButton(); + save = new javax.swing.JButton(); + clear = new javax.swing.JButton(); + delete = new javax.swing.JButton(); + jButton1 = new javax.swing.JButton(); + jPanel2 = new javax.swing.JPanel(); + jLabel1 = new javax.swing.JLabel(); + txt_address = new javax.swing.JTextField(); + jLabel2 = new javax.swing.JLabel(); + txt_id = new javax.swing.JTextField(); + jLabel4 = new javax.swing.JLabel(); + txt_name = new javax.swing.JTextField(); + jLabel3 = new javax.swing.JLabel(); + txt_contact = new javax.swing.JTextField(); + jLabel5 = new javax.swing.JLabel(); + txt_date = new com.toedter.calendar.JDateChooser(); + jScrollPane2 = new javax.swing.JScrollPane(); + jScrollPane1 = new javax.swing.JScrollPane(); + client_table = new javax.swing.JTable(); + jPanel3 = new javax.swing.JPanel(); + search = new javax.swing.JTextField(); + jLabel6 = new javax.swing.JLabel(); + jToolBar2 = new javax.swing.JToolBar(); + jButton8 = new javax.swing.JButton(); + jButton2 = new javax.swing.JButton(); + jButton3 = new javax.swing.JButton(); + jButton4 = new javax.swing.JButton(); + jButton5 = new javax.swing.JButton(); + jButton6 = new javax.swing.JButton(); + jButton9 = new javax.swing.JButton(); + jButton7 = new javax.swing.JButton(); + jButton10 = new javax.swing.JButton(); + jMenuBar1 = new javax.swing.JMenuBar(); + jMenu1 = new javax.swing.JMenu(); + jMenuItem1 = new javax.swing.JMenuItem(); + jMenuItem2 = new javax.swing.JMenuItem(); + jMenuItem3 = new javax.swing.JMenuItem(); + jMenuItem4 = new javax.swing.JMenuItem(); + jMenuItem5 = new javax.swing.JMenuItem(); + + menu1.setLabel("File"); + menuBar1.add(menu1); + + menu2.setLabel("Edit"); + menuBar1.add(menu2); + + menu3.setLabel("File"); + menuBar2.add(menu3); + + menu4.setLabel("Edit"); + menuBar2.add(menu4); + + setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); + + jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Options", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(0, 51, 153))); // NOI18N + + update.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/update.png"))); // NOI18N + update.setText("Update"); + update.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + updateActionPerformed(evt); + } + }); + + save.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/add.png"))); // NOI18N + save.setText("Save"); + save.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + saveActionPerformed(evt); + } + }); + + clear.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/clear.png"))); // NOI18N + clear.setText("Clear"); + clear.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + clearActionPerformed(evt); + } + }); + + delete.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close.png"))); // NOI18N + delete.setText("Delete"); + delete.setToolTipText("delete the selected row"); + delete.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + deleteActionPerformed(evt); + } + }); + + jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print-icon.png"))); // NOI18N + jButton1.setText("Print"); + jButton1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton1ActionPerformed(evt); + } + }); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(save, javax.swing.GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE) + .addComponent(update, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(clear, javax.swing.GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE) + .addComponent(delete, javax.swing.GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE) + .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addComponent(save) + .addGap(18, 18, 18) + .addComponent(delete) + .addGap(18, 18, 18) + .addComponent(update) + .addGap(18, 18, 18) + .addComponent(clear) + .addGap(18, 18, 18) + .addComponent(jButton1) + .addGap(32, 32, 32)) + ); + + jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Client Information", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Arial", 1, 14), new java.awt.Color(0, 102, 153))); // NOI18N + + jLabel1.setText("Client ID"); + + jLabel2.setText("Name"); + + txt_id.setEditable(false); + + jLabel4.setText("Contact"); + + jLabel3.setText("Address"); + + jLabel5.setText("Date "); + + txt_date.setDateFormatString("yyyy-MM-dd"); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel1) + .addComponent(jLabel2) + .addComponent(jLabel3) + .addComponent(jLabel4) + .addComponent(jLabel5)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_date, javax.swing.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE) + .addComponent(txt_contact, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE) + .addComponent(txt_address, javax.swing.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE) + .addComponent(txt_name, javax.swing.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE) + .addComponent(txt_id, javax.swing.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE)) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel1) + .addComponent(txt_id, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel2) + .addComponent(txt_name, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addComponent(jLabel3) + .addGap(47, 47, 47) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel4) + .addComponent(txt_contact, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addComponent(txt_address, javax.swing.GroupLayout.PREFERRED_SIZE, 49, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 34, Short.MAX_VALUE) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel5) + .addComponent(txt_date, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap()) + ); + + client_table.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + client_table.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + client_tableMouseClicked(evt); + } + }); + jScrollPane1.setViewportView(client_table); + + jScrollPane2.setViewportView(jScrollPane1); + + jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Serach", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 1, 14), new java.awt.Color(0, 51, 153))); // NOI18N + + search.setBackground(new java.awt.Color(153, 204, 255)); + search.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + searchActionPerformed(evt); + } + }); + search.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyReleased(java.awt.event.KeyEvent evt) { + searchKeyReleased(evt); + } + }); + + jLabel6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + + javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); + jPanel3.setLayout(jPanel3Layout); + jPanel3Layout.setHorizontalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addGap(4, 4, 4) + .addComponent(jLabel6) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(search, javax.swing.GroupLayout.PREFERRED_SIZE, 161, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + jPanel3Layout.setVerticalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(search, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel6)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + + jToolBar2.setRollover(true); + + jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/1-Normal-Home-icon.png"))); // NOI18N + jButton8.setText("Home"); + jButton8.setFocusable(false); + jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton8.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton8ActionPerformed(evt); + } + }); + jToolBar2.add(jButton8); + + jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new32.png"))); // NOI18N + jButton2.setText("New Client"); + jButton2.setFocusable(false); + jButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar2.add(jButton2); + + jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon.png"))); // NOI18N + jButton3.setText("Transaction"); + jButton3.setFocusable(false); + jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton3.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jButton3MouseClicked(evt); + } + }); + jButton3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton3ActionPerformed(evt); + } + }); + jToolBar2.add(jButton3); + + jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon.png"))); // NOI18N + jButton4.setText("Collection"); + jButton4.setFocusable(false); + jButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton4.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton4ActionPerformed(evt); + } + }); + jToolBar2.add(jButton4); + + jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/print32.png"))); // NOI18N + jButton5.setText("Print"); + jButton5.setFocusable(false); + jButton5.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton5.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton5.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton5.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton5.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton5ActionPerformed(evt); + } + }); + jToolBar2.add(jButton5); + + jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Calendar-icon.png"))); // NOI18N + jButton6.setText("Calender"); + jButton6.setFocusable(false); + jButton6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton6.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jButton6.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton6ActionPerformed(evt); + } + }); + jToolBar2.add(jButton6); + + jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Button-Refresh-icon.png"))); // NOI18N + jButton9.setText("Refresh"); + jButton9.setFocusable(false); + jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar2.add(jButton9); + + jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/search-icon.png"))); // NOI18N + jButton7.setText("Search"); + jButton7.setFocusable(false); + jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton7.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton7.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton7.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar2.add(jButton7); + + jButton10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close32.png"))); // NOI18N + jButton10.setText("Close"); + jButton10.setFocusable(false); + jButton10.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + jButton10.setMaximumSize(new java.awt.Dimension(57, 57)); + jButton10.setMinimumSize(new java.awt.Dimension(57, 57)); + jButton10.setPreferredSize(new java.awt.Dimension(57, 57)); + jButton10.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar2.add(jButton10); + + jMenu1.setText("Option"); + + jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_H, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/house-icon.png"))); // NOI18N + jMenuItem1.setText("Home"); + jMenuItem1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem1ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem1); + + jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/new1.png"))); // NOI18N + jMenuItem2.setText("New Client"); + jMenuItem2.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem2ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem2); + + jMenuItem3.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_T, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/money-icon (1).png"))); // NOI18N + jMenuItem3.setText("Transection"); + jMenuItem3.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem3ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem3); + + jMenuItem4.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/Collection-2-icon (1).png"))); // NOI18N + jMenuItem4.setText("Collection"); + jMenuItem4.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem4ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem4); + + jMenuItem5.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_C, java.awt.event.InputEvent.ALT_MASK | java.awt.event.InputEvent.CTRL_MASK)); + jMenuItem5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Data/close1.png"))); // NOI18N + jMenuItem5.setText("Close"); + jMenuItem5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jMenuItem5MouseClicked(evt); + } + }); + jMenuItem5.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jMenuItem5ActionPerformed(evt); + } + }); + jMenu1.add(jMenuItem5); + + jMenuBar1.add(jMenu1); + + setJMenuBar(jMenuBar1); + + 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(19, 19, 19) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addGap(18, 18, 18) + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE) + .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 425, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(jToolBar2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addComponent(jToolBar2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jScrollPane2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 412, Short.MAX_VALUE) + .addGroup(layout.createSequentialGroup() + .addGap(17, 17, 17) + .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(50, 50, 50) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 270, Short.MAX_VALUE) + .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))) + .addGap(32, 32, 32)) + ); + + java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); + setBounds((screenSize.width-844)/2, (screenSize.height-547)/2, 844, 547); + }// //GEN-END:initComponents + + private void saveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveActionPerformed + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + //max_id upadate + + String sql="select max_id from variable_table"; + pst=(PreparedStatement) conn.prepareStatement(sql); + rs=pst.executeQuery(sql); + int num=0; + if(rs.next()) + { + num=rs.getInt(1)+1; + sql="UPDATE variable_table SET max_id='" + num +"'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + } + num++; + + + String val=((JTextField)txt_date.getDateEditor().getUiComponent()).getText(); + sql="insert into client_info(id,name,address,contact,datee) values (NULL,'" + txt_name.getText() + "','" + txt_address.getText() + "','" + txt_contact.getText() + "','"+val+ "')"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "Saved"); + + txt_id.setText(""+num); //String sql="insert into client_info values(?,?,?,?)"; + txt_name.setText(""); + txt_address.setText(""); + txt_contact.setText(""); + txt_date.setDate(null); + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close(); + System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_saveActionPerformed + + private void deleteActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_deleteActionPerformed + int p=JOptionPane.showConfirmDialog(null, "Do you really want to delete","delete",JOptionPane.YES_NO_OPTION); + if(p==0){ + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + String sql="delete from client_info where id=?"; + try{ + pst=conn.prepareStatement(sql); + pst.setString(1, txt_id.getText()); + pst.execute(); + JOptionPane.showMessageDialog(null, "deleted"); + + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + + update_table(); + + } + } + }//GEN-LAST:event_deleteActionPerformed + + private void updateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_updateActionPerformed + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + String val=((JTextField)txt_date.getDateEditor().getUiComponent()).getText(); + String sql="update client_info set name='" + txt_name.getText() + "',address='" + txt_address.getText() + "',contact='" + txt_contact.getText() +"',datee='" +val+ "' where id='" + txt_id.getText() + "'"; + pst=(PreparedStatement) conn.prepareStatement(sql); + pst.execute(); + JOptionPane.showMessageDialog(null, "Updated"); + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_updateActionPerformed + + private void clearActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_clearActionPerformed + + set_client_id(); + + txt_name.setText(""); + txt_address.setText(""); + txt_contact.setText(""); + txt_date.setDate(null); + + }//GEN-LAST:event_clearActionPerformed + + private void client_tableMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_client_tableMouseClicked + + PreparedStatement pst; + + DataBase_connect obj=new DataBase_connect(); + + Connection conn=obj.Open(); + + try{ + int row=client_table.getSelectedRow(); + String table_click=client_table.getModel().getValueAt(row, 0).toString(); + String sql="select * from client_info where id ='"+table_click+"'"; + pst=conn.prepareStatement(sql); + rs=pst.executeQuery(); + if(rs.next()) + { + String add1=rs.getString("id"); + txt_id.setText(add1); + String add2=rs.getString("name"); + txt_name.setText(add2); + String add3=rs.getString("address"); + txt_address.setText(add3); + String add4=rs.getString("contact"); + txt_contact.setText(add4); + + String ad=rs.getObject("datee").toString(); + java.util.Date dat = new SimpleDateFormat("yyyy-MM-dd").parse(ad); + txt_date.setDate(dat); + } + }catch(Exception e){ + JOptionPane.showMessageDialog(null, e); + }finally { + try { + conn.close();System.out.println("disconnected"); + } catch (SQLException ex) { + Logger.getLogger(client_info.class.getName()).log(Level.SEVERE, null, ex); + } + } + + update_table(); + + }//GEN-LAST:event_client_tableMouseClicked + + private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed + + MessageFormat header=new MessageFormat("Report Print"); + MessageFormat footer=new MessageFormat("Page{0,number,integer}"); + try{ + client_table.print(JTable.PrintMode.NORMAL,header,footer); + }catch(Exception e){ + + } + + }//GEN-LAST:event_jButton1ActionPerformed + + private void jMenuItem5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jMenuItem5MouseClicked + System.exit(0); +}//GEN-LAST:event_jMenuItem5MouseClicked + + private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem5ActionPerformed + System.exit(0); +}//GEN-LAST:event_jMenuItem5ActionPerformed + + private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed + + this.dispose(); + + new Delivery().setVisible(true); + + }//GEN-LAST:event_jButton3ActionPerformed + + private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed + + this.dispose(); + + new Collection_tab().setVisible(true); + + }//GEN-LAST:event_jButton4ActionPerformed + + private void jButton3MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jButton3MouseClicked + this.dispose(); + new Delivery().setVisible(true); + }//GEN-LAST:event_jButton3MouseClicked + + private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jButton8ActionPerformed + + private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed + this.dispose(); + new HomePage().setVisible(true); + }//GEN-LAST:event_jMenuItem1ActionPerformed + + private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem4ActionPerformed + this.dispose(); + + new Collection().setVisible(true); + }//GEN-LAST:event_jMenuItem4ActionPerformed + + private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem3ActionPerformed + this.dispose(); + + new Delivery().setVisible(true); + }//GEN-LAST:event_jMenuItem3ActionPerformed + + private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed + this.dispose(); + + new client_info().setVisible(true); + }//GEN-LAST:event_jMenuItem2ActionPerformed + + private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed + + this.dispose(); + + new MyCalender().setVisible(true); + + }//GEN-LAST:event_jButton6ActionPerformed + + private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed + + this.dispose(); + + new Client_page().setVisible(true); + + }//GEN-LAST:event_jButton5ActionPerformed + + private void searchKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_searchKeyReleased + Searching(); + }//GEN-LAST:event_searchKeyReleased + + private void searchActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_searchActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_searchActionPerformed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + /*if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + }*/ + //UIManager.setLookAndFeel("com.jtattoo.plaf.smart.SmartLookAndFeel"); + //UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel"); + UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel"); + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new client_info().setVisible(true); + } + }); + } + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton clear; + private javax.swing.JTable client_table; + private javax.swing.JButton delete; + private javax.swing.JButton jButton1; + private javax.swing.JButton jButton10; + private javax.swing.JButton jButton2; + private javax.swing.JButton jButton3; + private javax.swing.JButton jButton4; + private javax.swing.JButton jButton5; + private javax.swing.JButton jButton6; + private javax.swing.JButton jButton7; + private javax.swing.JButton jButton8; + private javax.swing.JButton jButton9; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JMenu jMenu1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JMenuItem jMenuItem1; + private javax.swing.JMenuItem jMenuItem2; + private javax.swing.JMenuItem jMenuItem3; + private javax.swing.JMenuItem jMenuItem4; + private javax.swing.JMenuItem jMenuItem5; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JScrollPane jScrollPane2; + private javax.swing.JToolBar jToolBar2; + private java.awt.Menu menu1; + private java.awt.Menu menu2; + private java.awt.Menu menu3; + private java.awt.Menu menu4; + private java.awt.MenuBar menuBar1; + private java.awt.MenuBar menuBar2; + private javax.swing.JButton save; + private javax.swing.JTextField search; + private javax.swing.JTextField txt_address; + private javax.swing.JTextField txt_contact; + private com.toedter.calendar.JDateChooser txt_date; + private javax.swing.JTextField txt_id; + private javax.swing.JTextField txt_name; + private javax.swing.JButton update; + // End of variables declaration//GEN-END:variables +} diff --git a/ST2-Project-master/src/strtActivity.java b/ST2-Project-master/src/strtActivity.java new file mode 100644 index 0000000..5510421 --- /dev/null +++ b/ST2-Project-master/src/strtActivity.java @@ -0,0 +1,159 @@ +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.swing.*; +import java.awt.*; + + + +public class strtActivity extends JFrame { + + private String sss="Loading."; + private JFrame preloaderFrame; + private Container preloaderContainer; + private GridBagLayout preloaderLayout; + private GridBagConstraints preloaderConstraints; + private JLabel picJLabel = new JLabel(); + public static JLabel statusJLabel = new JLabel(); + private int picWidth, picHeight, x, y; + private static strtActivity frm; + private JLayeredPane layeredPane = new JLayeredPane(); + private Color fontcolororg = new Color(255, 197, 110, 255); + private Color fontcolorgray = new Color(124, 121, 118, 255); + + public strtActivity() { + + preloaderFrame = new JFrame("DataBase Project"); + preloaderFrame.setUndecorated(true); + preloaderFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + preloaderLayout = new GridBagLayout(); + preloaderConstraints = new GridBagConstraints(); + preloaderContainer = getContentPane(); + preloaderContainer.setLayout(preloaderLayout); + + layeredPane.setPreferredSize(new Dimension(435, 262)); + + Icon bug = new ImageIcon(getClass().getResource("/Data/preloader.png"), "Loading..."); + picJLabel = new JLabel(bug); + Font picJLabelfont = new java.awt.Font("Arial", 1, 18); + + picJLabel.setVerticalAlignment(JLabel.TOP); + picJLabel.setHorizontalAlignment(JLabel.LEFT); + //picJLabel.setBackground(Color.black); + //picJLabel.setForeground(fontcolororg); + //picJLabel.setBorder(BorderFactory.createLineBorder(Color.black)); + picJLabel.setBounds(0, 0, 435, 262); //X=232 + picJLabel.setFont(picJLabelfont); + layeredPane.add(picJLabel, new Integer(1)); + + statusJLabel = new JLabel("Loading.."); + Font statusJLabelfont = new java.awt.Font("Arial", Font.BOLD, 18); + + statusJLabel.setVerticalAlignment(JLabel.TOP); + statusJLabel.setHorizontalAlignment(JLabel.LEFT); + statusJLabel.setBackground(Color.black); + statusJLabel.setForeground(Color.white);//(fontcolorgray); + //statusJLabel.setBorder(BorderFactory.createLineBorder(Color.black)); + statusJLabel.setBounds(190, 225, 200, 40); //X=232 + statusJLabel.setFont(picJLabelfont); + layeredPane.add(statusJLabel, new Integer(2)); + + addComponent(layeredPane, 0, 0, 1, 1, 0, 0, GridBagConstraints.NONE); + preloaderFrame.add(preloaderContainer); + + + picHeight = bug.getIconHeight(); + picWidth = bug.getIconWidth(); + + Toolkit k = this.getToolkit(); + Dimension dim = k.getScreenSize(); + x = (int) (dim.width / 2) - (int) (picWidth / 2); + y = (int) (dim.height / 2) - (int) (picHeight / 2); + preloaderFrame.setBounds(x, y, picWidth, picHeight); + preloaderFrame.setVisible(true); + + } + + public void statusUpdate( ){ + sss +="."; + //System.out.println("slsl"); + statusJLabel.setText(sss); + } + + public void loading() + { + Thread t = new Thread(); + t.start(); + + for(int i=0;i<20;i++) + { + this.statusUpdate( ); + + try { + t.sleep(100); + } catch (InterruptedException ex) { + Logger.getLogger(strtActivity.class.getName()).log(Level.SEVERE, null, ex); + } + } + + if (t.isAlive() == false) { + try { + preloaderFrame.dispose(); + + } catch (Exception ex) { + Logger.getLogger(strtActivity.class.getName()).log(Level.SEVERE, null, ex); + } + + } + } + + private void addComponent(Component component, int row, int column, int width, int height, int weightx, int weighty, int fill) + { + preloaderConstraints.fill = fill; + preloaderConstraints.gridx = column; + preloaderConstraints.gridy = row; + + preloaderConstraints.gridwidth = width; + preloaderConstraints.gridheight = height; + + preloaderConstraints.weightx = weightx; + preloaderConstraints.weighty = weighty; + + preloaderConstraints.weightx = weightx; + preloaderConstraints.weighty = weighty; + // set mLoginConstraints and add component + preloaderLayout.setConstraints(component, preloaderConstraints); + preloaderContainer.add(component); + } + + public static void main(String[] args) + { + strtActivity preloaderFrame= new strtActivity(); + + preloaderFrame.loading(); + + try { + + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + /*if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + }*/ + UIManager.setLookAndFeel("com.jtattoo.plaf.smart.SmartLookAndFeel"); + UIManager.setLookAndFeel("com.jtattoo.plaf.acryl.AcrylLookAndFeel"); + UIManager.setLookAndFeel("com.jtattoo.plaf.aero.AeroLookAndFeel"); + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(StockEntry.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + + new Login_Frame().setVisible(true); + + } +} +