瀏覽代碼

fix 修复 多角色未拆分问题

疯狂的狮子Li 3 月之前
父節點
當前提交
9086d32bee

+ 9 - 4
ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskAssigneeServiceImpl.java

@@ -129,11 +129,16 @@ public class FlwTaskAssigneeServiceImpl implements IFlwTaskAssigneeService, Hand
      */
     @Override
     public List<UserDTO> fetchUsersByStorageId(String storageId) {
-        String[] parts = storageId.split(StrUtil.COLON, 2);
-        if (parts.length < 2) {
-            return getUsersByType(TaskAssigneeEnum.USER, List.of(Long.valueOf(parts[0])));
+        List<UserDTO> list = new ArrayList<>();
+        for (String str : storageId.split(StrUtil.COMMA)) {
+            String[] parts = str.split(StrUtil.COLON, 2);
+            TaskAssigneeEnum enumd = TaskAssigneeEnum.USER;
+            if (parts.length >= 2) {
+                enumd = TaskAssigneeEnum.fromDesc(parts[0] + StrUtil.COLON);
+            }
+            list.addAll(getUsersByType(enumd, List.of(Long.valueOf(parts[1]))));
         }
-        return getUsersByType(TaskAssigneeEnum.fromCode(parts[0] + StrUtil.COLON), List.of(Long.valueOf(parts[1])));
+        return list;
     }
 
     /**