Index: ssts-web/src/test/java/test/forgon/disinfectsystem/dataProvider/application/ForeignTousseAppDataProvider.java =================================================================== diff -u -r17726 -r19934 --- ssts-web/src/test/java/test/forgon/disinfectsystem/dataProvider/application/ForeignTousseAppDataProvider.java (.../ForeignTousseAppDataProvider.java) (revision 17726) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/dataProvider/application/ForeignTousseAppDataProvider.java (.../ForeignTousseAppDataProvider.java) (revision 19934) @@ -1,6 +1,7 @@ package test.forgon.disinfectsystem.dataProvider.application; import com.forgon.disinfectsystem.entity.basedatamanager.foreigntoussedefinition.ForeignTousseDefinition; +import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; import com.forgon.disinfectsystem.entity.foreigntousseapplication.ForeignTousseApplication; import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; import net.sf.json.JSONArray; @@ -51,13 +52,13 @@ /** * 创建外来器械的物品 * - * @param name 外来器械的名字 + * @param tousseDefinition 外来器械对象 */ - public static JSONObject createForeignTousseItem(String name) { + public static JSONObject createForeignTousseItem(TousseDefinition tousseDefinition) { JSONObject foreignItem = new JSONObject(); foreignItem.put("tousseItemId", 0); - foreignItem.put("tousseDefinitionId", 0); - foreignItem.put("tousseName", name); + foreignItem.put("tousseDefinitionId", tousseDefinition.getId()); + foreignItem.put("tousseName", tousseDefinition.getName()); foreignItem.put("supplierName", "工商银行"); //外来器械包只能申请一个 foreignItem.put("amount", 1); @@ -81,21 +82,4 @@ return foreignTousseTreeDatas; } - - /** - * 构建外来器械申请单,物品如下: - * 测试外来器械包材料,数量5 - * 鼻窥,数量2 - * - * @return - */ - @DataProvider(name = "foreignTousseTreeDataProvider") - public static Object[][] foreignTousseTreeDataProvider() { - JSONObject material1 = MaterialDataProvider.createForeignMaterial(ForeignTousseConstant.测试外来器械包材料, 5); - JSONObject material2 = MaterialDataProvider.createForeignMaterial(ForeignTousseConstant.鼻窥, 2); - JSONArray materials = MaterialDataProvider.createMaterials(new JSONObject[]{material1, material2}); - JSONArray foreignTousseTreeDatas = createForeignTousseTreeDatas(createForeignTousseItem(ForeignTousseConstant.测试外来器械包), materials); - return new Object[][]{{foreignTousseTreeDatas}}; - } - } Index: ssts-web/src/test/java/test/forgon/disinfectsystem/recyclingrecord/service/ClassifyBasketsRecyclingSequenceTests.java =================================================================== diff -u -r19869 -r19934 --- ssts-web/src/test/java/test/forgon/disinfectsystem/recyclingrecord/service/ClassifyBasketsRecyclingSequenceTests.java (.../ClassifyBasketsRecyclingSequenceTests.java) (revision 19869) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/recyclingrecord/service/ClassifyBasketsRecyclingSequenceTests.java (.../ClassifyBasketsRecyclingSequenceTests.java) (revision 19934) @@ -223,7 +223,9 @@ JSONObject material1 = MaterialDataProvider.createForeignMaterial(CssdUtils.getMaterialName(mdTest钢板), 10); JSONObject material2 = MaterialDataProvider.createForeignMaterial(CssdUtils.getMaterialName(mdTest螺钉), 10); JSONArray materials = MaterialDataProvider.createMaterials(new JSONObject[]{material1, material2}); - JSONArray foreignTousseTreeDatas = ForeignTousseAppDataProvider.createForeignTousseTreeDatas(ForeignTousseAppDataProvider.createForeignTousseItem(Constants.TousseDefinitionName.Test骨钩), materials); + + TousseDefinition tousseDefinition_Test骨钩 = tousseDefinitionManager.getTousseDefinitionByName(Constants.TousseDefinitionName.Test骨钩); + JSONArray foreignTousseTreeDatas = ForeignTousseAppDataProvider.createForeignTousseTreeDatas(ForeignTousseAppDataProvider.createForeignTousseItem(tousseDefinition_Test骨钩), materials); //创建一张外来器械申请单 foreignTousseApplicationManager.saveOrUpdate(foreignTousseApplication, foreignTousseTreeDatas.toString(), ForeignTousseApplication.ACTION_TYPE_ADD); td_Test骨钩 = tousseDefinitionManager.getForeignTousseDefinitionByNameAPPIDAndSupplierName(Constants.TousseDefinitionName.Test骨钩, appId + "", "工商银行"); Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/foreigntousseapplication/service/ForeignTousseApplicationManagerImpl.java =================================================================== diff -u -r19905 -r19934 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/foreigntousseapplication/service/ForeignTousseApplicationManagerImpl.java (.../ForeignTousseApplicationManagerImpl.java) (revision 19905) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/foreigntousseapplication/service/ForeignTousseApplicationManagerImpl.java (.../ForeignTousseApplicationManagerImpl.java) (revision 19934) @@ -312,6 +312,13 @@ if(StringUtils.isBlank(cleanedEntirely)){ cleanedEntirely = TousseDefinition.STR_YES; } + + //如果是干预功能的话,先把之前的“器械包名称”和“供应商名称”置空,下面重新赋值 + if (ForeignTousseApplication.ACTION_TYPE_INTERFERE.equals(actionType)) { + foreignTousseApplication.setTousseName(null); + foreignTousseApplication.setSupplierName(null); + } + for(int i = 0;i < jsonArray.size();i++){ JSONObject obj = jsonArray.optJSONObject(i); if(obj != null){ Index: ssts-web/src/test/java/test/forgon/disinfectsystem/application/TestForeignTousseGoodRecyclingApplication.java =================================================================== diff -u -r19804 -r19934 --- ssts-web/src/test/java/test/forgon/disinfectsystem/application/TestForeignTousseGoodRecyclingApplication.java (.../TestForeignTousseGoodRecyclingApplication.java) (revision 19804) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/application/TestForeignTousseGoodRecyclingApplication.java (.../TestForeignTousseGoodRecyclingApplication.java) (revision 19934) @@ -8,10 +8,14 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.orm.hibernate4.HibernateTemplate; +import org.testng.annotations.DataProvider; import org.testng.annotations.Test; +import test.forgon.constant.Constants; import test.forgon.disinfectsystem.AbstractCSSDTest; import test.forgon.disinfectsystem.application.assertThat.RecyclingApplicationAssert; +import test.forgon.disinfectsystem.constants.ForeignTousseConstant; import test.forgon.disinfectsystem.dataProvider.application.ForeignTousseAppDataProvider; +import test.forgon.disinfectsystem.dataProvider.tousseDefinition.MaterialDataProvider; import java.util.HashMap; import java.util.Map; @@ -40,7 +44,7 @@ * * @param foreignTousseTreeDatas 这张申请单的数据 */ - @Test(dataProvider = "foreignTousseTreeDataProvider", dataProviderClass = ForeignTousseAppDataProvider.class) + @Test(dataProvider = "foreignTousseTreeDataProvider") public void testForeignTousseGoodRecyclingApplicationCRUD(JSONArray foreignTousseTreeDatas) { this.prepareData(); // String foreignTousseTreeData = "[{tousseItemId:0,tousseDefinitionId:0,tousseName:\"测试外来器械包\",supplierName:\"工商银行\",amount:1,price:0," + @@ -56,7 +60,7 @@ this.assertForeignTousseGoodRecyclingApplication(result, expectedMaterials); assertEquals(result.getSupplierName(), "工商银行"); JSONArray updateForeignTousseTreeData = this.buildUpdateForeignTousse(foreignTousseTreeDatas); - foreignTousseApplicationManager.saveOrUpdate(foreignTousseApplication, updateForeignTousseTreeData.toString(), ForeignTousseApplication.ACTION_TYPE_ADD); + foreignTousseApplicationManager.saveOrUpdate(foreignTousseApplication, updateForeignTousseTreeData.toString(), ForeignTousseApplication.ACTION_TYPE_INTERFERE); expectedMaterials = this.buildExpectedMaterials(updateForeignTousseTreeData); result = ht.get(ForeignTousseApplication.class, id); this.assertForeignTousseGoodRecyclingApplication(result, expectedMaterials); @@ -66,11 +70,27 @@ assertNull(result); } + /** + * 构建外来器械申请单,物品如下: + * 测试外来器械包材料,数量5 + * 鼻窥,数量2 + * + * @return + */ + @DataProvider(name = "foreignTousseTreeDataProvider") + public Object[][] foreignTousseTreeDataProvider() { + JSONObject material1 = MaterialDataProvider.createForeignMaterial(ForeignTousseConstant.测试外来器械包材料, 5); + JSONObject material2 = MaterialDataProvider.createForeignMaterial(ForeignTousseConstant.鼻窥, 2); + JSONArray materials = MaterialDataProvider.createMaterials(new JSONObject[]{material1, material2}); + TousseDefinition tousseDefinition_Test骨钩 = tousseDefinitionManager.getTousseDefinitionByName(Constants.TousseDefinitionName.Test骨钩); + JSONArray foreignTousseTreeDatas = ForeignTousseAppDataProvider.createForeignTousseTreeDatas(ForeignTousseAppDataProvider.createForeignTousseItem(tousseDefinition_Test骨钩), materials); + return new Object[][]{{foreignTousseTreeDatas}}; + } /** * 终止外来器械申请单 */ - @Test(dataProvider = "foreignTousseTreeDataProvider", dataProviderClass = ForeignTousseAppDataProvider.class) + @Test(dataProvider = "foreignTousseTreeDataProvider") public void testForeignTousseGoodRecyclingApplicationTerminate(JSONArray foreignTousseTreeDatas) { this.prepareData(); ForeignTousseApplication foreignTousseApplication = ForeignTousseAppDataProvider.createForeignTousseApplication();