Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java =================================================================== diff -u -r40626 -r40751 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 40626) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 40751) @@ -1424,7 +1424,7 @@ optionCleanMethodJsonArr = tousseDefOptionCleanMethodManager.loadOptionCleanMethodJSONArray(tousseDefinition.getId()); } if(tousseDefinition.isForeignTousse()){ - int applicatedAmount = objectDao.countBySql(String.format("select count(1) from %s where ancestorID = %s", TousseItem.class.getSimpleName(), tousseDefinition.getId())); + int applicatedAmount = objectDao.countBySql(String.format("select count(1) from %s where ancestorID = %s and id <> %s", TousseDefinition.class.getSimpleName(), tousseDefinition.getId(), tousseDefinition.getId())); data.put("applicatedAmount", applicatedAmount); } data.put("optionCleanMethodJsonArr", optionCleanMethodJsonArr); Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java =================================================================== diff -u -r40599 -r40751 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 40599) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 40751) @@ -396,6 +396,13 @@ if (CollectionUtils.isNotEmpty(tousseItemList)) { return false; } + + if(tousseDefinition.isForeignTousse()){ + int applicatedAmount = objectDao.countBySql(String.format("select count(1) from %s where ancestorID = %s and id <> %s", TousseDefinition.class.getSimpleName(), tousseDefinition.getId(), tousseDefinition.getId())); + if(applicatedAmount > 0){ + return false; + } + } List tousseInstanceList = null; if(StringUtils.isNotBlank(tousseDefinition.getName())){