diff --git a/com.awspaas.user.apps.app20221008163300/src/com/awspaas/user/apps/app/event/ProcessEndAfterEventForPermissionSupplement.java b/com.awspaas.user.apps.app20221008163300/src/com/awspaas/user/apps/app/event/ProcessEndAfterEventForPermissionSupplement.java index a79c76d4..489f3056 100644 --- a/com.awspaas.user.apps.app20221008163300/src/com/awspaas/user/apps/app/event/ProcessEndAfterEventForPermissionSupplement.java +++ b/com.awspaas.user.apps.app20221008163300/src/com/awspaas/user/apps/app/event/ProcessEndAfterEventForPermissionSupplement.java @@ -11,6 +11,7 @@ import com.actionsoft.bpms.util.UtilString; import com.actionsoft.sdk.local.SDK; import java.util.Arrays; +import java.util.HashSet; import java.util.stream.Collectors; @@ -66,6 +67,36 @@ public class ProcessEndAfterEventForPermissionSupplement extends ExecuteListener if (UtilString.isNotEmpty(postPerm)) { postPerm = postPerm + "," + postStr; } + }else { + String postPerms = ""; + String levelPerms = ""; + String orgPerms = ""; + if (postPerm.contains(",")){ + String[] split = postPerm.split(","); + String[] post_split = removeDuplicates(split); + for (String post:post_split){ + postPerms += post+","; + } + postPerm = postPerms.substring(0,postPerms.length()-1); + } + if (levelPerm.contains(",")){ + String[] split = levelPerm.split(","); + String[] level_split = removeDuplicates(split); + for (String level: + level_split) { + levelPerms += level+","; + } + levelPerm = levelPerms.substring(0,levelPerms.length()-1); + } + if (orgPerm.contains(",")){ + String[] split = orgPerm.split(","); + String[] org_split = removeDuplicates(split); + for (String org + :org_split){ + orgPerms += org+","; + } + orgPerm = orgPerms.substring(0,orgPerms.length()-1); + } } //需要补发权限的权限阅览id String bindId = byProcess.getString("PUBLISHUSPROSSINSID"); @@ -76,4 +107,9 @@ public class ProcessEndAfterEventForPermissionSupplement extends ExecuteListener System.out.println("权限阅览流程实例id为:" + bindId + "的权限补发成功"); } + + public static String[] removeDuplicates(String[] array) { + HashSet set = new HashSet<>(Arrays.asList(array)); + return set.toArray(new String[0]); + } }