diff --git a/o2server/x_base_core_project/src/main/java/com/x/base/core/project/script/ScriptFactory.java b/o2server/x_base_core_project/src/main/java/com/x/base/core/project/script/ScriptFactory.java index db052848f493b6a8a4a43936300c8adb6c895f15..dcffd4d13399fa8dcb711330434d8328391d411f 100644 --- a/o2server/x_base_core_project/src/main/java/com/x/base/core/project/script/ScriptFactory.java +++ b/o2server/x_base_core_project/src/main/java/com/x/base/core/project/script/ScriptFactory.java @@ -3,6 +3,7 @@ package com.x.base.core.project.script; import java.util.ArrayList; import java.util.Collection; import java.util.List; +import java.util.Map; import java.util.Objects; import javax.script.Compilable; @@ -10,7 +11,6 @@ import javax.script.CompiledScript; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; -import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.lang3.BooleanUtils; import com.google.gson.JsonArray; @@ -231,6 +231,9 @@ public class ScriptFactory { } } } + // Map类型也属于Iterable 所以必须在Iterable之前进行判断 + } else if (o instanceof Map) { + list.add(PropertyTools.getOrElse(o, JpaObject.DISTINGUISHEDNAME, String.class, "")); } else if (o instanceof Iterable) { for (Object obj : (Iterable) o) { if (null != obj) { @@ -264,7 +267,7 @@ public class ScriptFactory { } else { list.add(PropertyTools.getOrElse(o, JpaObject.DISTINGUISHEDNAME, String.class, "")); } - // ScriptObject or JO + // ScriptObject or JO } else if (o instanceof ScriptObject) { ScriptObject so = (ScriptObject) o; if (so.isArray()) { diff --git a/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/processor/manual/TranslateTaskIdentityTools.java b/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/processor/manual/TranslateTaskIdentityTools.java index df5f75f074055dbffbb7912f27adb74afa73c656..9878062c6a8977a3c9650a81a2e297f0dfab5b83 100644 --- a/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/processor/manual/TranslateTaskIdentityTools.java +++ b/o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/processor/manual/TranslateTaskIdentityTools.java @@ -31,7 +31,6 @@ import com.x.processplatform.service.processing.processor.AeiObjects; * @author Rui * */ -@SuppressWarnings("restriction") public class TranslateTaskIdentityTools { private static Logger logger = LoggerFactory.getLogger(TranslateTaskIdentityTools.class); @@ -167,35 +166,41 @@ public class TranslateTaskIdentityTools { for (String str : ListTools.trim(manual.getTaskDataPathList(), true, true)) { Object o = data.find(str); if (null != o) { - if (o instanceof CharSequence) { - if (OrganizationDefinition.isUnitDistinguishedName(str)) { - units.add(str); - } else if (OrganizationDefinition.isGroupDistinguishedName(str)) { - groups.add(str); - } else { - taskIdentities.addIdentity(o.toString()); - } - } else if (o instanceof Iterable) { - for (Object v : (Iterable) o) { - if (null != v) { - if ((v instanceof CharSequence)) { - String vs = v.toString(); - if (OrganizationDefinition.isUnitDistinguishedName(vs)) { - units.add(vs); - } else if (OrganizationDefinition.isGroupDistinguishedName(vs)) { - groups.add(vs); - } else { - taskIdentities.addIdentity(vs); - } - } else { - addObjectToTaskIdentities(taskIdentities, units, groups, v); - } - } - } - } else { - addObjectToTaskIdentities(taskIdentities, units, groups, o); - } + addObjectToTaskIdentities(taskIdentities, units, groups, o); } +// if (null != o) { +// if (o instanceof CharSequence) { +// if (OrganizationDefinition.isUnitDistinguishedName(str)) { +// units.add(str); +// } else if (OrganizationDefinition.isGroupDistinguishedName(str)) { +// groups.add(str); +// } else { +// taskIdentities.addIdentity(o.toString()); +// } +// } else if (o instanceof Iterable) { +// for (Object v : (Iterable) o) { +// System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!v class:" + v.getClass()); +// System.out.println(XGsonBuilder.toJson(v)); +// if (null != v) { +// if (v instanceof CharSequence) { +// String vs = v.toString(); +// if (OrganizationDefinition.isUnitDistinguishedName(vs)) { +// units.add(vs); +// } else if (OrganizationDefinition.isGroupDistinguishedName(vs)) { +// groups.add(vs); +// } else { +// taskIdentities.addIdentity(vs); +// } +// // } else if (v instanceof Entry) { +// } else { +// addObjectToTaskIdentities(taskIdentities, units, groups, v); +// } +// } +// } +// } else { +// addObjectToTaskIdentities(taskIdentities, units, groups, o); +// } +// } } } @@ -221,26 +226,4 @@ public class TranslateTaskIdentityTools { } } } - -// private static void addJsonObjectToTaskIdentities(TaskIdentities taskIdentities, List units, -// List group, JsonObject jsonObject) throws Exception { -// if (jsonObject.has(JpaObject.DISTINGUISHEDNAME)) { -// String d = jsonObject.get(JpaObject.DISTINGUISHEDNAME).getAsString(); -// if (OrganizationDefinition.isIdentityDistinguishedName(d)) { -// boolean ignore = false; -// if (jsonObject.has(TaskIdentity.IGNOREEMPOWER)) { -// ignore = BooleanUtils.isTrue( -// BooleanUtils.toBooleanObject(jsonObject.get(TaskIdentity.IGNOREEMPOWER).getAsString())); -// } -// TaskIdentity taskIdentity = new TaskIdentity(); -// taskIdentity.setIdentity(d); -// taskIdentity.setIgnoreEmpower(ignore); -// taskIdentities.add(taskIdentity); -// } else if (OrganizationDefinition.isUnitDistinguishedName(d)) { -// units.add(d); -// } else if (OrganizationDefinition.isGroupDistinguishedName(d)) { -// units.add(d); -// } -// } -// } } \ No newline at end of file