Index: ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/DiposableGoodsManagerImpl.java =================================================================== diff -u -r13031 -r13035 --- ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/DiposableGoodsManagerImpl.java (.../DiposableGoodsManagerImpl.java) (revision 13031) +++ ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/DiposableGoodsManagerImpl.java (.../DiposableGoodsManagerImpl.java) (revision 13035) @@ -73,6 +73,8 @@ import com.forgon.systemsetting.model.HttpOption; import com.forgon.systemsetting.service.HttpOptionManager; import com.forgon.tools.Constants; +import com.forgon.tools.GB2Alpha; +import com.forgon.tools.GB2WB; import com.forgon.tools.MathTools; import com.forgon.tools.db.DatabaseUtil; import com.forgon.tools.db.InitDbConnection; @@ -157,6 +159,8 @@ * 保存一次性物品定义 */ public void saveOrUpdate(DisposableGoods disposableGoods) { + disposableGoods.setSpelling(GB2Alpha.string2Alpha(disposableGoods.getName())); + disposableGoods.setWbCode(GB2WB.getWBCode(disposableGoods.getName())); // 处理“” if (StringUtils.isBlank(disposableGoods.getSpecification())) { disposableGoods.setSpecification(null); Index: ssts-web/src/test/java/test/forgon/disinfectsystem/diposablegoods/service/DiposableGoodsManagerTests.java =================================================================== diff -u -r13019 -r13035 --- ssts-web/src/test/java/test/forgon/disinfectsystem/diposablegoods/service/DiposableGoodsManagerTests.java (.../DiposableGoodsManagerTests.java) (revision 13019) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/diposablegoods/service/DiposableGoodsManagerTests.java (.../DiposableGoodsManagerTests.java) (revision 13035) @@ -381,95 +381,87 @@ initCSSDData(); WareHouse wareHouse1 = wareHouseManager.getDefaultWareHouseByUnitCode("testCSSD"); assertNotNull(wareHouse1); - DisposableGoodsStock goods = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "1ML"); - assertNull(goods); - DisposableGoodsStock diposableGoods = new DisposableGoodsStock(); - diposableGoods.setName("注射器"); - diposableGoods.setSpecification("1ML"); - diposableGoods.setType("注射器"); - diposableGoods.setSpelling(GB2Alpha.string2Alpha(diposableGoods + Long warehouseID = wareHouse1.getId(); + String warehouseName = wareHouse1.getName(); + + DisposableGoods disposableGoods = diposableGoodsManager.getDisposableGoodsByName("注射器", "1ML"); + assertNull(disposableGoods); + disposableGoods = new DisposableGoods(); + disposableGoods.setName("注射器"); + disposableGoods.setSpecification("1ML"); + disposableGoods.setType("注射器"); + disposableGoods.setSpelling(GB2Alpha.string2Alpha(disposableGoods .getName())); - diposableGoods.setWbCode(GB2WB.getWBCode(diposableGoods.getName())); - diposableGoodsManager.saveOrUpdate(diposableGoods); + disposableGoods.setWbCode(GB2WB.getWBCode(disposableGoods.getName())); + diposableGoodsManager.saveOrUpdate(disposableGoods); - goods = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "1ML"); - assertNotNull(goods); + disposableGoods = diposableGoodsManager.getDisposableGoodsByName("注射器", "1ML"); + assertNotNull(disposableGoods); + DisposableGoodsStock disposableGoodsStock = diposableGoodsManager.getDisposableGoodsStockByName(warehouseID, "注射器", "1ML"); + assertNull(disposableGoodsStock); - Set batchs = goods.getGoodsBatchs(); - assertNotNull(batchs); - assertEquals(0, batchs.size()); - Map result = new HashMap(); // 第一次入库,新批次 DisposableGoodsBatchStock disposableGoodsBatchStock = null; - try { - GodownEntry entry = new GodownEntry(); - GodownEntryItem godownEntryItem = new GodownEntryItem(); - godownEntryItem.setBatchNumber("20150704"); - godownEntryItem.setAmount(100L); - godownEntryItem.setCost(1.6); - godownEntryItem.setDisposableGoodsStockID(goods.getId()); - godownEntryItem.setManufacturer("广州白云山制药厂"); - godownEntryItem.setSupplierName("广州捷康医疗"); - godownEntryItem.setGodownEntry(entry); - godownEntryItem.setExpDate(new Date()); - entry.getItemsList().add(godownEntryItem); - godownEntryManager.saveGodownEntry_TRANS_REQUIRED(entry, result); - - disposableGoodsBatchStock = diposableGoodBatchStockManager.getDiposableGoodBatchStock(goods.getId().toString(), "20150704"); -// disposableGoodsBatchStock = diposableGoodsManager.addDiposableGoodsToStorage( -// goods, 100, "20150704", -// 1.6, new Date(), "广州捷康医疗", "", "广州白云山制药厂", ""); - } catch (Exception e1) { - e1.printStackTrace(); - } + GodownEntry entry1 = new GodownEntry(); + entry1.setWarehouseID(warehouseID); + entry1.setWarehouseName(warehouseName); + GodownEntryItem godownEntryItem11 = new GodownEntryItem(); + godownEntryItem11.setBatchNumber("20150704"); + godownEntryItem11.setAmount(100L); + godownEntryItem11.setCost(1.6); + godownEntryItem11.setDisposableGoodsID(disposableGoods.getId()); + godownEntryItem11.setManufacturer("广州白云山制药厂"); + godownEntryItem11.setSupplierName("广州捷康医疗"); + godownEntryItem11.setGodownEntry(entry1); + godownEntryItem11.setExpDate(new Date()); + entry1.getItemsList().add(godownEntryItem11); + godownEntryManager.saveGodownEntry_TRANS_REQUIRED(entry1, result); + disposableGoodsStock = diposableGoodsManager.getDisposableGoodsStockByName(warehouseID, "注射器", "1ML"); + assertNotNull(disposableGoodsStock); + disposableGoodsBatchStock = diposableGoodBatchStockManager.getDiposableGoodBatchStock(disposableGoodsStock.getId().toString(), "20150704"); assertNotNull(disposableGoodsBatchStock); + assertEquals(1.6, disposableGoodsBatchStock.getCost()); assertEquals(100, disposableGoodsBatchStock.getStorage().intValue()); - goods = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "1ML"); - assertEquals(1.6, goods.getReferencePrice()); - assertEquals(100, goods.getAmount().intValue()); + assertEquals(1.6, disposableGoods.getReferencePrice()); + assertEquals(1.6, disposableGoodsStock.getReferencePrice()); + assertEquals(100, disposableGoodsStock.getAmount().intValue()); - batchs = goods.getGoodsBatchs(); - + Set batchs = disposableGoodsStock.getGoodsBatchs(); assertNotNull(batchs); assertEquals(1, batchs.size()); - List identifications = batchs.iterator().next().getIdentifications(); assertNotNull(identifications); assertEquals(1, identifications.size()); // 第二次入库,另外一个批次和价格 - try { - GodownEntry entry = new GodownEntry(); - GodownEntryItem godownEntryItem = new GodownEntryItem(); - godownEntryItem.setBatchNumber("20150705"); - godownEntryItem.setAmount(200L); - godownEntryItem.setCost(1.71); - godownEntryItem.setDisposableGoodsStockID(goods.getId()); - godownEntryItem.setManufacturer("广州白云山制药厂"); - godownEntryItem.setSupplierName("广州捷康医疗"); - godownEntryItem.setGodownEntry(entry); - godownEntryItem.setExpDate(new Date()); - entry.getItemsList().add(godownEntryItem); - godownEntryManager.saveGodownEntry_TRANS_REQUIRED(entry, result); - - disposableGoodsBatchStock = diposableGoodBatchStockManager.getDiposableGoodBatchStock(goods.getId().toString(), "20150705"); -// disposableGoodsBatchStock = diposableGoodsManager.addDiposableGoodsToStorage( -// goods, 200, "20150705", -// 1.71, new Date(), "广州捷康医疗", "", "广州白云山制药厂", ""); - } catch (Exception e) { - e.printStackTrace(); - } - goods = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "1ML"); - assertEquals(1.71, goods.getReferencePrice()); - assertEquals(300, goods.getAmount().intValue()); + GodownEntry entry2 = new GodownEntry(); + entry2.setWarehouseID(warehouseID); + entry2.setWarehouseName(warehouseName); + GodownEntryItem godownEntryItem21 = new GodownEntryItem(); + godownEntryItem21.setBatchNumber("20150705"); + godownEntryItem21.setAmount(200L); + godownEntryItem21.setCost(1.71); + godownEntryItem21.setDisposableGoodsID(disposableGoods.getId()); + godownEntryItem21.setManufacturer("广州白云山制药厂"); + godownEntryItem21.setSupplierName("广州捷康医疗"); + godownEntryItem21.setGodownEntry(entry2); + godownEntryItem21.setExpDate(new Date()); + entry2.getItemsList().add(godownEntryItem21); + godownEntryManager.saveGodownEntry_TRANS_REQUIRED(entry2, result); + + disposableGoodsBatchStock = diposableGoodBatchStockManager.getDiposableGoodBatchStock(disposableGoodsStock.getId().toString(), "20150705"); + + assertEquals(1.71, disposableGoods.getReferencePrice()); + assertEquals(1.71, disposableGoodsStock.getReferencePrice()); + assertEquals(300, disposableGoodsStock.getAmount().intValue()); - batchs = goods.getGoodsBatchs(); + batchs = disposableGoodsStock.getGoodsBatchs(); assertNotNull(batchs); assertEquals(2, batchs.size()); assertEquals(1.71, disposableGoodsBatchStock.getCost()); @@ -504,19 +496,35 @@ @Test public void testOutStorageWhenStorageLessThanInvoiceAmount(){ initCSSDData(); + Map result = new HashMap(); WareHouse wareHouse1 = wareHouseManager.getDefaultWareHouseByUnitCode("testCSSD"); assertNotNull(wareHouse1); + Long warehouseID = wareHouse1.getId(); + String warehouseName = wareHouse1.getName(); DisposableGoodsStock goods = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "5ML"); assertNotNull(goods); assertEquals(1000, goods.getAmount().intValue()); + DisposableGoodsBatchStock disposableGoodsBatchStock = diposableGoodBatchStockManager.getDisposableGoodsBatchStockByNameAndBatchNumber(warehouseID, "注射器", "5ML", "b-20140101"); + assertNotNull(disposableGoodsBatchStock); + assertEquals(1000, disposableGoodsBatchStock.getStorage().intValue()); - try { - //diposableGoodsManager.outStorage(goods, "b-20140101", Long.valueOf(1500)); -// diposableGoodsManager.outStorage(goods, "b-20140101", false, 0, false, 1500); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + GodownEntry entry2 = new GodownEntry(); + entry2.setWarehouseID(warehouseID); + entry2.setWarehouseName(warehouseName); + GodownEntryItem godownEntryItem21 = new GodownEntryItem(); + godownEntryItem21.setBatchNumber("b-20140101"); + godownEntryItem21.setAmount(1500L); + godownEntryItem21.setCost(1.71); + godownEntryItem21.setDisposableGoodsID(goods.getDisposableGoodsID()); + godownEntryItem21.setDisposableGoodsStockID(goods.getId()); + godownEntryItem21.setDisposableGoodsBatchID(disposableGoodsBatchStock.getDisposableGoodsBatchID()); + godownEntryItem21.setDisposableGoodsBatchStockID(disposableGoodsBatchStock.getId()); + godownEntryItem21.setManufacturer("广州白云山制药厂"); + godownEntryItem21.setSupplierName("广州捷康医疗"); + godownEntryItem21.setGodownEntry(entry2); + godownEntryItem21.setExpDate(new Date()); + entry2.getItemsList().add(godownEntryItem21); + godownEntryManager.saveGodownOutEntry_TRANS_REQUIRED(entry2, result); goods = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "5ML"); assertNotNull(goods); Index: ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/DiposableGoodBatchStockManagerImpl.java =================================================================== diff -u -r13028 -r13035 --- ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/DiposableGoodBatchStockManagerImpl.java (.../DiposableGoodBatchStockManagerImpl.java) (revision 13028) +++ ssts-diposablegoods/src/main/java/com/forgon/disinfectsystem/diposablegoods/service/DiposableGoodBatchStockManagerImpl.java (.../DiposableGoodBatchStockManagerImpl.java) (revision 13035) @@ -117,7 +117,7 @@ return null; } String disposableGoodsSql = String - .format(" select d.id from %s d where %s and %s", + .format(" (select d.id from %s d where %s and %s)", DisposableGoods.class.getSimpleName(), SqlUtils .getStringFieldPredicate("d.name", disposableGoodsName), SqlUtils @@ -127,7 +127,7 @@ .getLongFieldPredicate("po.warehouseID", warehouseId), SqlUtils .getNonStringFieldPredicate("po.disposableGoodsID", disposableGoodsSql), SqlUtils - .getNonStringFieldPredicate("po.batchNumber", + .getStringFieldPredicate("po.batchNumber", batchNumber.trim())); DisposableGoodsBatchStock disposableGoodsBatchStock = (DisposableGoodsBatchStock) objectDao .getBySql(DisposableGoodsBatchStock.class.getSimpleName(), sql); Index: ssts-web/src/test/java/test/forgon/disinfectsystem/AbstractCSSDTest.java =================================================================== diff -u -r13019 -r13035 --- ssts-web/src/test/java/test/forgon/disinfectsystem/AbstractCSSDTest.java (.../AbstractCSSDTest.java) (revision 13019) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/AbstractCSSDTest.java (.../AbstractCSSDTest.java) (revision 13035) @@ -52,6 +52,8 @@ import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoods; import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoodsBatchStock; import com.forgon.disinfectsystem.entity.assestmanagement.DisposableGoodsStock; +import com.forgon.disinfectsystem.entity.assestmanagement.GodownEntry; +import com.forgon.disinfectsystem.entity.assestmanagement.GodownEntryItem; import com.forgon.disinfectsystem.entity.assestmanagement.IdentificationOfDisposableGoods; import com.forgon.disinfectsystem.entity.basedatamanager.container.Container; import com.forgon.disinfectsystem.entity.basedatamanager.materialdefinition.MaterialDefinition; @@ -1915,86 +1917,109 @@ * 纱块【6*8】 1000个,有2个批次【b-20140101】【b-20140202】,各1个标识号【i-001】【i-002】 */ protected void initDiposableGoodsData() { + Map result = new HashMap(); + WareHouse wareHouse1 = wareHouseManager.getDefaultWareHouseByUnitCode("testCSSD"); assertNotNull(wareHouse1); + Long warehouseID = wareHouse1.getId(); + String warehouseName = wareHouse1.getName(); + // 先保存定义 + // 注射器【5ML】 + DisposableGoods disposableGoods1 = new DisposableGoods(); + disposableGoods1.setName("注射器"); + disposableGoods1.setSpecification("5ML"); + disposableGoods1.setReferencePrice(1.5); + disposableGoods1.setType("注射器"); + diposableGoodsManager.saveOrUpdate(disposableGoods1); + // 注射器【10ML】 + DisposableGoods disposableGoods2 = new DisposableGoods(); + disposableGoods2.setName("注射器"); + disposableGoods2.setSpecification("10ML"); + disposableGoods2.setReferencePrice(1.4); + disposableGoods2.setType("注射器"); + diposableGoodsManager.saveOrUpdate(disposableGoods2); + // 纱块【6*8】 + DisposableGoods disposableGoods3 = new DisposableGoods(); + disposableGoods3.setName("纱块"); + disposableGoods3.setSpecification("6*8"); + disposableGoods3.setReferencePrice(1.4); + disposableGoods3.setType("纱块"); + diposableGoodsManager.saveOrUpdate(disposableGoods3); + // 开始入库 // 注射器【5ML】 1000个,有1个批次,1个标识号 - DisposableGoodsStock diposableGoods = new DisposableGoodsStock(); - diposableGoods.setName("注射器"); - diposableGoods.setSpecification("5ML"); - diposableGoods.setReferencePrice(1.5); - diposableGoods.setType("注射器"); - diposableGoods.setSpelling(GB2Alpha.string2Alpha(diposableGoods - .getName())); - diposableGoods.setWbCode(GB2WB.getWBCode(diposableGoods.getName())); - - Set goodsBatchs = new HashSet(); - DisposableGoodsBatchStock stock = new DisposableGoodsBatchStock(); - stock.setDiposableGoods(diposableGoods); -// stock.setType(BarcodeDevice.BARCODE_TYPE_DIPOSABLEGOODS); - String barcode = "010000900"; - stock.setBarcode(barcode); - stock.setBatchNumber("b-20140101"); - stock.setCost(1.5); - - List identifications = new ArrayList(); - IdentificationOfDisposableGoods ident = new IdentificationOfDisposableGoods(); - ident.setBatchStock(stock); - ident.setIdentification("i-001"); - ident.setAmount(1000L); - ident.setPrice(1.5); - - identifications.add(ident); - stock.setIdentifications(identifications); - goodsBatchs.add(stock); - diposableGoods.setGoodsBatchs(goodsBatchs); - diposableGoodsManager.saveOrUpdate(diposableGoods); - - assertEquals(1000, diposableGoods.getAmount().longValue()); - - + GodownEntry entry = new GodownEntry(); + entry.setWarehouseID(warehouseID); + entry.setWarehouseName(warehouseName); + GodownEntryItem godownEntryItem1 = new GodownEntryItem(); + godownEntryItem1.setBatchNumber("b-20140101"); + godownEntryItem1.setAmount(1000L); + godownEntryItem1.setCost(1.5); + godownEntryItem1.setDisposableGoodsID(disposableGoods1.getId()); + godownEntryItem1.setManufacturer("广州白云山制药厂"); + godownEntryItem1.setSupplierName("广州捷康医疗"); + godownEntryItem1.setGodownEntry(entry); + godownEntryItem1.setExpDate(new Date()); + godownEntryItem1.setIdentification("i-001"); + entry.getItemsList().add(godownEntryItem1); //注射器【10ML】 2000个,有1个批次,2个标识号 - DisposableGoodsStock diposableGoods1 = new DisposableGoodsStock(); - diposableGoods1.setName("注射器"); - diposableGoods1.setSpecification("10ML"); - diposableGoods1.setReferencePrice(1.4); - diposableGoods1.setType("注射器"); - diposableGoods1.setSpelling(GB2Alpha.string2Alpha(diposableGoods1 - .getName())); - diposableGoods1.setWbCode(GB2WB.getWBCode(diposableGoods1.getName())); + GodownEntryItem godownEntryItem2 = new GodownEntryItem(); + godownEntryItem2.setBatchNumber("b-20140101"); + godownEntryItem2.setAmount(1500L); + godownEntryItem2.setCost(1.3); + godownEntryItem2.setDisposableGoodsID(disposableGoods2.getId()); + godownEntryItem2.setManufacturer("广州白云山制药厂"); + godownEntryItem2.setSupplierName("广州捷康医疗"); + godownEntryItem2.setGodownEntry(entry); + godownEntryItem2.setExpDate(new Date()); + godownEntryItem2.setIdentification("i-001"); + entry.getItemsList().add(godownEntryItem2); - Set goodsBatchs1 = new HashSet(); - DisposableGoodsBatchStock stock1 = new DisposableGoodsBatchStock(); - stock1.setDiposableGoods(diposableGoods1); -// stock1.setType(BarcodeDevice.BARCODE_TYPE_DIPOSABLEGOODS); - barcode = "010000901"; - stock1.setBarcode(barcode); - stock1.setBatchNumber("b-20140101"); - stock1.setCost(2.5); + GodownEntryItem godownEntryItem3 = new GodownEntryItem(); + godownEntryItem3.setBatchNumber("b-20140101"); + godownEntryItem3.setAmount(500L); + godownEntryItem3.setCost(1.4); + godownEntryItem3.setDisposableGoodsID(disposableGoods2.getId()); + godownEntryItem3.setManufacturer("广州白云山制药厂"); + godownEntryItem3.setSupplierName("广州捷康医疗"); + godownEntryItem3.setGodownEntry(entry); + godownEntryItem3.setExpDate(new Date()); + godownEntryItem3.setIdentification("i-002"); + entry.getItemsList().add(godownEntryItem3); + //纱块【6*8】 2000个,有2个批次,各1个标识号 + GodownEntryItem godownEntryItem4 = new GodownEntryItem(); + godownEntryItem4.setBatchNumber("b-20140101"); + godownEntryItem4.setAmount(1500L); + godownEntryItem4.setCost(1.3); + godownEntryItem4.setDisposableGoodsID(disposableGoods3.getId()); + godownEntryItem4.setManufacturer("广州白云山制药厂"); + godownEntryItem4.setSupplierName("广州捷康医疗"); + godownEntryItem4.setGodownEntry(entry); + godownEntryItem4.setExpDate(new Date()); + godownEntryItem4.setIdentification("i-001"); + entry.getItemsList().add(godownEntryItem4); - List identifications1 = new ArrayList(); - IdentificationOfDisposableGoods ident1 = new IdentificationOfDisposableGoods(); - ident1.setBatchStock(stock1); - ident1.setIdentification("i-001"); - ident1.setAmount(1500L); - ident1.setPrice(1.3); + GodownEntryItem godownEntryItem5 = new GodownEntryItem(); + godownEntryItem5.setBatchNumber("b-20140202"); + godownEntryItem5.setAmount(500L); + godownEntryItem5.setCost(1.4); + godownEntryItem5.setDisposableGoodsID(disposableGoods3.getId()); + godownEntryItem5.setManufacturer("广州白云山制药厂"); + godownEntryItem5.setSupplierName("广州捷康医疗"); + godownEntryItem5.setGodownEntry(entry); + godownEntryItem5.setExpDate(new Date()); + godownEntryItem5.setIdentification("i-002"); + entry.getItemsList().add(godownEntryItem5); + godownEntryManager.saveGodownEntry_TRANS_REQUIRED(entry, result); - IdentificationOfDisposableGoods ident2 = new IdentificationOfDisposableGoods(); - ident2.setBatchStock(stock1); - ident2.setIdentification("i-002"); - ident2.setAmount(500L); - ident2.setPrice(1.4); + DisposableGoodsStock disposableGoodsStock1 = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "5ML"); + assertNotNull(disposableGoodsStock1); + assertEquals(1000, disposableGoodsStock1.getAmount().longValue()); - identifications1.add(ident1); - identifications1.add(ident2); - stock1.setIdentifications(identifications1); - goodsBatchs1.add(stock1); - diposableGoods1.setGoodsBatchs(goodsBatchs1); - diposableGoodsManager.saveOrUpdate(diposableGoods1); + DisposableGoodsStock disposableGoodsStock2 = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "10ML"); + assertNotNull(disposableGoodsStock2); + assertEquals(2000, disposableGoodsStock2.getAmount().longValue()); - DisposableGoodsStock goods = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "10ML"); - assertNotNull(goods); - - Set batchs = goods.getGoodsBatchs(); + Set batchs = disposableGoodsStock2.getGoodsBatchs(); assertNotNull(batchs); assertEquals(1, batchs.size()); @@ -2003,63 +2028,9 @@ assertEquals(2, idents.size()); //纱块【6*8】 2000个,有2个批次,各1个标识号 - DisposableGoodsStock diposableGoods2 = new DisposableGoodsStock(); - diposableGoods2.setName("纱块"); - diposableGoods2.setSpecification("6*8"); - //diposableGoods2.setAmount(2000L); - diposableGoods2.setReferencePrice(1.4); - diposableGoods2.setType("纱块"); - diposableGoods2.setSpelling(GB2Alpha.string2Alpha(diposableGoods2 - .getName())); - diposableGoods2.setWbCode(GB2WB.getWBCode(diposableGoods2.getName())); - - Set goodsBatchs2 = new HashSet(); - DisposableGoodsBatchStock stock2 = new DisposableGoodsBatchStock(); - stock2.setDiposableGoods(diposableGoods2); -// stock2.setType(BarcodeDevice.BARCODE_TYPE_DIPOSABLEGOODS); - barcode = "010000902"; - stock2.setBarcode(barcode); - stock2.setBatchNumber("b-20140101"); - stock2.setStorage(1500L); - stock2.setCost(1.3);; - - List identifications2 = new ArrayList(); - IdentificationOfDisposableGoods ident3 = new IdentificationOfDisposableGoods(); - ident3.setBatchStock(stock2); - ident3.setIdentification("i-001"); - ident3.setAmount(1500L); - ident3.setPrice(1.3); - - identifications2.add(ident3); - stock2.setIdentifications(identifications2); - goodsBatchs2.add(stock2); - - DisposableGoodsBatchStock stock3 = new DisposableGoodsBatchStock(); - stock3.setDiposableGoods(diposableGoods2); -// stock3.setType(BarcodeDevice.BARCODE_TYPE_DIPOSABLEGOODS); - barcode = "010000903"; - stock3.setBarcode(barcode); - stock3.setBatchNumber("b-20140202"); - stock3.setStorage(500L); - stock3.setCost(1.4); - - List identifications3 = new ArrayList(); - IdentificationOfDisposableGoods ident4 = new IdentificationOfDisposableGoods(); - ident4.setBatchStock(stock3); - ident4.setIdentification("i-002"); - ident4.setAmount(500L); - ident4.setPrice(1.4); - - identifications3.add(ident4); - stock3.setIdentifications(identifications3); - goodsBatchs2.add(stock3); - diposableGoods2.setGoodsBatchs(goodsBatchs2); - diposableGoodsManager.saveOrUpdate(diposableGoods2); - - assertNotNull(diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "5ML")); - assertNotNull(diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"注射器", "10ML")); - assertNotNull(diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"纱块", "6*8")); - + DisposableGoodsStock disposableGoodsStock3 = diposableGoodsManager.getDisposableGoodsStockByName(wareHouse1.getId(),"纱块", "6*8"); + assertNotNull(disposableGoodsStock3); + assertEquals(2000, disposableGoodsStock3.getAmount().longValue()); } /**