Kaynağa Gözat

fix:【BPM 工作流】流程预测时,“查看子流程”按钮不支持点击

YunaiV 6 ay önce
ebeveyn
işleme
2a06f6744d

+ 1 - 0
src/api/bpm/processInstance/index.ts

@@ -48,6 +48,7 @@ export type ApprovalNodeInfo = {
   status: number
   startTime?: Date
   endTime?: Date
+  processInstanceId?: string
   candidateUsers?: User[]
   tasks: ApprovalTaskInfo[]
 }

+ 2 - 1
src/components/DiyEditor/index.vue

@@ -269,7 +269,8 @@ watch(
     if (!val || selectedComponentIndex.value === -1) {
       return
     }
-    // 如果是基础设置页,默认选中的索引改成-1,为了防止删除组件后切换到此页导致报错
+    // 如果是基础设置页,默认选中的索引改成 -1,为了防止删除组件后切换到此页导致报错
+    // https://gitee.com/yudaocode/yudao-ui-admin-vue3/pulls/792
     if (props.showTabBar) {
       selectedComponentIndex.value = -1
     }

+ 10 - 2
src/views/bpm/processInstance/detail/ProcessInstanceTimeline.vue

@@ -38,7 +38,13 @@
           </div>
         </div>
         <div v-if="activity.nodeType === NodeType.CHILD_PROCESS_NODE">
-          <el-button type="primary" plain size="small" @click="handleChildProcess(activity)">
+          <el-button
+            type="primary"
+            plain
+            size="small"
+            @click="handleChildProcess(activity)"
+            :disabled="!activity.processInstanceId"
+          >
             查看子流程
           </el-button>
         </div>
@@ -319,7 +325,9 @@ const handleUserSelectConfirm = (activityId: string, userList: any[]) => {
 
 /** 跳转子流程 */
 const handleChildProcess = (activity: any) => {
-  // TODO @lesan:貌似跳不过去?!
+  if (!activity.processInstanceId) {
+    return
+  }
   push({
     name: 'BpmProcessInstanceDetail',
     query: {