CustomerWindow.java~20~
上传用户:liming9091
上传日期:2014-10-27
资源大小:3376k
文件大小:9k
源码类别:

Java编程

开发平台:

Java

  1. package uml_gaokai;
  2. import java.awt.*;
  3. import javax.swing.*;
  4. import com.borland.dx.sql.dataset.*;
  5. import com.borland.dbswing.*;
  6. import com.borland.jbcl.layout.*;
  7. import com.borland.dx.dataset.*;
  8. import java.awt.event.*;
  9. import java.sql.*;
  10. /**
  11.  * <p>Title: </p>
  12.  * <p>Description: </p>
  13.  * <p>Copyright: Copyright (c) 2003</p>
  14.  * <p>Company: </p>
  15.  * @author unascribed
  16.  * @version 1.0
  17.  */
  18. public class CustomerWindow extends JDialog {
  19.   private JPanel panel1 = new JPanel();
  20.   private Database database1 = new Database();
  21.   private JdbTable jdbTable1 = new JdbTable();
  22.   private XYLayout xYLayout1 = new XYLayout();
  23.   private TableScrollPane tableScrollPane1 = new TableScrollPane();
  24.   private JButton jButton1 = new JButton();
  25.   private JButton jButton2 = new JButton();
  26.   private JButton jButton3 = new JButton();
  27.   private JButton jButton4 = new JButton();
  28.   private JButton jButton5 = new JButton();
  29.   private JButton jButton6 = new JButton();
  30.   private Column column1 = new Column();
  31.   private Column column2 = new Column();
  32.   private Column column3 = new Column();
  33.   private QueryDataSet queryDataSet1 = new QueryDataSet();
  34.   private JLabel jLabel1 = new JLabel();
  35.   private JTextField jTextField1 = new JTextField();
  36.   private JLabel jLabel2 = new JLabel();
  37.   private JTextField jTextField2 = new JTextField();
  38.   private JLabel jLabel3 = new JLabel();
  39.   private JTextField jTextField3 = new JTextField();
  40.   private JLabel jLabel4 = new JLabel();
  41.   private JTextField jTextField4 = new JTextField();
  42.   private JLabel jLabel5 = new JLabel();
  43.   private JTextField jTextField5 = new JTextField();
  44.   private JLabel jLabel6 = new JLabel();
  45.   private JTextField jTextField6 = new JTextField();
  46.   private JLabel jLabel7 = new JLabel();
  47.   private JTextField jTextField7 = new JTextField();
  48.   private JLabel jLabel8 = new JLabel();
  49.   private JPasswordField jPasswordField1 = new JPasswordField();
  50.   public CustomerWindow(Frame frame, String title, boolean modal) {
  51.     super(frame, title, modal);
  52.     try {
  53.       jbInit();
  54.       pack();
  55.     }
  56.     catch(Exception ex) {
  57.       ex.printStackTrace();
  58.     }
  59.   }
  60.   public CustomerWindow() {
  61.     this(null, "", false);
  62.   }
  63.   private void jbInit() throws Exception {
  64.     panel1.setLayout(xYLayout1);
  65.     database1.setConnection(new com.borland.dx.sql.dataset.ConnectionDescriptor("jdbc:odbc:gaokaiSQL", "sa", "", false, "sun.jdbc.odbc.JdbcOdbcDriver"));
  66.     jButton1.setText("浏览全部商品信息");
  67.     jButton1.addActionListener(new java.awt.event.ActionListener() {
  68.       public void actionPerformed(ActionEvent e) {
  69.         jButton1_actionPerformed(e);
  70.       }
  71.     });
  72.     jButton2.setText("浏览某种商品");
  73.     jButton2.addActionListener(new java.awt.event.ActionListener() {
  74.       public void actionPerformed(ActionEvent e) {
  75.         jButton2_actionPerformed(e);
  76.       }
  77.     });
  78.     jButton3.setText("购买商品");
  79.     jButton3.addActionListener(new java.awt.event.ActionListener() {
  80.       public void actionPerformed(ActionEvent e) {
  81.         jButton3_actionPerformed(e);
  82.       }
  83.     });
  84.     jButton4.setText("商品预定");
  85.     jButton5.setText("退货处理");
  86.     jButton6.setText("退出");
  87.     jButton6.addActionListener(new java.awt.event.ActionListener() {
  88.       public void actionPerformed(ActionEvent e) {
  89.         jButton6_actionPerformed(e);
  90.       }
  91.     });
  92.     jdbTable1.setToolTipText("");
  93.     column1.setColumnName("GoodsPrice");
  94.     column1.setDataType(com.borland.dx.dataset.Variant.DOUBLE);
  95.     column1.setSchemaName("dbo");
  96.     column1.setTableName("goodsInfo");
  97.     column1.setVisible(com.borland.jb.util.TriStateProperty.DEFAULT);
  98.     column1.setServerColumnName("GoodsPrice");
  99.     column1.setSqlType(6);
  100.     column3.setColumnName("NewColumn1");
  101.     column3.setDataType(com.borland.dx.dataset.Variant.STRING);
  102.     column3.setDefault("");
  103.     column3.setPreferredOrdinal(1);
  104.     column3.setServerColumnName("NewColumn1");
  105.     column3.setSqlType(0);
  106.     jLabel1.setText("商品名");
  107.     jLabel2.setText("商品ID");
  108.     jLabel3.setText("商品数量");
  109.     jLabel4.setText("商品名");
  110.     jLabel5.setText("商品尺码");
  111.     jLabel6.setText("日期");
  112.     jLabel7.setText("客户姓名");
  113.     jLabel8.setText("密码");
  114.     jTextField1.setText("0");
  115.     getContentPane().add(panel1);
  116.     panel1.add(tableScrollPane1,  new XYConstraints(219, 140, -1, -1));
  117.     panel1.add(jButton1, new XYConstraints(-2, 229, 133, 22));
  118.     panel1.add(jdbTable1,            new XYConstraints(2, 0, 542, 222));
  119.     panel1.add(jButton2, new XYConstraints(0, 267, 131, 23));
  120.     panel1.add(jButton5, new XYConstraints(-2, 384, 132, 21));
  121.     panel1.add(jLabel1,  new XYConstraints(136, 268, 39, 21));
  122.     panel1.add(jTextField2, new XYConstraints(178, 268, 65, 21));
  123.     panel1.add(jLabel2,  new XYConstraints(249, 268, 52, 21));
  124.     panel1.add(jTextField1,  new XYConstraints(297, 268, 66, 23));
  125.     panel1.add(jTextField3,  new XYConstraints(431, 309, 65, 21));
  126.     panel1.add(jLabel3,  new XYConstraints(375, 309, -1, 23));
  127.     panel1.add(jLabel4,  new XYConstraints(137, 309, 39, 21));
  128.     panel1.add(jLabel5,      new XYConstraints(249, 309, 50, 22));
  129.     panel1.add(jTextField5,   new XYConstraints(299, 309, 69, 20));
  130.     panel1.add(jButton4,    new XYConstraints(-2, 329, 128, 21));
  131.     panel1.add(jButton3,   new XYConstraints(-1, 307, 127, 22));
  132.     panel1.add(jLabel6,     new XYConstraints(136, 339, 46, 21));
  133.     panel1.add(jTextField6,        new XYConstraints(180, 339, 66, -1));
  134.     panel1.add(jLabel7,    new XYConstraints(249, 339, 50, 21));
  135.     panel1.add(jTextField7,     new XYConstraints(298, 339, 71, 21));
  136.     panel1.add(jLabel8,   new XYConstraints(378, 339, 50, 20));
  137.     panel1.add(jButton6, new XYConstraints(413, 384, 130, 22));
  138.     panel1.add(jPasswordField1,  new XYConstraints(432, 338, 66, 19));
  139.     panel1.add(jTextField4,   new XYConstraints(178, 310, 71, 21));
  140.   }
  141.   //浏览全部商品
  142.   void jButton1_actionPerformed(ActionEvent e) {
  143.     queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, "SELECT [goodsInfo].GoodsID,[goodsInfo].GoodsName,[goodsInfo].GoodsNumber,[goodsInfo].GoodsProduct,[go" +
  144.         "odsInfo].GoodsPrice FROM [UML_CS].[dbo].[goodsInfo]", null, true, Load.ALL));
  145.     jdbTable1.setDataSet(queryDataSet1);
  146.     queryDataSet1.refresh();
  147.   }
  148.   //浏览某种商品
  149.   void jButton2_actionPerformed(ActionEvent e) {
  150.     String GoodsName = String.valueOf(jTextField2.getText()) ;
  151.     int GoodsID = Integer.parseInt(jTextField1.getText()) ;
  152.     if( GoodsName.equals("") && GoodsID == 0){
  153.       JOptionPane.showMessageDialog(null,"请输入商品名或商品ID号,查询商品","",JOptionPane.DEFAULT_OPTION);
  154.     }
  155.     else if( GoodsName.equals("") == false  && GoodsID == 0 ){
  156.       queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, "SELECT [goodsInfo].GoodsID,[goodsInfo].GoodsName,[goodsInfo].GoodsNumber,[goodsInfo].GoodsProduct,[go" +
  157.           "odsInfo].GoodsPrice FROM [UML_CS].[dbo].[goodsInfo] WHERE GoodsName = '"+GoodsName+"'", null, true, Load.ALL));
  158.       jdbTable1.setDataSet(queryDataSet1);
  159.       queryDataSet1.refresh();
  160.     }
  161.     else if( GoodsName.equals("") && GoodsID != 0 ){
  162.       queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, "SELECT [goodsInfo].GoodsID,[goodsInfo].GoodsName,[goodsInfo].GoodsNumber,[goodsInfo].GoodsProduct,[go" +
  163.           "odsInfo].GoodsPrice FROM [UML_CS].[dbo].[goodsInfo] WHERE GoodsID = '"+GoodsID+"'", null, true, Load.ALL));
  164.       jdbTable1.setDataSet(queryDataSet1);
  165.       queryDataSet1.refresh();
  166.     }
  167.   }
  168.   //购买商品
  169.   void jButton3_actionPerformed(ActionEvent e) {
  170.     String goodsName = jTextField4.getText() ; //get the GoodsName
  171.     String goodsSize = jTextField5.getText() ; //get the goodsSize
  172.     String goodsCustomNumber = jTextField3.getText() ; //get the goodsCustomNumber
  173.     String venditionDate = jTextField6.getText() ; //get the venditionDate
  174.     String customerName = jTextField7.getText() ; // get the userName
  175.     String testPassword = String.valueOf(jPasswordField1.getPassword()) ; // get the passward
  176.     String userPassword = null ;
  177.     Statement sql = database1.createStatement() ;
  178.     try{
  179.       ResultSet rs = sql.executeQuery("SELECT userPassword FROM [UML_CS].[dbo].[user] WHERE userName = '"+customerName+"'") ;
  180.       while(rs.next()){
  181.         userPassword = rs.getString("userPassword") ;
  182.       }
  183.       //检验用户正确性
  184.       if(userPassword.equals(testPassword) == false){
  185.         JOptionPane.showMessageDialog(null,"您输入的密码不正确,请重试","verify password" , JOptionPane.DEFAULT_OPTION);
  186.       }
  187.       else{
  188.         JOptionPane.showMessageDialog(null,"success","",JOptionPane.DEFAULT_OPTION);
  189.         sql.executeUpdate("INSERT INTO [UML_CS].[dbo].[user](GoodsName,GoodSize,GoodsCustomNumber,VenditionDate,CustomerName) VALUES('"+goodsName+"','"+goodsSize+"','"+goodsCustomNumber+"','"+venditionDate+"','"+customerName+"')") ;
  190.         queryDataSet1.setQuery(new com.borland.dx.sql.dataset.QueryDescriptor(database1, "SELECT * FROM [UML_CS].[dbo].[vendition_TABLE] WHERE CustomerName = '"+customerName+"'", null, true, Load.ALL));
  191.         jdbTable1.setDataSet(queryDataSet1);
  192.         queryDataSet1.refresh();
  193.         queryDataSet1.close() ;
  194.       }
  195.     }
  196.     catch(SQLException www){
  197.       www.printStackTrace();
  198.     }
  199.   }
  200.   void jButton6_actionPerformed(ActionEvent e) {
  201.     dispose() ;
  202.   }
  203. }