Index: ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/dwr/table/ReturnGoodsRecordTableManager.java =================================================================== diff -u -r12775 -r12777 --- ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/dwr/table/ReturnGoodsRecordTableManager.java (.../ReturnGoodsRecordTableManager.java) (revision 12775) +++ ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/dwr/table/ReturnGoodsRecordTableManager.java (.../ReturnGoodsRecordTableManager.java) (revision 12777) @@ -145,8 +145,7 @@ } // 根据一次性物品ID和部门,找出可以退货的批次 - public String getDisposableGoodsBatchStocksByDisposableGoodsStockIDAndWarehouseDepart(String diposableGoodsID,String warehouseID, - String depart) { + public String getBatchStocksByStockIDWarehouseDepart(String diposableGoodsID,String warehouseID,String depart) { return returnGoodsRecordManager.getDisposableGoodsBatchStocksByDisposableGoodsStockIDAndWarehouseDepart( diposableGoodsID,warehouseID, depart); } Index: ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/service/ReturnGoodsRecordManager.java =================================================================== diff -u -r12775 -r12777 --- ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/service/ReturnGoodsRecordManager.java (.../ReturnGoodsRecordManager.java) (revision 12775) +++ ssts-returngoods/src/main/java/com/forgon/disinfectsystem/returngoodsrecord/service/ReturnGoodsRecordManager.java (.../ReturnGoodsRecordManager.java) (revision 12777) @@ -45,6 +45,7 @@ public List loadDiposableGoodsPriceAmountInfoCanReturned( String warehouseID,String depart, String diposableGoodsID, String diposableGoodsName, String barcode, String batchNumber); + public List loadDiposableGoodsPriceAmountInfoCanReturned(String depart,String disposableGoodsBatchStockID); public Map saveForReturnDiposableGoods_TRANS_REQUIRED(ReturnGoodsRecord returnGoodsRecord); Index: ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordForm.js =================================================================== diff -u -r12775 -r12777 --- ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordForm.js (.../returnGoodsRecordForm.js) (revision 12775) +++ ssts-web/src/main/webapp/disinfectsystem/returnGoodsRecord/returnGoodsRecordForm.js (.../returnGoodsRecordForm.js) (revision 12777) @@ -939,8 +939,8 @@ showResult('请先选择仓库!'); return ; } - ReturnGoodsRecordTableManager.getDisposableGoodsBatchStocksByDisposableGoodsStockIDAndWarehouseDepart(record.data.id,warehouseID,depart,function(batchesStr){ - + var diposableGoodsID = record.data.id+''; + ReturnGoodsRecordTableManager.getBatchStocksByStockIDWarehouseDepart(diposableGoodsID,warehouseID,depart,function(batchesStr){ var batches = top.Ext4.JSON.decode(batchesStr); if(batches.length > 0){ for(var i=0;i loadDiposableGoodsPriceAmountInfoCanReturned(String depart,String disposableGoodsBatchStockID){ + StringBuilder sql = new StringBuilder(); + String diposableGoodsSql = null; + String batchSql = null; + List priceAmountList = new LinkedList(); + + String isNullFunction = DatabaseUtil.getSqlIsNullFunctionName(dbConnection); + + sql.append(String + .format("select d.price as price,min(d.fluctuationPrice) as fluctuationPrice, sum(%s(d.amount,0)) as sumAmount, sum(%s(d.returnedAmount,0)) as sumReturnedAmount from invoice i,DiposableGoodsItem d" + + " where i.id = d.invoice_id and d.disposableGoodsBatchStockID=%s and %s(d.amount,0)>%s(d.returnedAmount,0) and d.identificationID is not null ", isNullFunction, + isNullFunction,disposableGoodsBatchStockID,isNullFunction,isNullFunction)); + sql.append(" and i.settleAccountsDepart = '" + depart + "'");// 限定部门 + sql.append(" group by d.price "); + ResultSet resultSet = objectDao.executeSql(sql.toString()); + try { + while (resultSet.next()) { + Long sumAmount = resultSet.getLong("sumAmount"); + Long sumReturnedAmount = resultSet.getLong("sumReturnedAmount"); + Double price = resultSet.getDouble("price"); + Double fluctuationPrice = resultSet.getDouble("fluctuationPrice"); + + if(sumAmount <= sumReturnedAmount){ + continue; + } + ReturnGoodsItemVO.PriceAmount priceAmount = new ReturnGoodsItemVO.PriceAmount(); + priceAmount.setPrice(price); + priceAmount.setFluctuationPrice(fluctuationPrice); + priceAmount.setReturnedAmount(sumReturnedAmount); + priceAmount.setSentAmount(sumAmount); + priceAmountList.add(priceAmount); + } + } catch (SQLException e) { + e.printStackTrace(); + }finally { + DatabaseUtil.closeResultSetAndStatement(resultSet); + } + + return priceAmountList; + } // 根据一次性物品ID和部门,找出可以退货的批次 public String getDisposableGoodsBatchStocksByDisposableGoodsStockIDAndWarehouseDepart(String disposableGoodsID,String warehouseID, String depart) { Index: ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/basic/service/MaintainManagerImpl.java =================================================================== diff -u -r12728 -r12777 --- ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/basic/service/MaintainManagerImpl.java (.../MaintainManagerImpl.java) (revision 12728) +++ ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/basic/service/MaintainManagerImpl.java (.../MaintainManagerImpl.java) (revision 12777) @@ -785,12 +785,12 @@ } } } - if(diposableGoodsItem.getBatchID() == null){ - diposableGoodsItem.setBatchID(batchStock.getId()); + if(diposableGoodsItem.getDisposableGoodsBatchStockID() == null){ + diposableGoodsItem.setDisposableGoodsBatchStockID(batchStock.getId()); modifyed = true; } - if(diposableGoodsItem.getDiposableGoodsID() == null){ - diposableGoodsItem.setDiposableGoodsID(batchStock.getDiposableGoods().getId()); + if(diposableGoodsItem.getDisposableGoodsID() == null){ + diposableGoodsItem.setDisposableGoodsID(batchStock.getDiposableGoods().getId()); modifyed = true; } if(modifyed){ Index: ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/TestPDAReturnGoodReInvoiceManager.java =================================================================== diff -u -r12683 -r12777 --- ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/TestPDAReturnGoodReInvoiceManager.java (.../TestPDAReturnGoodReInvoiceManager.java) (revision 12683) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/TestPDAReturnGoodReInvoiceManager.java (.../TestPDAReturnGoodReInvoiceManager.java) (revision 12777) @@ -152,7 +152,7 @@ returnGoodsItem.setExpDate(disposableGoodsBatchStock.getExpDate().toString()); returnGoodsItem.setTousseName(disposableGoodsBatchStock.getDiposableGoods().getName()); returnGoodsItem.setBatchNumber(disposableGoodsBatchStock.getBatchNumber()); - returnGoodsItem.setBatchID(disposableGoodsBatchStock.getId()); + returnGoodsItem.setDisposableGoodsBatchStockID(disposableGoodsBatchStock.getId()); returnGoodsItem.setDiposableGoodsID(disposableGoodsBatchStock.getDiposableGoods().getId()); returnGoodsItem.setBarcode(disposableGoodsBatchStock.getBarcode()); List items = new ArrayList(); Index: ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/service/InventoryManagerImpl.java =================================================================== diff -u -r12738 -r12777 --- ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/service/InventoryManagerImpl.java (.../InventoryManagerImpl.java) (revision 12738) +++ ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/service/InventoryManagerImpl.java (.../InventoryManagerImpl.java) (revision 12777) @@ -688,7 +688,7 @@ returnGoodsItem.setBarcode(disposableGoodsBatchStock.getBarcode()); returnGoodsItem.setDiposableGoodBatchStock(disposableGoodsBatchStock); - returnGoodsItem.setBatchID(disposableGoodsBatchStock.getId()); + returnGoodsItem.setDisposableGoodsBatchStockID(disposableGoodsBatchStock.getId()); returnGoodsItem.setDiposableGoodsID(disposableGoodsStock.getId()); objectDao.saveOrUpdate(returnGoodsItem); }else{