Index: ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/AllTests.xml =================================================================== diff -u -r12331 -r16776 --- ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/AllTests.xml (.../AllTests.xml) (revision 12331) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/AllTests.xml (.../AllTests.xml) (revision 16776) @@ -8,9 +8,8 @@ - - + Index: ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/TestPDAProxyTousseGoodsInvoiceManager.java =================================================================== diff -u -r16751 -r16776 --- ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/TestPDAProxyTousseGoodsInvoiceManager.java (.../TestPDAProxyTousseGoodsInvoiceManager.java) (revision 16751) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/TestPDAProxyTousseGoodsInvoiceManager.java (.../TestPDAProxyTousseGoodsInvoiceManager.java) (revision 16776) @@ -15,6 +15,7 @@ import com.forgon.disinfectsystem.entity.assestmanagement.TousseStock; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseInstance; +import com.forgon.disinfectsystem.entity.basedatamanager.warehouse.WareHouse; import com.forgon.disinfectsystem.entity.foreigntousseapplication.ForeignTousseApplication; import com.forgon.disinfectsystem.entity.invoicemanager.Invoice; import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; @@ -41,13 +42,16 @@ * 创建一张普通器械的代理灭菌申请单,申请数量为3个Test开胸包 */ public void createProxyTousseGoodsApplication(){ + TousseDefinition tousseDefinition1 = tousseDefinitionManager.getTousseDefinitionByName("Test开胸包"); ProxyDisinfection proxyDisinfection = new ProxyDisinfection(); proxyDisinfection.setApplicant("林倩"); proxyDisinfection.setApplicationTime(new Date()); proxyDisinfection.setCommittedStatus(true); proxyDisinfection.setDeliverStatus(InvoicePlan.DELIVERSTATUS_AWAITDELIVER); proxyDisinfection.setDepart(Constants.ORG_UNIT_NAME_OR); proxyDisinfection.setDepartCoding(Constants.ORG_UNIT_CODE_OR); + proxyDisinfection.setHandleDepart(Constants.ORG_UNIT_NAME_CSSD); + proxyDisinfection.setHandleDepartCoding(Constants.ORG_UNIT_CODE_CSSD); proxyDisinfection.setType(InvoicePlan.TYPE_PROXYDISINFECTION); proxyDisinfection.setSerialNumber("2014101820001"); proxyDisinfection.setSettleAccountsDepart(Constants.ORG_UNIT_NAME_OR); @@ -57,6 +61,7 @@ List list = new ArrayList(); TousseItem item = new TousseItem(); item.setTousseName("Test开胸包"); + item.setTousseDefinitionId(tousseDefinition1.getId()); item.setAmount(3); item.setDiposable("否"); item.setInvoicePlan(proxyDisinfection); @@ -85,6 +90,8 @@ proxyDisinfection.setDeliverStatus(InvoicePlan.DELIVERSTATUS_AWAITDELIVER); proxyDisinfection.setDepart(Constants.ORG_UNIT_NAME_DISINFECT); proxyDisinfection.setDepartCoding(Constants.ORG_UNIT_CODE_DISINFECT);//"900202");//要发给供应室 + proxyDisinfection.setHandleDepart(Constants.ORG_UNIT_NAME_CSSD); + proxyDisinfection.setHandleDepartCoding(Constants.ORG_UNIT_CODE_CSSD); proxyDisinfection.setType(InvoicePlan.TYPE_PROXYDISINFECTION); proxyDisinfection.setSerialNumber("2014101810001"); proxyDisinfection.setSettleAccountsDepart(Constants.ORG_UNIT_NAME_DISINFECT); @@ -232,97 +239,221 @@ */ @Test public void testSendAllProxyTousseGoods(){ - //运行前对全局变量清空,以防止影响下一个用例的运行结果 - map.clear(); - for(String barcode :barcodeArray1){ - map.put(barcode, 1); + + prepareData(testAll); + WareHouse wareHouse_CSSD = wareHouseManager.getDefaultWareHouseByUnitCode(Constants.ORG_UNIT_CODE_CSSD); + assertNotNull(wareHouse_CSSD); + + JSONObject params = new JSONObject(); + JSONArray invoiceItems1 = new JSONArray(); + + //发普通器械包 + for(String barcode : barcodeArray1){ + JSONObject invoiceItems1_1 = new JSONObject(); + invoiceItems1_1.put("barcode", barcode); + invoiceItems1_1.put("sendAmount", 1); + invoiceItems1_1.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_1); } - map.put("departCode", Constants.ORG_UNIT_CODE_OR); - String jsonStr = createSendOutParam(map); - sendProxyTousseGoods(jsonStr, testAll); + + params.put("mode", "depart"); + params.put("departCode", Constants.ORG_UNIT_CODE_OR); + params.put("assistantSender", "朱广兴"); + params.put("sender", "朱广兴"); + params.put("invoiceItems", invoiceItems1); + params.put("sourceWarehouseId", wareHouse_CSSD.getId()); + params.put("sourceWarehouseName", wareHouse_CSSD.getName()); + + sendProxyTousseGoods(params.toString(), testAll); } /* * 测试代理灭菌普通器械包部分发货 */ @Test public void testSendPartProxyTousseGoods(){ - //运行前对全局变量清空,以防止影响下一个用例的运行结果 - map.clear(); - map.put("201410180001", 1); - map.put("201410180002", 1); - map.put("departCode", Constants.ORG_UNIT_CODE_OR); - String jsonStr = createSendOutParam(map); - sendProxyTousseGoods(jsonStr, testPart); + prepareData(testPart); + WareHouse wareHouse_CSSD = wareHouseManager.getDefaultWareHouseByUnitCode(Constants.ORG_UNIT_CODE_CSSD); + assertNotNull(wareHouse_CSSD); + + JSONObject params = new JSONObject(); + JSONArray invoiceItems1 = new JSONArray(); + + //发普通器械包 + JSONObject invoiceItems1_1 = new JSONObject(); + invoiceItems1_1.put("barcode", "201410180001"); + invoiceItems1_1.put("sendAmount", 1); + invoiceItems1_1.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_1); + + JSONObject invoiceItems1_2 = new JSONObject(); + invoiceItems1_2.put("barcode", "201410180002"); + invoiceItems1_2.put("sendAmount", 1); + invoiceItems1_2.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_2); + + params.put("mode", "depart"); + params.put("departCode", Constants.ORG_UNIT_CODE_OR); + params.put("assistantSender", "朱广兴"); + params.put("sender", "朱广兴"); + params.put("invoiceItems", invoiceItems1); + params.put("sourceWarehouseId", wareHouse_CSSD.getId()); + params.put("sourceWarehouseName", wareHouse_CSSD.getName()); + + sendProxyTousseGoods(params.toString(), testPart); } /* * 测试代理灭菌外来器械包部分发货 */ @Test public void testSendPartProxyTousseGoodsForForeignTousse(){ - //运行前对全局变量清空,以防止影响下一个用例的运行结果 - map.clear(); - map.put("201410180001", 1); - map.put("201410180002", 1); - map.put("departCode", Constants.ORG_UNIT_CODE_OR); - String jsonStr = createSendOutParam(map); - sendProxyTousseGoods(jsonStr, testPart); + prepareData(testPart); + WareHouse wareHouse_CSSD = wareHouseManager.getDefaultWareHouseByUnitCode(Constants.ORG_UNIT_CODE_CSSD); + assertNotNull(wareHouse_CSSD); + + JSONObject params = new JSONObject(); + JSONArray invoiceItems1 = new JSONArray(); + + //发普通器械包 + JSONObject invoiceItems1_1 = new JSONObject(); + invoiceItems1_1.put("barcode", "201410180001"); + invoiceItems1_1.put("sendAmount", 1); + invoiceItems1_1.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_1); + + JSONObject invoiceItems1_2 = new JSONObject(); + invoiceItems1_2.put("barcode", "201410180002"); + invoiceItems1_2.put("sendAmount", 1); + invoiceItems1_2.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_2); + + params.put("mode", "depart"); + params.put("departCode", Constants.ORG_UNIT_CODE_OR); + params.put("assistantSender", "朱广兴"); + params.put("sender", "朱广兴"); + params.put("invoiceItems", invoiceItems1); + params.put("sourceWarehouseId", wareHouse_CSSD.getId()); + params.put("sourceWarehouseName", wareHouse_CSSD.getName()); + + sendProxyTousseGoods(params.toString(), testPart); } /* * 测试代理灭菌外来器械包不拆分小包全部发货 */ @Test public void testSendAllProxyTousseGoodsForForeignTousse(){ - //运行前对全局变量清空,以防止影响下一个用例的运行结果 - map.clear(); - map.put(barcodeArray2[0], 1); - map.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT);//要发给供应室 - String jsonStr = createSendOutParam(map); - sendProxyTousseGoods(jsonStr, testAll_foreign_no_splited); + + prepareData(testAll_foreign_no_splited); + WareHouse wareHouse_CSSD = wareHouseManager.getDefaultWareHouseByUnitCode(Constants.ORG_UNIT_CODE_CSSD); + assertNotNull(wareHouse_CSSD); + + JSONObject params = new JSONObject(); + JSONArray invoiceItems1 = new JSONArray(); + + //发普通器械包 + JSONObject invoiceItems1_1 = new JSONObject(); + invoiceItems1_1.put("barcode", barcodeArray2[0]); + invoiceItems1_1.put("sendAmount", 1); + invoiceItems1_1.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_1); + + params.put("mode", "depart"); + params.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT); + params.put("assistantSender", "朱广兴"); + params.put("sender", "朱广兴"); + params.put("invoiceItems", invoiceItems1); + params.put("sourceWarehouseId", wareHouse_CSSD.getId()); + params.put("sourceWarehouseName", wareHouse_CSSD.getName()); + +// map.put(barcodeArray2[0], 1); +// map.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT);//要发给供应室 +// String jsonStr = createSendOutParam(map); + sendProxyTousseGoods(params.toString(), testAll_foreign_no_splited); } /* * 测试代理灭菌外来器械包拆分小包全部发货 */ @Test public void testSendAllProxyTousseGoodsForForeignTousseWithSplitedTousse(){ - //运行前对全局变量清空,以防止影响下一个用例的运行结果 - map.clear(); + prepareData(testAll_foreign_with_splited); + WareHouse wareHouse_CSSD = wareHouseManager.getDefaultWareHouseByUnitCode(Constants.ORG_UNIT_CODE_CSSD); + assertNotNull(wareHouse_CSSD); + + JSONObject params = new JSONObject(); + JSONArray invoiceItems1 = new JSONArray(); + + //发普通器械包 + for(String barcode : barcodeArray2){ + JSONObject invoiceItems1_1 = new JSONObject(); + invoiceItems1_1.put("barcode", barcode); + invoiceItems1_1.put("sendAmount", 1); + invoiceItems1_1.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_1); + } + + params.put("mode", "depart"); + params.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT); + params.put("assistantSender", "朱广兴"); + params.put("sender", "朱广兴"); + params.put("invoiceItems", invoiceItems1); + params.put("sourceWarehouseId", wareHouse_CSSD.getId()); + params.put("sourceWarehouseName", wareHouse_CSSD.getName()); for(String barcode :barcodeArray2){ map.put(barcode, 1); } - map.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT);//要发给供应室 - String jsonStr = createSendOutParam(map); - sendProxyTousseGoods(jsonStr, testAll_foreign_with_splited); +// map.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT);//要发给供应室 +// String jsonStr = createSendOutParam(map); + sendProxyTousseGoods(params.toString(), testAll_foreign_with_splited); } /* * 测试代理灭菌外来器械包拆分小包部分发货 */ @Test public void testSendPartProxyTousseGoodsForForeignTousseWithSplitedTousse(){ - //运行前对全局变量清空,以防止影响下一个用例的运行结果 - map.clear(); - map.put("201410181111", 1); - map.put("201410182222", 1); - map.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT);//要发给供应室 - String jsonStr = createSendOutParam(map); - sendProxyTousseGoods(jsonStr, testPart_foreign_with_splited); + prepareData(testPart_foreign_with_splited); + WareHouse wareHouse_CSSD = wareHouseManager.getDefaultWareHouseByUnitCode(Constants.ORG_UNIT_CODE_CSSD); + assertNotNull(wareHouse_CSSD); + + JSONObject params = new JSONObject(); + JSONArray invoiceItems1 = new JSONArray(); + + //发普通器械包 + JSONObject invoiceItems1_1 = new JSONObject(); + invoiceItems1_1.put("barcode", "201410181111"); + invoiceItems1_1.put("sendAmount", 1); + invoiceItems1_1.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_1); + + JSONObject invoiceItems1_2 = new JSONObject(); + invoiceItems1_2.put("barcode", "201410182222"); + invoiceItems1_2.put("sendAmount", 1); + invoiceItems1_2.put("isRoutine", TousseInstance.ROUTINE_YES); + invoiceItems1.add(invoiceItems1_2); + + params.put("mode", "depart"); + params.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT); + params.put("assistantSender", "朱广兴"); + params.put("sender", "朱广兴"); + params.put("invoiceItems", invoiceItems1); + params.put("sourceWarehouseId", wareHouse_CSSD.getId()); + params.put("sourceWarehouseName", wareHouse_CSSD.getName()); + +// map.put("201410181111", 1); +// map.put("201410182222", 1); +// map.put("departCode", Constants.ORG_UNIT_CODE_DISINFECT);//要发给供应室 +// String jsonStr = createSendOutParam(map); + sendProxyTousseGoods(params.toString(), testPart_foreign_with_splited); } @SuppressWarnings("unchecked") public void sendProxyTousseGoods(String jsonStr, String type){ - prepareData(type); +// prepareData(type); - TousseStock stockBefore = null; - if(type.equals(testAll) || type.equals(testPart)){ - //发货前库存量 - stockBefore = tousseStockManager.getTousseStockByTousseName("Test开胸包"); - assertNotNull(stockBefore); - assertEquals(3, stockBefore.getTousseAmount().intValue()); - } + webServiceManager.submitInvoicePlans(jsonStr); //发货单 Invoice invoice = null; @@ -345,10 +476,6 @@ //断言发货状态为已发货 assertEquals(TousseInstance.STATUS_SHIPPED , instance.getStatus()); } - TousseStock stockAfter = tousseStockManager.getTousseStockByTousseName("Test开胸包"); - objectDao.getHibernateSession().refresh(stockAfter); - //断言发货后器械包库存为0个 - assertEquals( 0 ,stockAfter.getTousseAmount().intValue()); //断言申请单状态为已发货 assertEquals(InvoicePlan.DELIVERSTATUS_DELIVERED , invoice.getInvoicePlan().getDeliverStatus()); @@ -368,10 +495,6 @@ assertEquals(TousseInstance.STATUS_SHIPPED , instance.getStatus()); } - TousseStock stockAfter = tousseStockManager.getTousseStockByTousseName("Test开胸包"); - objectDao.getHibernateSession().refresh(stockAfter); - //断言部分发货后器械包库存为1个 - assertEquals( 1 ,stockAfter.getTousseAmount().intValue()); //断言申请单状态为部分发货 assertEquals(InvoicePlan.DELIVERSTATUS_PARTDELIVERED , invoice.getInvoicePlan().getDeliverStatus()); Fisheye: Tag 16776 refers to a dead (removed) revision in file `ssts-web/src/test/java/test/forgon/disinfectsystem/invoicemanager/service/PDAORInvoiceManagerTests.java'. Fisheye: No comparison available. Pass `N' to diff?