📄 creditsalereturnframe.java
字号:
contentPane.add(jLabel4, null); contentPane.add(jLabel5, null); contentPane.add(jLabel6, null); contentPane.add(jLabel7, null); contentPane.add(jLabel8, null); contentPane.add(jLabel9, null); contentPane.add(jLabel10, null); contentPane.add(jLabel11, null); contentPane.add(jLabel12, null); contentPane.add(jLabel13, null); contentPane.add(jLabel14, null); contentPane.add(jLabel15, null); contentPane.add(jLabel17, null); contentPane.add(jLabel16, null); contentPane.add(jTextField1, null); contentPane.add(jTextField2, null); contentPane.add(jTextField3, null); contentPane.add(jTextField4, null); contentPane.add(jTextField5, null); contentPane.add(jTextField6, null); contentPane.add(jTextField7, null); contentPane.add(jTextField8, null); contentPane.add(jTextField9, null); contentPane.add(jTextField10, null); contentPane.add(jTextField11, null); contentPane.add(jTextField12, null); contentPane.add(jButton1, null); contentPane.add(jButton2, null); contentPane.add(jButton3, null); contentPane.add(jButton4, null); contentPane.add(jButton5, null); contentPane.add(jButton6, null); contentPane.add(jButton7, null); contentPane.add(jButton8, null); contentPane.add(jButton9, null); contentPane.add(jButton10, null); contentPane.add(jButton11, null); contentPane.add(jButton12, null); contentPane.add(jButton13, null); contentPane.add(jButton14, null); contentPane.add(jButton15, null); contentPane.add(jComboBox1, null); contentPane.add(jScrollPane1, null); contentPane.add(jScrollPane2, null); contentPane.add(jScrollPane3, null); contentPane.add(jScrollPane4, null); contentPane.add(jRadioButton1, null); contentPane.add(jRadioButton2, null); //设置窗口类的字体和为按钮加入动作接收器 setupFontAndListener(); //检查按钮状态 this.checkBtn(false); this.checkSubBtn(false); } //设置窗口类的字体和为按钮加入动作接收器的方法 public void setupFontAndListener(){ Component[] components = contentPane.getComponents(); //创建临时按钮控件 JButton tmpBtn = new JButton(); for(int i = 0; i < components.length; i++){ components[i].setFont(dialog13); if(components[i].getClass().getName().equals("javax.swing.JButton")){ tmpBtn = (JButton)components[i]; tmpBtn.addActionListener(this); } } } //退出方法 public void exit(){ //隐藏窗口 this.setVisible(false); //清空数组的内容 saleLedgers = new String[0][11]; saleSubLedgers = new String[0][5]; saleSubLedgerObjects = new Object[0][9]; stockSubLedgers = new String[0][6]; stockSubLedgerObjects = new String[0][4]; //清空列表框的内容 listData1.clear(); //清空文本框的内容 jTextArea1.setText(""); //清空表格的内容 this.showSaleTableData(saleSubLedgerObjects); this.showStockTableData(stockSubLedgerObjects); //取得面板上的所有控件 Component[] components = contentPane.getComponents(); //创建临时编辑框控件 JTextField tmpTextField = new JTextField(); for(int i = 0; i < components.length; i++){ if(components[i].getClass().getName().equals("javax.swing.JTextField")){ tmpTextField = (JTextField)components[i]; //清空编辑框的内容 tmpTextField.setText(""); } } } //设置用户的方法 public void setUser(User user) { this.user = user; } //设置账套的方法 public void setLedgerDate(String ledgerDate) { this.ledgerDate = ledgerDate; } protected void processWindowEvent(WindowEvent e) { if (e.getID() == WindowEvent.WINDOW_CLOSING) { exit(); } } //显示查询销售退货单的方法 public void showSearchSaleLedger(){ listData1.clear(); //为销售退货单列表框加入销售退货单数据 for(int i = 0; i < saleLedgers.length; i++){ listData1.addElement(saleLedgers[i][0]); } } //显示单个销售退货单的方法 public void showSaleLedger(){ //取得当前选择项的位置 int selectedIndex = jList1.getSelectedIndex(); //当列表框不处于选择状态,不显示商品数据 if(selectedIndex == -1){ return; } //显示销售退货单的数据 jTextField4.setText(saleLedgers[selectedIndex][0]); //单据编号 jTextField5.setText(saleLedgers[selectedIndex][2]); //客户 jTextField6.setText(saleLedgers[selectedIndex][4]); //信用销售员 jTextField7.setText(saleLedgers[selectedIndex][3]); //柜台 jTextField8.setText(saleLedgers[selectedIndex][7]); //填写日期 jTextField9.setText(saleLedgers[selectedIndex][8]); //完成日期 jTextField10.setText(onProcesses[Integer.parseInt(saleLedgers[selectedIndex][9])]); jTextArea1.setText(saleLedgers[selectedIndex][10]); //显示销售退货单明细数据 this.showSaleSubLedger(); } //显示销售退货单明细数据的方法 public void showSaleSubLedger(){ //取得当前选择项的位置 int selectedIndex = jList1.getSelectedIndex(); String saleId = saleLedgers[selectedIndex][0]; saleSubLedgers = stockManagementData.getSaleSubLedgerBySaleId(ledgerDate, saleId); //将数组数据转换为表格数据 saleSubLedgerObjects = new Object[saleSubLedgers.length][9]; double total = 0; for(int i = 0; i < saleSubLedgers.length; i++){ saleSubLedgerObjects[i][0] = new Integer(saleSubLedgers[i][0]); saleSubLedgerObjects[i][1] = saleSubLedgers[i][1]; saleSubLedgerObjects[i][2] = saleSubLedgers[i][2]; //商品条形码 double actualSaleReturnPrice = dataMethod.round(Double.parseDouble(saleSubLedgers[i][3])); int quantity = Integer.parseInt(saleSubLedgers[i][4]); saleSubLedgerObjects[i][3] = new Double(0); saleSubLedgerObjects[i][4] = new Double(0); //计算退货金额 double amount = dataMethod.round(actualSaleReturnPrice * quantity); saleSubLedgerObjects[i][5] = new Double(0); //实际售价 saleSubLedgerObjects[i][6] = new Double(actualSaleReturnPrice); //退货价 saleSubLedgerObjects[i][7] = new Integer(quantity); //数量 saleSubLedgerObjects[i][8] = new Double(amount); //金额 total += amount; } //显示总价 jTextField11.setText(String.valueOf(dataMethod.round(total))); //显示表格的内容 this.showSaleTableData(saleSubLedgerObjects); } //显示库存销售出库单明细数据的方法 public void showStockSubLedger(){ //取得当前选择项的位置 int selectedIndex = jList1.getSelectedIndex(); if(selectedIndex == -1){ JOptionPane.showMessageDialog(null, "先选择销售退货单."); return; } //取得销售单编号 String saleId = saleLedgers[selectedIndex][0]; //取得关联标识 String saleOrderLink = jTextField12.getText().trim(); if(saleOrderLink.length() == 0){ JOptionPane.showMessageDialog(null, "销售单关联标识为空."); return; } //取得库存销售出库单的数据 String[][] stockSubLedgersTemp = stockManagementData.getStockSaleOutBySaleOrderLink( ledgerDate, saleOrderLink, saleId); //将数组数据转换为表格数据 stockSubLedgerObjects = new Object[stockSubLedgersTemp.length][4]; for(int i = 0; i < stockSubLedgersTemp.length; i++){ stockSubLedgerObjects[i][0] = stockSubLedgersTemp[i][0]; stockSubLedgerObjects[i][1] = new Double(Double.parseDouble(stockSubLedgersTemp[i][1])); stockSubLedgerObjects[i][2] = new Integer(-Integer.parseInt(stockSubLedgersTemp[i][2])); stockSubLedgerObjects[i][3] = stockSubLedgersTemp[i][3]; } //显示表格的内容 this.showStockTableData(stockSubLedgerObjects); } //转换销售退货单的表格数据的方法 public void transferSaleReturnTableData(){ saleSubLedgers = new String[saleSubLedgerObjects.length][5]; for(int i = 0; i < saleSubLedgerObjects.length; i++){ saleSubLedgers[i][0] = ((Integer)saleSubLedgerObjects[i][0]).toString(); saleSubLedgers[i][1] = (String)saleSubLedgerObjects[i][1]; saleSubLedgers[i][2] = (String)saleSubLedgerObjects[i][2]; saleSubLedgers[i][3] = ((Double)saleSubLedgerObjects[i][6]).toString(); //退货金额 saleSubLedgers[i][4] = ((Integer)saleSubLedgerObjects[i][7]).toString();//数量 } } //转换库存明细表格数据的方法 public void transferStockTableData(){ stockSubLedgers = new String[stockSubLedgerObjects.length][6]; for(int i = 0; i < stockSubLedgerObjects.length; i++){ stockSubLedgers[i][0] = ""; stockSubLedgers[i][1] = ""; stockSubLedgers[i][2] = ((String)stockSubLedgerObjects[i][0]); stockSubLedgers[i][3] = ((Double)stockSubLedgerObjects[i][1]).toString(); //进货价 stockSubLedgers[i][4] = ((Integer)stockSubLedgerObjects[i][2]).toString();//数量 stockSubLedgers[i][5] = ((String)stockSubLedgerObjects[i][3]).toString(); //有效期 } } //显示销售退货单表格内容的方法 public void showSaleTableData(Object[][] detail){ //设置表格的标题 srTableModel.setColumnNames(saleColNames); //设置表格的数据 srTableModel.setData(detail); jTable1 = new JTable(srTableModel); //设置表格的字体 jTable1.setFont(dialog13); //将数据表格加入数据滚动框 jScrollPane3.getViewport().add(jTable1, null); //设置列的宽度 jTable1.getColumnModel().getColumn(0).setPreferredWidth(20); jTable1.getColumnModel().getColumn(1).setPreferredWidth(50); jTable1.getColumnModel().getColumn(2).setPreferredWidth(50); jTable1.getColumnModel().getColumn(3).setPreferredWidth(10); jTable1.getColumnModel().getColumn(4).setPreferredWidth(10); jTable1.getColumnModel().getColumn(5).setPreferredWidth(10); jTable1.getColumnModel().getColumn(6).setPreferredWidth(10); jTable1.getColumnModel().getColumn(7).setPreferredWidth(10); jTable1.getColumnModel().getColumn(8).setPreferredWidth(10); //为表格加入内容接收器 srTableModel.addTableModelListener(new TableModelListener(){ public void tableChanged(TableModelEvent e) { jTable1_valueChanged(e); } }); } //显示库存销售出库单的表格内容的方法 public void showStockTableData(Object[][] detail){ //设置表格的标题 srTableMode2.setColumnNames(stockColNames); //设置表格的数据 srTableMode2.setData(detail); //设置表格的编辑状态 srTableMode2.setColumnEditState(1); jTable2 = new JTable(srTableMode2); //设置表格的字体 jTable2.setFont(dialog13); //将数据表格加入数据滚动框 jScrollPane4.getViewport().add(jTable2, null); //设置列的宽度 jTable2.getColumnModel().getColumn(0).setPreferredWidth(50); jTable2.getColumnModel().getColumn(1).setPreferredWidth(10); jTable2.getColumnModel().getColumn(2).setPreferredWidth(10); jTable2.getColumnModel().getColumn(3).setPreferredWidth(50); } //重新计算货物金额 public void recountGoodsAmount(){ double actualSaleReturnPrice = 0; int quantity = 0; double amount = 0; double total = 0; for(int i = 0; i < saleSubLedgerObjects.length; i++){ actualSaleReturnPrice = dataMethod.round(((Double)saleSubLedgerObjects[i][6]).doubleValue()); quantity = ((Integer)saleSubLedgerObjects[i][7]).intValue(); amount = dataMethod.round(actualSaleReturnPrice * quantity); saleSubLedgerObjects[i][8] = new Double(amount); total += amount; } jTextField11.setText(String.valueOf(dataMethod.round(total))); } //检查销售退货单明细账的商品条形码方法 public int checkSaleSubLedgerGoodsBarCode(){ int result = 0; for(int i = 0; i < saleSubLedgerObjects.length; i++){
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -