⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sell.java

📁 中小型书店管理系统,主要是为了方便书店的管理而编写的管理系统.
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.*;
import javax.swing.*;
import java.text.SimpleDateFormat;
import java.text.DecimalFormat;

public class Sell extends JFrame
{	
    private JLabel label1,label2,label3,label4,label5,label6,label7,label8,label9,label10,label11,label12,label13;
   
    private JButton button1,button2;
    private JTextField textField1,textField2,textField3,textField4,textField5,textField6,textField7,textField8,textField9,textField10;
    private JPanel panel1,panel2;
    private GridBagLayout layout;
    private GridBagConstraints constraints;
    private Container container;
    private JTable table;
    private String book_id,quantity,url,discount,vipnum,trade_date,trade_id,vip_discount="100",getmoney,vip_total;
    private Connection connection;
    private Statement statement;
    private Boolean b1=true;
   	private float total,charge=0;
   	private DecimalFormat twodigits;
   	
    public Sell()
    {
    	super("店员界面");
    	
    	twodigits = new DecimalFormat("0.00");
    	
    	JMenu fileMenu = new JMenu( "菜单" );
		fileMenu.setMnemonic( 'F' );
		
		JMenuItem queryItem = new JMenuItem( "查询系统" );
		queryItem.setMnemonic( 'Q' );
		
		queryItem.addActionListener(
			new ActionListener() {
				public void actionPerformed( ActionEvent event )
				{
					Query application = new Query();
				}
			}
		);
		
		fileMenu.add( queryItem );
		
		 
	
		
		JMenuItem vipItem=new JMenuItem("VIP管理");
		vipItem.setMnemonic('V');
		
		vipItem.addActionListener(
			new ActionListener(){
				public void actionPerformed(ActionEvent event)
				{
					Vip application=new Vip();
				}
			}
		);
		fileMenu.add(vipItem);
		
					
		JMenuItem exitItem = new JMenuItem( "退出" );
		exitItem.setMnemonic( 'X' );
		
		exitItem.addActionListener(
			new ActionListener() {
				public void actionPerformed( ActionEvent event )
				{
					System.exit( 0 );
				}
			}
		);
		
		fileMenu.add( exitItem );
		
		JMenuBar bar = new JMenuBar();
		setJMenuBar( bar );
		bar.add( fileMenu );
    	
    	
    	container=getContentPane();
    	table=new JTable();
    	
    	
    	label1=new JLabel("编号");
    	//label2=new JLabel("单价");
    	label3=new JLabel("折扣");
    	//label4=new JLabel("书名");
    	label5=new JLabel("数量");
    	label6=new JLabel("VIP折扣");
    	//label7=new JLabel("年");
    	//label8=new JLabel("月");
    	//label9=new JLabel("日");
    	label10=new JLabel("VIP号");
    	label11=new JLabel("应付");
    	label12=new JLabel("实付");
    	label13=new JLabel("找零");
    	
    	textField1=new JTextField(4);
    	//textField2=new JTextField(4);
    	textField3=new JTextField(4);
    	//textField4=new JTextField(11);
    	textField5=new JTextField(4);
    	textField6=new JTextField(4);
    	textField6.setEditable(false);
    	textField7=new JTextField(4);
    	textField8=new JTextField(4);
    	textField8.setEditable(false);
    	textField9=new JTextField(4);
    	textField10=new JTextField(4);
    	textField10.setEditable(false);
    	
    	textField3.setText("100");
    	textField5.setText("1");
    	textField7.setText("0");
    	
    	
    	
    	
    	button1=new JButton("添加");
    	button2=new JButton("结帐");
    	
    	layout = new GridBagLayout();
    	
    	
    	panel1=new JPanel();
        panel2=new JPanel();
        
        panel1.setLayout( layout );
        panel2.setLayout( layout );
        
        constraints = new GridBagConstraints();
    	
    	
    	addComponent(label1,1,0,0,2,1);
    	addComponent(textField1,1,0,2,2,1);
    	addComponent(label5,1,0,4,2,1);
    	addComponent(textField5,1,0,6,2,1);
        addComponent(label3,1,0,8,2,1);
        addComponent(textField3,1,0,10,2,1);
        //addComponent(label2,1,1,0,2,1);
        //addComponent(textField2,1,1,2,2,1);
        //addComponent(label4,1,1,4,2,1);
       // addComponent(textField4,1,1,6,7,1);
        
        addComponent(label6,2,0,0,8,1);
        addComponent(textField6,2,0,6,2,1);
       // addComponent(label7,2,10,4,1,1);
      //  addComponent(box1,2,10,5,2,1);
      //  addComponent(label8,2,10,7,1,1);
       // addComponent(box2,2,10,8,2,1);
       // addComponent(label9,2,10,10,1,1);
        addComponent(label10,1,0,12,2,1);
        addComponent(textField7,1,0,14,2,1);
        addComponent(label11,2,1,0,2,1);
        addComponent(textField8,2,1,2,2,1);
        addComponent(label12,2,1,4,2,1);
        addComponent(textField9,2,1,6,2,1);
        addComponent(label13,2,1,8,2,1);
        addComponent(textField10,2,1,10,2,1);
        addComponent(button1,1,1,4,9,2);
        addComponent(button2,2,1,12,2,1);	
    	
        container.add(panel1,BorderLayout.NORTH);
        container.add(panel2,BorderLayout.SOUTH);
        //container.add(table,BorderLayout.CENTER);
    
    
        button1.addActionListener(
			new ActionListener() {
				public void actionPerformed( ActionEvent event )
				{
				//	textField1.setText("");
					
					
					textField9.setText("");
					textField10.setText("");
					total = 0;
					book_id = textField1.getText();
					quantity = textField5.getText();
					discount = textField3.getText();
					vipnum = textField7.getText();
					try{ 
						Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ); 
						url = "jdbc:odbc:myaccess"; 
						connection = DriverManager.getConnection( url ); 
						statement = connection.createStatement();
						
					}
					catch( Exception ex ){ 
						System.out.println( ex );
					}
				
					int y,m,d; 
					Calendar cal=Calendar.getInstance(); 
					y=cal.get(Calendar.YEAR); 
					m=cal.get(Calendar.MONTH); 
					d=cal.get(Calendar.DATE); 
					trade_date=new String();
					trade_date=y+"/"+m+"/"+d;
                    System.out.println( trade_date );
				
			       try{    if(b1){  
			       
			       		    String sql1 = "Insert into Trade( Trade_date,Buyer ) Values('"
										+ trade_date + "'," + vipnum +")";
							statement.executeUpdate( sql1);
							b1=false;
						    if(vipnum.compareTo( "0" ) != 0 )
						    {
							String sql5="Select discount from VIP where Vip_id="+vipnum;
							ResultSet rs2 = statement.executeQuery(sql5);
						    rs2.next();
						    ResultSetMetaData rsmd2= rs2.getMetaData();
						    vip_discount= new String();
						    vip_discount = rs2.getString("discount");
						    textField6.setText(vip_discount);
							System.out.println( vip_discount);
							}
							
							textField7.setEditable(false);
						   }
							
						    String sql3="Select Trade_id from Trade where trade_id>=all(select Trade_id from Trade)";
						    
						    ResultSet rs1 = statement.executeQuery(sql3);
						    rs1.next();
						    ResultSetMetaData rsmd1 = rs1.getMetaData();
						    String trade_id = new String();
						    trade_id = rs1.getString("trade_id");
						    System.out.println( trade_id);
						   
						    String sql2 = "Insert into Trade_book( Trade_id, Book_id, count,discount) Values("
									+ trade_id + ",'" + book_id + "'," + quantity+ "," + discount + ")";
					 	    statement.executeUpdate( sql2);
					 	   
					 	   	
							String sql4="Select B.Book_id,B.Book_name,B.Price,T.count,T.discount,B.Price*T.count*T.discount/100 as xiaoji from Book_info B,Trade_book T where T.Book_id=B.Book_id and T.Trade_id="+trade_id;
							
							ResultSet rs= statement.executeQuery(sql4);       
							boolean moreRecords = rs.next();      // 定位到第一条记录
						    if ( !moreRecords ){
     							JOptionPane.showMessageDialog( null,"对不起,没有你要找的!" );
      						}
      						else{
      							Vector columnHeads = new Vector();
								Vector rows = new Vector();
								
								ResultSetMetaData rsmd = rs.getMetaData();
								for( int i = 1; i <= rsmd.getColumnCount(); i++ ){
									columnHeads.addElement( rsmd.getColumnName( i ) );
								}
								do{
									rows.addElement( getNextRow( rs, rsmd ) );
								}while( rs.next() );
								table = new JTable( rows, columnHeads );
							}
							total = total*Float.parseFloat(vip_discount)/100;	
							textField8.setText(""+twodigits.format(total));
							
							container.add( table, BorderLayout.CENTER );
							
							container.add( new JScrollPane( table,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED ) );
							table.repaint();
							container.validate();
							rs.close(); 
							connection.close();
						}
						catch( Exception ex ){ 
							System.out.println( ex ); 
						}
					}
				}
		);
    
    
        button2.addActionListener(
			new ActionListener() {
				public void actionPerformed( ActionEvent event )
				{   
					getmoney= textField9.getText();
					charge = Float.parseFloat(getmoney)-total;
					textField10.setText(""+twodigits.format(charge));
					
				
					if(vipnum.compareTo( "0" ) != 0 )
					{
					try{
						Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" ); 
						url = "jdbc:odbc:myaccess"; 
						connection = DriverManager.getConnection( url ); 
						statement = connection.createStatement();
						String sql="Select total from VIP where Vip_id="+vipnum;
						ResultSet rs = statement.executeQuery(sql);
						rs.next();
						ResultSetMetaData rsmd= rs.getMetaData();
						vip_total= new String();
						vip_total = rs.getString("total");
						total +=Float.parseFloat(vip_total);	    
						String sql1="Update VIP set total = "+ total + " where Vip_id = " + vipnum;
						statement.executeUpdate( sql1);
						rs.close();
						connection.close();	
			        }
					catch( Exception ex ){ 
				    System.out.println( ex );
					}
					}
					
					textField7.setEditable(true);
					b1=true;  	
					   
				}
			}	
		);
					
    	setSize(500,450);
    	setVisible(true);
    }
    
     private Vector getNextRow( ResultSet rs,ResultSetMetaData rsmd ) throws SQLException{
      Vector currentRow = new Vector();
      int i;
      for (  i = 1; i < rsmd.getColumnCount(); i++ )
      	 currentRow.addElement( rs.getString(i) );

      String aa = new String(rs.getString(i));
      currentRow.addElement( aa );
      total += Float.parseFloat(aa);
      return currentRow;      //返回一条记录
   }
    private void addComponent(Component component,int panel,int row,int column,int width,int height)
    {
    	constraints.gridx=column;
    	constraints.gridy=row;
    	
    	constraints.gridwidth=width;
    	constraints.gridheight=height;
    	
    	layout.setConstraints(component,constraints);
    	if( panel == 1 ) panel1.add( component );
		if( panel == 2 ) panel2.add( component );
	
    }
    public static void main(String args[])
    {
	Sell application=new Sell();
	
	application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	
}	  	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -