From cdbbca43c4466d36e9cef08b81cb0fe689c6da25 Mon Sep 17 00:00:00 2001
From: dap <15891557205@163.com>
Date: 星期四, 14 十一月 2024 16:23:16 +0800
Subject: [PATCH] chore: 锁定vue-json-pretty版本

---
 src/views/workflow/processInstance/index.vue |   90 +++++++++++++++++++++++----------------------
 1 files changed, 46 insertions(+), 44 deletions(-)

diff --git a/src/views/workflow/processInstance/index.vue b/src/views/workflow/processInstance/index.vue
index 19e57f7..7c60880 100644
--- a/src/views/workflow/processInstance/index.vue
+++ b/src/views/workflow/processInstance/index.vue
@@ -23,8 +23,8 @@
         <div class="mb-[10px]">
           <el-card shadow="hover" class="text-center">
             <el-radio-group v-model="tab" @change="changeTab(tab)">
-              <el-radio-button label="running">杩愯涓�</el-radio-button>
-              <el-radio-button label="finish">宸插畬鎴�</el-radio-button>
+              <el-radio-button value="running">杩愯涓�</el-radio-button>
+              <el-radio-button value="finish">宸插畬鎴�</el-radio-button>
             </el-radio-group>
           </el-card>
         </div>
@@ -59,7 +59,11 @@
           <el-table v-loading="loading" border :data="processInstanceList" @selection-change="handleSelectionChange">
             <el-table-column type="selection" width="55" align="center" />
             <el-table-column align="center" type="index" label="搴忓彿" width="60"></el-table-column>
-            <el-table-column align="center" prop="processDefinitionName" label="娴佺▼瀹氫箟鍚嶇О"></el-table-column>
+            <el-table-column :show-overflow-tooltip="true" align="center" label="娴佺▼瀹氫箟鍚嶇О">
+              <template #default="scope">
+                <span>{{ scope.row.processDefinitionName }}v{{ scope.row.processDefinitionVersion }}.0</span>
+              </template>
+            </el-table-column>
             <el-table-column align="center" prop="processDefinitionKey" label="娴佺▼瀹氫箟KEY"></el-table-column>
             <el-table-column align="center" prop="processDefinitionVersion" label="鐗堟湰鍙�" width="90">
               <template #default="scope"> v{{ scope.row.processDefinitionVersion }}.0</template>
@@ -70,34 +74,16 @@
                 <el-tag v-else type="danger">鎸傝捣</el-tag>
               </template>
             </el-table-column>
-            <el-table-column align="center" prop="businessStatusName" label="娴佺▼鐘舵��" min-width="70">
+            <el-table-column align="center" label="娴佺▼鐘舵��" min-width="70">
               <template #default="scope">
-                <el-tag type="success">{{ scope.row.businessStatusName }}</el-tag>
+                <dict-tag :options="wf_business_status" :value="scope.row.businessStatus"></dict-tag>
               </template>
             </el-table-column>
             <el-table-column align="center" prop="startTime" label="鍚姩鏃堕棿" width="160"></el-table-column>
             <el-table-column v-if="tab === 'finish'" align="center" prop="endTime" label="缁撴潫鏃堕棿" width="160"></el-table-column>
-            <el-table-column label="鎿嶄綔" align="center" width="160" class-name="small-padding fixed-width">
+            <el-table-column label="鎿嶄綔" align="center" :width="130">
               <template #default="scope">
-                <el-row :gutter="10" class="mb8">
-                  <el-col :span="1.5">
-                    <el-button link type="primary" size="small" icon="Document" @click="handleApprovalRecord(scope.row)">瀹℃壒璁板綍</el-button>
-                  </el-col>
-                  <el-col :span="1.5">
-                    <el-button link type="primary" size="small" icon="Delete" @click="handleDelete(scope.row)">鍒犻櫎</el-button>
-                  </el-col>
-                </el-row>
                 <el-row v-if="tab === 'running'" :gutter="10" class="mb8">
-                  <el-col :span="1.5">
-                    <el-button
-                      link
-                      type="primary"
-                      size="small"
-                      icon="Sort"
-                      @click="getProcessDefinitionHitoryList(scope.row.processDefinitionId, scope.row.processDefinitionKey)"
-                      >鍒囨崲鐗堟湰</el-button
-                    >
-                  </el-col>
                   <el-col :span="1.5">
                     <el-popover :ref="`popoverRef${scope.$index}`" trigger="click" placement="left" :width="300">
                       <el-input v-model="deleteReason" resize="none" :rows="3" type="textarea" placeholder="璇疯緭鍏ヤ綔搴熷師鍥�" />
@@ -109,6 +95,14 @@
                         <el-button link type="primary" size="small" icon="CircleClose">浣滃簾</el-button>
                       </template>
                     </el-popover>
+                  </el-col>
+                  <el-col :span="1.5">
+                    <el-button link type="primary" size="small" icon="Delete" @click="handleDelete(scope.row)">鍒犻櫎</el-button>
+                  </el-col>
+                </el-row>
+                <el-row :gutter="10" class="mb8">
+                  <el-col :span="1.5">
+                    <el-button link type="primary" size="small" icon="View" @click="handleView(scope.row)">鏌ョ湅</el-button>
                   </el-col>
                 </el-row>
               </template>
@@ -146,8 +140,6 @@
         </el-table-column>
       </el-table>
     </el-dialog>
-    <!-- 瀹℃壒璁板綍 -->
-    <approvalRecord ref="approvalRecordRef" />
   </div>
 </template>
 
@@ -160,13 +152,14 @@
   deleteRunInstance
 } from '@/api/workflow/processInstance';
 import { getListByKey, migrationDefinition } from '@/api/workflow/processDefinition';
-import ApprovalRecord from '@/components/Process/approvalRecord.vue';
 import { listCategory } from '@/api/workflow/category';
 import { CategoryVO } from '@/api/workflow/category/types';
 import { ProcessInstanceQuery, ProcessInstanceVO } from '@/api/workflow/processInstance/types';
+import workflowCommon from '@/api/workflow/workflowCommon';
+import { RouterJumpVo } from '@/api/workflow/workflowCommon/types';
 //瀹℃壒璁板綍缁勪欢
-const approvalRecordRef = ref<InstanceType<typeof ApprovalRecord>>();
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
+const { wf_business_status } = toRefs<any>(proxy?.useDict('wf_business_status'));
 const queryFormRef = ref<ElFormInstance>();
 const categoryTreeRef = ref<ElTreeInstance>();
 
@@ -174,6 +167,8 @@
 const loading = ref(true);
 // 閫変腑鏁扮粍
 const ids = ref<Array<any>>([]);
+// 閫変腑涓氬姟id鏁扮粍
+const businessKeys = ref<Array<any>>([]);
 // 闈炲崟涓鐢�
 const single = ref(true);
 // 闈炲涓鐢�
@@ -213,11 +208,6 @@
   categoryCode: undefined
 });
 
-onMounted(() => {
-  getProcessInstanceRunningList();
-  getTreeselect();
-});
-
 /** 鑺傜偣鍗曞嚮浜嬩欢 */
 const handleNodeClick = (data: CategoryVO) => {
   queryParams.value.categoryCode = data.categoryCode;
@@ -250,12 +240,6 @@
   categoryOptions.value.push(data);
 };
 
-//瀹℃壒璁板綍
-const handleApprovalRecord = (row: any) => {
-  if (approvalRecordRef.value) {
-    approvalRecordRef.value.init(row.id);
-  }
-};
 /** 鎼滅储鎸夐挳鎿嶄綔 */
 const handleQuery = () => {
   if ('running' === tab.value) {
@@ -275,6 +259,7 @@
 // 澶氶�夋閫変腑鏁版嵁
 const handleSelectionChange = (selection: ProcessInstanceVO[]) => {
   ids.value = selection.map((item: any) => item.id);
+  businessKeys.value = selection.map((item: any) => item.businessKey);
   single.value = selection.length !== 1;
   multiple.value = !selection.length;
 };
@@ -299,19 +284,20 @@
 
 /** 鍒犻櫎鎸夐挳鎿嶄綔 */
 const handleDelete = async (row: any) => {
-  const id = row.id || ids.value;
-  await proxy?.$modal.confirm('鏄惁纭鍒犻櫎id涓恒��' + id + '銆戠殑鏁版嵁椤癸紵');
+  const businessKey = row.businessKey || businessKeys.value;
+  await proxy?.$modal.confirm('鏄惁纭鍒犻櫎涓氬姟id涓恒��' + businessKey + '銆戠殑鏁版嵁椤癸紵');
   loading.value = true;
   if ('running' === tab.value) {
-    await deleteRunAndHisInstance(id).finally(() => (loading.value = false));
+    await deleteRunAndHisInstance(businessKey).finally(() => (loading.value = false));
     getProcessInstanceRunningList();
   } else {
-    await deleteFinishAndHisInstance(id).finally(() => (loading.value = false));
+    await deleteFinishAndHisInstance(businessKey).finally(() => (loading.value = false));
     getProcessInstanceFinishList();
   }
   proxy?.$modal.msgSuccess('鍒犻櫎鎴愬姛');
 };
 const changeTab = async (data: string) => {
+  processInstanceList.value = [];
   queryParams.value.pageNum = 1;
   if ('running' === data) {
     getProcessInstanceRunningList();
@@ -325,7 +311,7 @@
   loading.value = true;
   if ('running' === tab.value) {
     let param = {
-      processInstanceId: row.id,
+      businessKey: row.businessKey,
       deleteReason: deleteReason.value
     };
     await deleteRunInstance(param).finally(() => (loading.value = false));
@@ -359,4 +345,20 @@
     loading.value = false;
   });
 };
+/** 鏌ョ湅鎸夐挳鎿嶄綔 */
+const handleView = (row) => {
+  const routerJumpVo = reactive<RouterJumpVo>({
+    wfDefinitionConfigVo: row.wfDefinitionConfigVo,
+    wfNodeConfigVo: row.wfNodeConfigVo,
+    businessKey: row.businessKey,
+    taskId: row.id,
+    type: 'view'
+  });
+  workflowCommon.routerJump(routerJumpVo, proxy);
+};
+
+onMounted(() => {
+  getProcessInstanceRunningList();
+  getTreeselect();
+});
 </script>

--
Gitblit v1.9.3