Java 公司财务系统 窗体程序 完整源码
今天为大家分享一个java语言编写的公司财务管理系统,目前系统已经完成了主要功能,后续会进一步完善。整个系统界面漂亮,有完整得源码,希望大家可以喜欢。喜欢的帮忙点赞和关注。一起编程、一起进步
开发环境
开发语言为Java,开发环境Eclipse或者IDEA都可以。数据库采用:MySQL。运行主程序,或者执行打开JAR文件即可以运行本程序。
系统框架
利用JDK自带的SWING框架开发,不需要安装第三方JAR包。MySQL数据库,纯窗体模式,直接运行Main文件即可以。同时带有详细得设计文档
运行方法
1 运行Main.java文件
2 程序出现公司财务管理系统登陆的面板
系统主要功能
系统主要分为6个主要的模块:材料管理、订单管理、工程管理、员工信息管理、财务管理、汽车消费
1 材料管理:记录材料的使用情况,包括新增,删除,修改。材料使用记录以下一些字段:
记录编号、材料编号、数量、单价、供货商、日期、总价。
2 订单管理:订单的新增,删除,修改等功能。订单记录包括:客户、联系电话、规格、单价、数量、预付款
3 员工管理:员工的新增、删除、查询和修改。员工信息包括:用户工号、姓名、性别、电话、地址、学历、出生日期。
4 工资管理:工资录入,查询和修改。工资信息包括:姓名,身份证、籍贯、月份、工资
5 财务管理:财务管理包括财务的新增、删除、修改等操作。财务信息包括:记录编号、客户名、联系电话、规格、单价、数量、预付款、总报价剩余款、发生日期。
6 汽车消费:记录公司汽车消费情况。汽车消费包含字段信息包括:记录编号、车牌号、消费日期、金额。
7 对所有功能模块的单据进行打印操作。
系统运行效果
关键代码
package salary; import javax.swing.*; import javax.swing.event.TreeModelEvent; import javax.swing.event.TreeModelListener; import javax.swing.event.TreeSelectionEvent; import javax.swing.event.TreeSelectionListener; import javax.swing.tree.DefaultMutableTreeNode; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.print.PrinterException; public class Main_window implements TreeModelListener,TreeSelectionListener{private JPanel panel,panel_1;private JTree tree;private JLabel label,label_1; private JMenuBar menubar; private JMenu menu1,menu2,menu3,menu4,menu5;private DefaultMutableTreeNode node1,node2,node3,node5,node6,leftnode1,leftnode4,leftnode5,leftnode7,leftnode8,leftnode11,rightnode1,rightnode2;JPanel panel_2 = new JPanel(); //中间主要操作区的panelJFrame jf = new JFrame("博森账务管理");JPanel panel1 = new JPanel(); //创建一个panel对象JPanel panel2 = new JPanel();ImageIcon bottom = new ImageIcon("image\\bottom.jpg");ImageIcon top = new ImageIcon("image\\top.jpg");JLabel label1 = new JLabel(top); //两个panel盛放两张图片JLabel label2 = new JLabel(bottom);public void Main_window(){try{ //设置观感器 UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");}catch(Exception e1){e1.printStackTrace();}final Container contentpane = jf.getContentPane(); //获得内容面板jf.getContentPane().setLayout(new BorderLayout());panel1 = (JPanel)contentpane;jf.setSize(1000, 667);panel2.setLayout(new BorderLayout());jf.setJMenuBar(getMenubar());panel_2.setBackground(Color.lightGray);panel_2 = getPanel_1();jf.getContentPane().add(getLabel(), BorderLayout.SOUTH);jf.getContentPane().add(getPanel(), BorderLayout.NORTH);jf.getContentPane().add(getTree(), BorderLayout.WEST);jf.getContentPane().add(panel_2, BorderLayout.CENTER);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置jf的可关性jf.setLocation(130,50);jf.setVisible(true);jf.setResizable(false); jf.show();}/*** @return*/protected JLabel getLabel() { //标签if (label == null) {label = new JLabel(bottom);label.setText("");}return label;}/*** @return*/protected JPanel getPanel() { //盛放top.jpgif (panel == null) {panel = new JPanel();panel.setLayout(new GridLayout(1, 0));panel.add(getLabel_1());}return panel;}/*** @return*/protected JLabel getLabel_1() { //盛放top.jpg的labelif (label_1 == null) {label_1 = new JLabel(top);label_1.setText("");}return label_1;}/*** @return*/protected JTree getTree() { //树形结构if (tree == null) { DefaultMutableTreeNode root = new DefaultMutableTreeNode("广州博森账务管理系统"); //创建根节点node1 = new DefaultMutableTreeNode("材料管理");node5 = new DefaultMutableTreeNode("账务管理");node2 = new DefaultMutableTreeNode("订单管理");node3 = new DefaultMutableTreeNode("员工信息管理");node6 = new DefaultMutableTreeNode("汽车消费");root.add(node1);root.add(node2);root.add(node3); root.add(node5);root.add(node6);leftnode1 = new DefaultMutableTreeNode("进料记录");node1.add(leftnode1); leftnode4 = new DefaultMutableTreeNode("订单记录");node2.add(leftnode4);leftnode5 = new DefaultMutableTreeNode("员工信息记录");node3.add(leftnode5); leftnode7 = new DefaultMutableTreeNode("工资管理");node3.add(leftnode7);leftnode8 = new DefaultMutableTreeNode("账务查看"); node5.add(leftnode8);leftnode11 = new DefaultMutableTreeNode("消费查看");node6.add(leftnode11); rightnode2 = new DefaultMutableTreeNode("工资预支");leftnode7.add(rightnode2);tree = new JTree(root);tree.addTreeSelectionListener(this);tree.setBorder(BorderFactory.createLineBorder(Color.lightGray));}return tree;}/*** @return*/protected JPanel getPanel_1() { //中间主要操作区if (panel_1 == null) {panel_1 = new JPanel();panel_2 = new JPanel(); //盛放六个图标panel_1.setBackground(Color.white);panel_2.setBackground(Color.white); panel_1.setLayout(new BorderLayout());//设置panel_1的布局管理器panel_2.setLayout(new GridLayout(2,3));ImageIcon icon1 = new ImageIcon("image\\材料.jpg");ImageIcon icon2 = new ImageIcon("image\\订单.jpg");ImageIcon icon3 = new ImageIcon("image\\工程.jpg");ImageIcon icon4 = new ImageIcon("image\\工人.jpg");ImageIcon icon5 = new ImageIcon("image\\账务.jpg");ImageIcon icon6 = new ImageIcon("image\\汽车.jpg");JLabel label5 = new JLabel(icon1);JLabel label6 = new JLabel(icon2);JLabel label7 = new JLabel(icon3);JLabel label8 = new JLabel(icon4);JLabel label9 = new JLabel(icon5);JLabel label10 = new JLabel(icon6);JLabel label1 = new JLabel(" "); //填充四周的空白JLabel label2 = new JLabel(" ");JLabel label3 = new JLabel(" ");JLabel label4 = new JLabel(" ");panel_1.setLayout(new BorderLayout()); panel_1.add(label1,BorderLayout.SOUTH);panel_1.add(label2,BorderLayout.EAST);panel_1.add(label3,BorderLayout.WEST);panel_1.add(label4,BorderLayout.NORTH);panel_1.add(panel_2,BorderLayout.CENTER);panel_2.add(label5);panel_2.add(label6);panel_2.add(label7);panel_2.add(label8);panel_2.add(label9);panel_2.add(label10);}return panel_1;} /*** @return*/protected JMenuBar getMenubar(){ //创建menubarif(menubar == null){try{ //设置观感器 UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());}catch(Exception e1){e1.printStackTrace();}menubar = new JMenuBar();menubar.add(getMenu1());menubar.add(getMenu2());menubar.add(getMenu3());menubar.add(getMenu5());menubar.add(getMenu4()); }return menubar;}/*** @return*/ protected JMenu getMenu1(){if(menu1 == null){menu1 = new JMenu();menu1.setText("业绩柱形图(C)");//JMenuItem item1 = new JMenuItem("订单查询");//JMenuItem item2 = new JMenuItem("账务查询");//JMenuItem item3 = new JMenuItem("材料查询");//JMenuItem item4 = new JMenuItem("员工工资查询");//JMenuItem item6 = new JMenuItem("汽车消费查询");JMenuItem item7 = new JMenuItem("业绩柱形图");item7.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){BarChart_d frame = new BarChart_d();frame.setLocation(130,50);frame.setSize(1000,667);frame.setVisible(true);}});// menu1.add(item1);// menu1.add(item2);// menu1.add(item3);// menu1.add(item4);// menu1.add(item6);menu1.add(item7);}return menu1;}/*** @return*/protected JMenu getMenu2(){if(menu2 == null){menu2 = new JMenu();menu2.setText("表单打印(P)");JMenuItem item1 = new JMenuItem("订单"); JMenuItem item3 = new JMenuItem("账务清单");JMenuItem item4 = new JMenuItem("材料清单");item1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e) {try { Order o = new Order();panel_2.add(o.Order_window());o.table.print();} catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}});item3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e) {try { Finance f = new Finance();panel_2.add(f.Finance_window());f.table.print();} catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}});item4.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e) {try { Material m = new Material();panel_2.add(m.Material_window());m.table.print();} catch (Exception e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}});menu2.add(item1); menu2.add(item3);menu2.add(item4);}return menu2;}/*** @return*/protected JMenu getMenu3(){ //用户管理模块if(menu3 == null){menu3 = new JMenu();menu3.setText("用户管理(U)");JMenuItem item1 = new JMenuItem("修改密码");item1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){new Admin().Admin_window(new Main_window().jf);}});JMenuItem item2 = new JMenuItem("注销用户");item2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){new Admin().Admin_window(new Main_window().jf);}});JMenuItem item3 = new JMenuItem("创建用户");item3.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){new Admin().Admin_window(new Main_window().jf);}});menu3.add(item1);menu3.add(item2);menu3.add(item3);}return menu3;}/*** @return*/protected JMenu getMenu4(){if(menu4 == null){menu4 = new JMenu();menu4.setText("帮助(H)");JMenuItem item1 = new JMenuItem("操作说明");menu4.add(item1); }return menu4;}/*** @return*/protected JMenu getMenu5(){if(menu5 == null){menu5 = new JMenu();menu5.setText("系统管理(S)");JMenuItem item1 = new JMenuItem("退出登录");item1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubint i = JOptionPane.showConfirmDialog(null, "是否要退出?");if(i == 0){ jf.dispose();new Front_window().Front_window();}}});menu5.add(item1); }return menu5;}public void valueChanged(TreeSelectionEvent e) { //事件监听器// TODO Auto-generated method stubDefaultMutableTreeNode node = (DefaultMutableTreeNode)e.getPath().getLastPathComponent();if(node.equals(leftnode1)){panel_2.removeAll();panel_2.add(new Material().Material_window()); }if(node.equals(leftnode4)){panel_2.removeAll();panel_2.add(new Order().Order_window());}if(node.equals(leftnode5)){panel_2.removeAll();panel_2.add(new Staff().Staff_window());}if(node.equals(rightnode1)){panel_2.removeAll();panel_2.add(new Salary_detail().Detail_window());}if(node.equals(rightnode2)){panel_2.removeAll();panel_2.add(new Salary_advance().advance_window());}if(node.equals(leftnode8)){panel_2.removeAll();panel_2.add(new Finance().Finance_window());}if(node.equals(leftnode11)){panel_2.removeAll();panel_2.add(new Vehicle().Vehicle_window());} }public void treeNodesChanged(TreeModelEvent e) {} //空方法,不必实现public void treeNodesInserted(TreeModelEvent e) {}public void treeNodesRemoved(TreeModelEvent e) {}public void treeStructureChanged(TreeModelEvent e) {} }总结
以上是生活随笔为你收集整理的Java 公司财务系统 窗体程序 完整源码的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 【疑难解决】EasyCVR通过SDK接入
- 下一篇: android无线点餐系统(电子菜谱)