From 8833eb205b0cd59f61a5af433e037b18a2e45041 Mon Sep 17 00:00:00 2001
From: gssong <1742057357@qq.com>
Date: 星期六, 09 三月 2024 11:10:19 +0800
Subject: [PATCH] add 添加终止任务

---
 src/components/Process/submitVerify.vue |   21 +++++++++++++++++++--
 src/api/workflow/task/index.ts          |   11 +++++++++++
 2 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/src/api/workflow/task/index.ts b/src/api/workflow/task/index.ts
index 03265e1..6c4538f 100644
--- a/src/api/workflow/task/index.ts
+++ b/src/api/workflow/task/index.ts
@@ -192,3 +192,14 @@
     data: data
   });
 };
+/**
+ * 缁堟浠诲姟
+ * @returns
+ */
+export const terminationTask = (data: any) => {
+  return request({
+    url: `/workflow/task/terminationTask`,
+    method: 'post',
+    data: data
+  });
+};
diff --git a/src/components/Process/submitVerify.vue b/src/components/Process/submitVerify.vue
index 54e6678..ead353b 100644
--- a/src/components/Process/submitVerify.vue
+++ b/src/components/Process/submitVerify.vue
@@ -24,9 +24,10 @@
     <template #footer>
       <span class="dialog-footer">
         <el-button v-loading="buttonLoading" type="primary" @click="handleCompleteTask"> 鎻愪氦 </el-button>
-        <el-button v-if="task.businessStatus === 'waiting' && task.multiInstance" v-loading="buttonLoading" type="primary" @click="openTransferTask"> 杞姙 </el-button>
+        <el-button v-if="task.businessStatus === 'waiting'" v-loading="buttonLoading" type="primary" @click="openTransferTask"> 杞姙 </el-button>
         <el-button v-if="task.businessStatus === 'waiting' && task.multiInstance" v-loading="buttonLoading" type="primary" @click="addMultiInstanceUser"> 鍔犵 </el-button>
         <el-button v-if="task.businessStatus === 'waiting' && task.multiInstance" v-loading="buttonLoading" type="primary" @click="deleteMultiInstanceUser"> 鍑忕 </el-button>
+        <el-button v-if="task.businessStatus === 'waiting'" v-loading="buttonLoading" type="danger" @click="handleTerminationTask"> 缁堟 </el-button>
         <el-button v-if="task.businessStatus === 'waiting'" v-loading="buttonLoading" type="danger" @click="handleBackProcess"> 閫�鍥� </el-button>
         <el-button v-loading="buttonLoading" @click="cancel">鍙栨秷</el-button>
       </span>
@@ -44,7 +45,7 @@
 import { ref } from 'vue';
 import { ComponentInternalInstance } from 'vue';
 import { ElForm } from 'element-plus';
-import { completeTask, backProcess, getTaskById,transferTask } from '@/api/workflow/task';
+import { completeTask, backProcess, getTaskById,transferTask,terminationTask } from '@/api/workflow/task';
 import UserSelect from '@/components/UserSelect';
 import MultiInstanceUser from '@/components/Process/multiInstanceUser.vue';
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
@@ -240,6 +241,22 @@
   }
 }
 
+//缁堟浠诲姟
+const handleTerminationTask  = async (data) => {
+    let params = {
+      taskId: taskId.value,
+      comment: form.value.message
+    }
+    await proxy?.$modal.confirm('鏄惁纭缁堟锛�');
+    loading.value = true;
+    buttonLoading.value = true;
+    await terminationTask(params).finally(() => (loading.value = false));
+    dialog.visible = false;
+    emits('submitCallback');
+    proxy?.$modal.msgSuccess('鎿嶄綔鎴愬姛');
+  
+}
+
 /**
  * 瀵瑰鏆撮湶瀛愮粍浠舵柟娉�
  */

--
Gitblit v1.9.3