📄 creditsalereturnframe.java
字号:
result = stockManagementData.checkGoodsBarCode((String)saleSubLedgerObjects[i][2]); if(result == 0){ JOptionPane.showMessageDialog(null, "销售退货单明细列表的第" + (i + 1) + "行的商品条形码在商品数据库中" + "不存在,请打开商品数据管理窗口添加."); return 0; } } return 1; } //检查库存销售退货单明细账的商品条形码方法 public int checkStockSubLedgerGoodsBarCode(){ int result = 0; for(int i = 0; i < stockSubLedgerObjects.length; i++){ result = stockManagementData.checkGoodsBarCode((String)stockSubLedgerObjects[i][0]); if(result == 0){ JOptionPane.showMessageDialog(null, "库存明细列表的第" + (i + 1) + "行的商品条形码在商品数据库中" + "不存在,请打开商品数据管理窗口添加."); return 0; } } return 1; } //检查销售退货单明细列表的退货数量的方法 public int checkSaleSubLedgerQuantity(){ int quantity = 0; for(int i = 0; i < saleSubLedgerObjects.length; i++){ quantity = ((Integer)saleSubLedgerObjects[i][7]).intValue(); if(quantity >= 0){ JOptionPane.showMessageDialog(null, "销售退货单明细列表的第" + (i + 1) + "行的数量输入错误,该数量必须是负数."); return 0; } } return 1; } //检查库存销售退货单明细列表的数量的方法 public int checkStockSubLedgerQuantity(){ int quantity = 0; for(int i = 0; i < stockSubLedgerObjects.length; i++){ quantity = ((Integer)stockSubLedgerObjects[i][2]).intValue(); if(quantity <= 0){ JOptionPane.showMessageDialog(null, "库存明细列表的第" + (i + 1) + "行的数量输入错误,该数量必须是正数."); return 0; } } return 1; } //检查库存销售退货单明细账日期的方法 public int checkStockSubLedgerDate(){ java.sql.Date date = null; for(int i = 0; i < stockSubLedgerObjects.length; i++){ date = dataMethod.transferShortDate((String)stockSubLedgerObjects[i][3]); if(date == null){ JOptionPane.showMessageDialog(null, "库存明细列表的第" + (i+1) + "行日期输入错误,正确的日期格式是" + "yyyy-mm-dd(年-月-日),如2004-1-1"); return 0; } } return 1; } //检查销售单退货单数量与库存销售退货单数量是否相等 public int CheckSaleAndStockQuantity(){ int saleReturnQuantity = 0; int stockQuantity = 0; //计算销售退货单的数量 for(int i = 0; i < saleSubLedgerObjects.length; i++){ saleReturnQuantity = ((Integer)saleSubLedgerObjects[i][7]).intValue(); } //计算库存销售退货单的数量 for(int i = 0; i < stockSubLedgerObjects.length; i++){ stockQuantity = ((Integer)stockSubLedgerObjects[i][2]).intValue(); } if(-saleReturnQuantity == stockQuantity){ return 1; }else{ JOptionPane.showMessageDialog(null, "销售退货单的数量和库存销售退货单的数量不相等."); return 0; } } //根据商品条形码取得销售价和折扣 public void showGoodsPriceAndDiscount(){ for(int i = 0; i < saleSubLedgerObjects.length; i++){ String goodsBarcode = (String)saleSubLedgerObjects[i][2]; double[] data = stockManagementData.getGoodsPriceAndDiscount(goodsBarcode); saleSubLedgerObjects[i][3] = new Double(data[0]); //销售价 saleSubLedgerObjects[i][4] = new Double(data[1]); //折扣 saleSubLedgerObjects[i][5] = new Double(data[0] * data[1]); //实际售价 } } //清空单个销售退货单显示的方法 public void clearSaleLedger(){ jTextField4.setText(""); jTextField5.setText(""); jTextField6.setText(""); jTextField7.setText(""); jTextField8.setText(""); jTextField9.setText(""); jTextField10.setText(""); jTextField11.setText(""); jTextArea1.setText(""); saleSubLedgers = new String[0][5]; saleSubLedgerObjects = new Object[0][9]; this.showSaleTableData(saleSubLedgerObjects); } //检查按钮的状态 public void checkBtn(boolean isManipulated){ if(isManipulated){ jButton2.setEnabled(false); jButton3.setEnabled(false); jButton4.setEnabled(false); jButton5.setEnabled(false); jButton6.setEnabled(true); jButton7.setEnabled(true); }else{ jButton2.setEnabled(true); jButton3.setEnabled(true); jButton4.setEnabled(true); jButton5.setEnabled(true); jButton6.setEnabled(false); jButton7.setEnabled(false); } } //检查明细账按钮的状态 public void checkSubBtn(boolean isCreated){ if(isCreated){ jButton10.setEnabled(true); jButton11.setEnabled(true); }else{ jButton10.setEnabled(false); jButton11.setEnabled(false); } } //列表1的选择事件 void jList1_valueChanged(ListSelectionEvent e) { if(listData1.size() > 0){ this.showSaleLedger(); }else{ this.clearSaleLedger(); } } //表格内容改变事件 public void jTable1_valueChanged(TableModelEvent e) { //重新计算金额 this.recountGoodsAmount(); //根据商品条形码取得销售价和折扣 this.showGoodsPriceAndDiscount(); } //查询方法 public void search(){ //取得查询选项 int selectedIndex = jComboBox1.getSelectedIndex(); //取得编辑框的变量 String searchValue = jTextField1.getText().trim(); String startDateStr = jTextField2.getText().trim(); String endDateStr = jTextField3.getText().trim(); if (selectedIndex == 0 | selectedIndex == 1 | selectedIndex == 2 | selectedIndex == 3) { if (searchValue.length() == 0) { JOptionPane.showMessageDialog(null, "请输入查询值"); return; } switch (selectedIndex) { case 0: //根据销售退货单编号取得记录 saleLedgers = stockManagementData.getSaleLedgerByStringField( ledgerDate, "saleId", searchValue, 3); break; case 1: //根据客户取得记录 saleLedgers = stockManagementData.getSaleLedgerByStringField( ledgerDate, "customerName", searchValue, 3); break; case 2: //根据信用销售员取得记录 saleLedgers = stockManagementData.getSaleLedgerByStringField( ledgerDate, "creditUser", searchValue, 3); break; case 3: if(dataMethod.checkInt(searchValue) == 0){ JOptionPane.showMessageDialog(null, "按完成状态查询时,输入值必须是整数," + "0表示进行,1表示撤消,2表示完成."); return; } //根据完成状态取得记录 saleLedgers = stockManagementData.getSaleLedgerByOnProcess( ledgerDate, 3, Integer.parseInt(searchValue)); break; } }else{ java.sql.Timestamp startDate = dataMethod.transferDate(startDateStr); java.sql.Timestamp endDate = dataMethod.transferEndDate(endDateStr); if(startDate == null | endDate == null){ JOptionPane.showMessageDialog(null, "日期输入错误,正确的日期格式是" + "yyyy-mm-dd(年-月-日),如2004-1-1"); return; } //根据日期取得记录 saleLedgers = stockManagementData.getSaleLedgerByOrderDate(ledgerDate, startDate, endDate, 3); } this.showSearchSaleLedger(); } //单击事件 public void actionPerformed(ActionEvent e) { //取得按钮的动作字符串 String actionCommand = e.getActionCommand().trim(); //检查打开的账套是否当前账套 if (actionCommand.equals("createSaleLedger") | actionCommand.equals("updateSaleLedger") | actionCommand.equals("cancelSaleLedger") | actionCommand.equals("restoreSaleLedger")) { int result = stockManagementData.isCurrentLedger(ledgerDate); if(result == 0){ JOptionPane.showMessageDialog(null, ledgerDate + "是往期账套,不能进行添加、修改和撤消操作."); return; } } //检查销售退货单是否完成 if (actionCommand.equals("updateSaleLedger") | actionCommand.equals("cancelSaleLedger") | actionCommand.equals("restoreSaleLedger")| actionCommand.equals("sign")| actionCommand.equals("showData")) { if(jList1.isSelectionEmpty()){ JOptionPane.showMessageDialog(null, "请选择销售退货单."); return; } int selectedIndex = jList1.getSelectedIndex(); int onProcess = Integer.parseInt(saleLedgers[selectedIndex][9]); if(onProcess == 2){ JOptionPane.showMessageDialog(null, saleLedgers[selectedIndex][0] + "销售退货单已经完成,不可以进行修改、撤消、恢复、电子签名和查询库存销售出库单数据等操作."); return; } } //检查销售退货单是否撤消 if (actionCommand.equals("sign")) { if(jList1.isSelectionEmpty()){ JOptionPane.showMessageDialog(null, "请选择销售退货单."); return; } int selectedIndex = jList1.getSelectedIndex(); int onProcess = Integer.parseInt(saleLedgers[selectedIndex][9]); if(onProcess == 1){ JOptionPane.showMessageDialog(null, saleLedgers[selectedIndex][0] + "销售退货单已经撤消,不可以进行电子签名操作."); return; } } if (actionCommand.equals("search")) { //查询 search(); }else if(actionCommand.equals("showData")){ //显示库存销售出库单的明细数据 this.showStockSubLedger(); }else if(actionCommand.equals("createSaleLedger")){ action = "create"; this.clearSaleLedger(); this.checkBtn(true); this.checkSubBtn(true); }else if(actionCommand.equals("updateSaleLedger")){ action = "update"; this.checkBtn(true); }else if(actionCommand.equals("cancelSaleLedger")){ action = "cancel"; this.checkBtn(true); }else if(actionCommand.equals("restoreSaleLedger")){ action = "restore"; this.checkBtn(true); }else if(actionCommand.equals("ok")){ //创建销售账套数据表的单个记录数组 String[] saleLedger = new String[11]; //取得销售退货单的值 saleLedger[1] = "3"; //3表示信用销售退货单 saleLedger[2] = jTextField5.getText().trim();//客户名字 saleLedger[3] = jTextField7.getText().trim();//仓库 saleLedger[4] = user.getUserName(); //信用销售员 saleLedger[5] = ""; saleLedger[6] = ""; saleLedger[7] = dataMethod.getCurrentDate().toString(); //填写日期 saleLedger[8] = null; //系统日期 saleLedger[9] = "0"; //完成状态 saleLedger[10] = jTextArea1.getText().trim(); if(action.equals("update") | action.equals("cancel") | action.equals("restore")){ int selectedIndex = jList1.getSelectedIndex(); //取得原来的单据编号 saleLedger[0] = saleLedgers[selectedIndex][0].trim();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -