商场管理系统原创代码

来源:互联网 发布:数据库表的设计的规范 编辑:程序博客网 时间:2024/05/01 14:30
//代表各的主页面package com.gui;import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.io.*;import java.nio.channels.ClosedSelectorException;import java.sql.*;import javax.swing.JFileChooser;import javax.swing.plaf.ScrollBarUI;import javax.swing.table.DefaultTableColumnModel;import javax.swing.table.DefaultTableModel;import com.DateSystem.Good_data;import com.DateSystem.Goods;import com.DateSystem.Userdate;import java.util.List;public class Main extends JFrame implements ActionListener,AdjustmentListener{/** * @param args *///主窗体组件MenuBar menuBar;    Menu menu_xitong,menu_guanli,menu_gongju,menu_Help;MenuItem item_up_password, item_reLanding, item_exit;MenuItem item_input, item_find, item_delete;MenuItem item_jisuanqi, item_jishiben, item_beijing;MenuItem item_LookHelp, item_About;//录入界面要用的组件JPanel jp_btn,jp_main,jp_table,jp_text;JLabel lbl_id, lbl_name, lbl_address, lbl_in_price, lbl_out_price, lbl_kucun, lbl_jinhuo, lbl_chuhuo;TextField text_id,text_name,text_address,text_in_price,text_out_price,text_kucun,text_jinhuo,text_chuhuo;JButton submit,reset,delete;JScrollPane jsp;JTable table;DefaultTableModel model;CardLayout c=new CardLayout();JPanel card;//查找页面要用的组件JPanel jp1,jp2,jp3;JPanel jp2_main;JButton find_id,find_name,find_delete,find_all;JTextField text_find;JScrollPane jsp_find;JTable table_find;DefaultTableModel model_find;//背景更改要用的组件int r =255,g=255,b=255;TextField tfr,tfg,tfb;Scrollbar sbr,sbg,sbb;Panel display;JPanel jp3_main;public Main(){super("主窗口");menuBar=new MenuBar();menu_gongju=new Menu("工具");menu_guanli=new Menu("管理");menu_Help=new  Menu("帮助");menu_xitong=new Menu("系统");item_About=new MenuItem("关于");item_beijing=new MenuItem("背景设置");item_LookHelp=new MenuItem("查看帮助");item_up_password=new MenuItem("修改密码");item_reLanding=new MenuItem("重新登录");item_exit=new MenuItem("退出系统");item_jishiben=new MenuItem("记事本");item_jisuanqi=new MenuItem("计算器");item_find=new  MenuItem("查找");item_input=new MenuItem("录入");item_delete=new MenuItem("删除");//注册监听item_About.addActionListener(this);item_beijing.addActionListener(this);item_LookHelp.addActionListener(this);item_up_password.addActionListener(this);item_reLanding.addActionListener(this);item_exit.addActionListener(this);item_jishiben.addActionListener(this);item_jisuanqi.addActionListener(this);item_find.addActionListener(this);item_input.addActionListener(this);item_delete.addActionListener(this);menu_xitong.add(item_up_password);menu_xitong.add(item_reLanding);menu_xitong.add(item_exit);menu_guanli.add(item_input);menu_guanli.add(item_find);//menu_guanli.add(item_delete);menu_gongju.add(item_jisuanqi);menu_gongju.add(item_jishiben);menu_gongju.add(item_beijing);menu_Help.add(item_About);menu_Help.add(item_LookHelp);menuBar.add(menu_xitong);menuBar.add(menu_guanli);menuBar.add(menu_gongju);menuBar.add(menu_Help);setMenuBar(menuBar);setResizable(false);initComponents();//调用方法初始化界面Find();change_color();//查找功能的布局以及组建//this.setLayout(new CardLayout());card=new JPanel();card.setLayout(c);card.add("1", jp_main);card.add("2", jp2_main);card.add("3", jp3_main);//this.getContentPane().add("Center", jp_main);this.add(card);this.setSize(1000, 500);this.setLocationRelativeTo(null);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}//录入界面初始化private void initComponents() {//构造面板System.out.println("pass");lbl_id=new JLabel("商品编号",JLabel.CENTER);lbl_name=new JLabel("商品名称",JLabel.CENTER);lbl_address=new JLabel("商品产地",JLabel.CENTER);lbl_in_price=new JLabel("进价",JLabel.CENTER);lbl_out_price=new JLabel("售价",JLabel.CENTER);lbl_jinhuo=new JLabel("进货量",JLabel.CENTER);lbl_chuhuo=new JLabel("销售量",JLabel.CENTER);lbl_kucun=new JLabel("库存量",JLabel.CENTER);text_id=new TextField();text_name = new TextField();text_address=new  TextField();text_in_price=new TextField();text_out_price=new TextField();text_jinhuo=new TextField();text_chuhuo=new TextField();text_kucun=new  TextField();jp_table=new JPanel(new BorderLayout());jp_text =new JPanel(new GridLayout(2,8));jp_text.add(lbl_id);jp_text.add(lbl_name);jp_text.add(lbl_address);jp_text.add(lbl_in_price);jp_text.add(lbl_out_price);jp_text.add(lbl_jinhuo);jp_text.add(lbl_chuhuo);jp_text.add(lbl_kucun);jp_text.add(text_id);jp_text.add(text_name);jp_text.add(text_address);jp_text.add(text_in_price);jp_text.add(text_out_price);jp_text.add(text_jinhuo);jp_text.add(text_chuhuo);jp_text.add(text_kucun);model = new DefaultTableModel(new Object[][] {      }, new String[] { "商品编号", "商品名称", "商品产地" ,"进价","售价","库存量","进货量","出货量" });table =new JTable(model);jsp=new JScrollPane(table);submit=new JButton("录入商品");reset=new JButton("重置信息");delete=new JButton("删除所选商品");submit.addActionListener(this);reset.addActionListener(this);delete.addActionListener(this);jp_btn=new JPanel(new GridLayout(1,3));jp_btn.add(submit);jp_btn.add(delete);jp_btn.add(reset);jp_table.add("Center",jp_text);jp_table.add("South",jp_btn);jp_main=new JPanel(new BorderLayout(10,10));jp_main.add("Center",jsp);jp_main.add("North",jp_table);System.out.println("pass");}//查找面板初始化面板private void Find() {jp1=new JPanel(new GridLayout(1,1));jp2=new JPanel(new GridLayout(1,4));jp3=new JPanel(new BorderLayout());find_id =new JButton("根据商品编号查询");find_name=new JButton("根据商品名称查询");find_all=new JButton("查询所有信息");find_delete=new JButton("删除所选信息");text_find=new JTextField();jsp_find=new JScrollPane();table_find=new JTable();model_find=new DefaultTableModel();model_find = new DefaultTableModel(new Object[][] {      }, new String[] { "商品编号", "商品名称", "商品产地" ,"进价","售价","库存量","进货量","出货量" });table_find =new JTable(model_find);jsp_find=new JScrollPane(table_find);find_id.addActionListener(this);find_name.addActionListener(this);find_all.addActionListener(this);find_delete.addActionListener(this);jp1.add(text_find);jp2.add(find_id);jp2.add(find_name);jp2.add(find_all);jp2.add(find_delete);jp3.add("North",jp1);jp3.add("Center",jp2);jp2_main=new JPanel(new BorderLayout(10,10));jp2_main.add("Center",jsp_find);jp2_main.add("North",jp3);}//背景更改private void change_color() {jp3_main=new  JPanel();display =new  Panel();display.setBackground(Color.WHITE);Panel pcolor =new Panel();pcolor.setLayout(new BorderLayout());Panel pw=new Panel();pw.setLayout(new GridLayout(3,2,0,0));jp3_main.setLayout(new  BorderLayout());tfr= new TextField("255");tfg=new TextField("255");tfb=new TextField("255");tfr.setEditable(false);tfg.setEditable(false);tfb.setEditable(false);sbr=new Scrollbar(Scrollbar.HORIZONTAL,255,0,0,255);sbg=new Scrollbar(Scrollbar.HORIZONTAL,255,0,0,255);sbb=new Scrollbar(Scrollbar.HORIZONTAL,255,0,0,255);sbr.setName("SBR");sbg.setName("SBG");sbb.setName("SBB");sbr.setBackground(Color.red);sbg.setBackground(Color.green);sbb.setBackground(Color.blue);sbr.addAdjustmentListener(this);sbg.addAdjustmentListener(this);sbb.addAdjustmentListener(this);pw.add(new Label("红色"));pw.add(tfr);pw.add(new Label("绿色"));pw.add(tfg);pw.add(new Label("蓝色"));pw.add(tfb);Panel pc= new Panel();pc.setLayout(new GridLayout(3, 1, 0, 0));pc.add(sbr);pc.add(sbg);pc.add(sbb);pcolor.add(pw,BorderLayout.WEST);pcolor.add(pc,BorderLayout.CENTER);jp3_main.add(display,BorderLayout.CENTER);jp3_main.add(pcolor,BorderLayout.SOUTH);}//查看帮助文档,调用本地的程序,查看帮助文档public  void useCMDCommand() throws IOException{                  Runtime.getRuntime().exec(new String[]{"cmd.exe", "/c", "..\\BaoDing_Shoop\\保定商场商品管理系统项目帮助.doc"});     } //主函数public static void main(String[] args) {// TODO Auto-generated method stubjava.awt.EventQueue.invokeLater(new Runnable() {   public void run() {    new Main().setVisible(true);   }});}//监听方法public void actionPerformed(ActionEvent e) {//得到事件源String btString=e.getActionCommand();//录入功能if (btString.equals("录入商品")) {//追加到最后一行if(!text_id.getText().equals("") && !text_name.getText().equals("") && !text_address.getText().equals("") && !text_in_price.getText().equals("") && !text_out_price.getText().equals("") && !text_jinhuo.getText().equals("") && !text_chuhuo.getText().equals("") && !text_kucun.getText().equals("")) {//获取文本框信息int  idString=Integer.parseInt(text_id.getText());String ids=text_id.getText();String nameString=text_name.getText();String addresString=text_address.getText();double in_priceString=Double.parseDouble(text_in_price.getText());double out_priceString=Double.parseDouble(text_out_price.getText());int  jinhuoString=Integer.parseInt(text_jinhuo.getText());int  chuhuoString=Integer.parseInt(text_chuhuo.getText());int  kucun=Integer.parseInt(text_kucun.getText());if (in_priceString<=0) {JOptionPane.showMessageDialog(this, "亲~,进价要大于零哦!");}else {if (in_priceString>=out_priceString) {JOptionPane.showMessageDialog(this, "亲~,要有盈利的,销售价格要大于进价!");}else {System.out.print("录入商品");if (idString!=0 && !nameString.equals("") && !addresString.equals("") && in_priceString!=0 && out_priceString!=0 && jinhuoString!=0 && chuhuoString!=0 && kucun!=0) {//对数据库的操作 String sql="insert into result values('"+ ids +"','" + nameString+"','"+ addresString+"',"+ in_priceString+","+ out_priceString+","+ jinhuoString+","+ chuhuoString+","+ kucun+ ")";Userdate userdate=new Userdate();boolean flag=userdate.add_goods(sql);if (flag) {//对表格的操作model.insertRow(model.getRowCount(), new Object[]  { ids, nameString,addresString,in_priceString,out_priceString,jinhuoString,chuhuoString,kucun }   );}else { JOptionPane.showMessageDialog(this, "商品编号重复!");} }else {JOptionPane.showMessageDialog(this, "请输入商品详细信息!");}}}}else {JOptionPane.showMessageDialog(this, "请输入商品的详细信息!");}}//删除功能else if(btString.equals("删除所选商品")){//获取要删除的行,没有选择是-1int row=table.getSelectedRow();System.out.print("删除商品操作");System.out.print(row);if (row==-1) {JOptionPane.showMessageDialog(this,"请选择要删除商品的商品名!");}else {//System.out.print(row);//数据库删除商品操作//int  shangpin_id= Integer.parseInt((String) model.getValueAt(row, 0)) ;String shangpin_id=(String) model.getValueAt(row, 0) ;System.out.print(row);String sql="delete from result where id='"+shangpin_id+"'";Userdate userdate=new Userdate();boolean flag=userdate.add_goods(sql);if (flag) {model.removeRow(row);}}}//重置功能else if(btString.equals("重置信息")){text_id.setText("");text_name.setText("");text_address.setText("");text_in_price.setText("");text_out_price.setText("");text_jinhuo.setText("");text_chuhuo.setText("");text_kucun.setText("");}else if(btString.equals("修改密码")){UpData data=new UpData();data.setVisible(true);}else if(btString.equals("计算器")){Calculator calculator = new Calculator();calculator.setSize(250,350);calculator.setLocationRelativeTo(null);calculator.setVisible(true);calculator.setResizable(false);}else if(btString.equals("退出系统")){System.exit(0);}else if (btString.equals("记事本")) {NotePad notePad=new NotePad();notePad.setVisible(true);}else if(btString.equals("查看帮助")){//System.out.println("help_pss");try {useCMDCommand();System.out.println("help_pss");} catch (IOException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}else if(btString.equals("关于")){About about =new About();about.setVisible(true);}else if(btString.equals("重新登录")){System.out.print("重新登录");Landing landing = new Landing();landing.setVisible(true);this.dispose();}else if(btString.equals("查找")){c.show(card,"2");}else if(btString.equals("录入")){c.show(card,"1");}else if(btString.equals("删除")){c.show(card,"2");JOptionPane.showMessageDialog(this, "请先查找所要删除的商品信息!");}else if(btString.equals("背景设置")){c.show(card,"3");}//查找功能else if(btString.equals("根据商品编号查询")){if (text_find.getText().equals("")) {JOptionPane.showMessageDialog(this, "查询信息为空!");}else {//int  id =Integer.parseInt(text_find.getText().trim());String id =text_find.getText().trim();Good_data data=new Good_data();Goods goods =data.findStudentById(id);//String id_s=Integer.toString(id);//获取文本框信息//int  idString=goods.getId();//String ids=Integer.toString(goods.getId());String  idString=goods.getId();String nameString=goods.getName();String addresString=goods.getAddress();double  in_priceString=goods.getIn_price();double  out_priceString=goods.getOut_price();int  jinhuoString=goods.getJinhuo();int  chuhuoString=goods.getChuhuo();int  kucun=goods.getKucun();//判断用户所输入的商品编号数据库中是否有if (idString==null) {JOptionPane.showMessageDialog(this,"对不起,小编没有从数据库中找到商品编号为:"+id+"的信息!");}else {//对表格的操作model_find.insertRow(model_find.getRowCount(), new Object[]  { idString, nameString,addresString,in_priceString,out_priceString,jinhuoString,chuhuoString,kucun }   );}}}else if(btString.equals("根据商品名称查询")){String name =text_find.getText().trim();Good_data data=new Good_data();String sql="select  * from result where nam like '%"+name+"%'"; List<Goods> datalist=data.findGoods(sql);//获取文本框信息  if (name.equals("")) {JOptionPane.showMessageDialog(this, "查询信息为空!");}else {if (datalist.size()<=0) {JOptionPane.showMessageDialog(this,"对不起,小编没有从数据库中找到商品名为:"+name+"的信息!");} for(Goods d:datalist){//遍历数据,将查询所得到的数据逐一赋值到表中//int  idString=d.getId();String idString=d.getId();String nameString=d.getName();String addresString=d.getAddress();double in_priceString=d.getIn_price();double  out_priceString=d.getOut_price();int jinhuoString=d.getJinhuo();int  chuhuoString=d.getChuhuo();int  kucun=d.getKucun();//对表格的操作model_find.insertRow(model_find.getRowCount(), new Object[]  { idString, nameString,addresString,in_priceString,out_priceString,jinhuoString,chuhuoString,kucun }   ); }} }else if(btString.equals("删除所选信息")){//获取要删除的行,没有选择是-1int row=table_find.getSelectedRow();System.out.print("删除商品操作");System.out.print(row);if (row==-1) {JOptionPane.showMessageDialog(this,"请选择要删除商品!");}else {//System.out.print(row);//数据库删除商品操作//int shangpin_id=(Integer) model_find.getValueAt(row, 0);String shangpin_id=(String) model_find.getValueAt(row, 0);System.out.print(row);String sql="delete from result where id='"+shangpin_id+"'";Userdate userdate=new Userdate();boolean flag=userdate.add_goods(sql);if (flag) {model_find.removeRow(row);}}}else if(btString.equals("查询所有信息")){String name =text_find.getText().trim();Good_data data=new Good_data();String sql="select  * from result";List<Goods> datalist=data.findGoods(sql);for(Goods d:datalist){//遍历数据,将查询所得到的数据逐一赋值到表中//int  idString=d.getId();String idString=d.getId();String nameString=d.getName();String addresString=d.getAddress();double in_priceString=d.getIn_price();double  out_priceString=d.getOut_price();int jinhuoString=d.getJinhuo();int  chuhuoString=d.getChuhuo();int  kucun=d.getKucun();//对表格的操作model_find.insertRow(model_find.getRowCount(), new Object[]  { idString, nameString,addresString,in_priceString,out_priceString,jinhuoString,chuhuoString,kucun }   ); }}}@Overridepublic void adjustmentValueChanged(AdjustmentEvent e) {// TODO Auto-generated method stubString sb_name =((Scrollbar)e.getSource()).getName();int value =e.getValue();if (sb_name.equals("SBR")) {r=value;tfr.setText(Integer.toString(r));}else if (sb_name.equals("SBG")) {g=value;tfg.setText(Integer.toString(g));}else if (sb_name.equals("SBB")) {b=value;tfb.setText(Integer.toString(b));}refresh();}public void refresh() {Color c=new  Color(r,g,b);display.setBackground(c);table.setBackground(c);table_find.setBackground(c);}}

原创粉丝点击