From 100186edb96c3fa913779b64471dae6ea1b7aca7 Mon Sep 17 00:00:00 2001
From: luohairen <3399054449@qq.com>
Date: 星期二, 26 十一月 2024 20:33:42 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/projectProcess/components/RunProcess.vue |  119 +++++++++++++++++++++++++++++
 src/api/projectProcess/projectProcess.js           |   10 ++
 src/views/projectProcess/index.vue                 |   76 ++++++++++++------
 3 files changed, 180 insertions(+), 25 deletions(-)

diff --git a/src/api/projectProcess/projectProcess.js b/src/api/projectProcess/projectProcess.js
new file mode 100644
index 0000000..e8c7416
--- /dev/null
+++ b/src/api/projectProcess/projectProcess.js
@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+// 鑾峰彇椤圭洰娴佺▼鍏崇郴琛ㄥ垎椤�
+export const getProjectProcesss = (data) => {
+    return request({
+        url: "/project-process/page",
+        method: "POST",
+        data: data
+    })
+}
diff --git a/src/views/projectProcess/components/RunProcess.vue b/src/views/projectProcess/components/RunProcess.vue
new file mode 100644
index 0000000..6bfaa28
--- /dev/null
+++ b/src/views/projectProcess/components/RunProcess.vue
@@ -0,0 +1,119 @@
+<template>
+  <div>
+    <el-dialog
+      title="娴佺▼鍚姩"
+      :visible.sync="show"
+      width="750px"
+      :before-close="handleClose">
+      <div>
+        <div style="display: flex; flex-direction: row; justify-content: center; align-items: center;font-size: 24px">
+          <div>褰撳墠娴佺▼锛�</div>
+          <div v-if="nowProcessId">{{nowProcessName}}</div>
+          <div v-else>鏈粦瀹氭祦绋�</div>
+        </div>
+      </div>
+      <div style="margin-top: 20px">
+        <el-table
+          ref="myTable"
+          :data="processList"
+          tooltip-effect="dark"
+          style="width: 100%"
+          @selection-change="handleSelectionChange">
+          <el-table-column
+            type="selection"
+            width="55">
+          </el-table-column>
+          <el-table-column
+            prop="name"
+            label="娴佺▼鍚嶇О"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="category"
+            label="娴佺▼绫诲瀷"
+          >
+          </el-table-column>
+        </el-table>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="startProcess">鍚姩</el-button>
+        <el-button type="primary" @click="changeProcess">鍙樻洿</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "RunProcess",
+  props: {
+    show: {
+      require: true,
+      type: Boolean
+    },
+    projectId: {
+      require: true,  // 椤圭洰id
+      type: Number
+    },
+    processList: {  // 娴佺▼鍒楄〃
+      require: true,
+      type: Array
+    },
+    nowProcessId: {  // 褰撳墠椤圭洰缁戝畾鐨勬祦绋媔d
+      require: true,
+      type: String
+    },
+    nowProcessName: {
+      require: true,
+      type: String
+    }
+  },
+  watch: {
+    // 鐩戝惉鍥炴樉鍊�
+    nowProcessId(newVal, oldVal) {
+      this.processList.forEach((item,index) => {
+        if(item.id == newVal){
+          this.$nextTick(() => {
+            this.$refs.myTable.toggleRowSelection(item);
+          })
+        }
+      })
+    }
+  },
+  data() {
+    return {
+      selectProcessId: '',  // 缁勪欢鍐呴儴閫変腑鐨勬祦绋媔d
+    }
+  },
+  methods: {
+    // 瀹炵幇el-table鍗曢��
+    handleSelectionChange(val) {
+      console.log(val, "閫変腑")
+      if (val.length > 1) {
+        this.$refs.myTable.clearSelection();
+        this.$refs.myTable.toggleRowSelection(val.pop());
+      }
+      if(val.length != 0){
+        this.selectProcessId = val[val.length - 1].id;
+      }
+    },
+    // 鍚姩娴佺▼
+    startProcess() {
+
+    },
+    // 鍙樻洿娴佺▼
+    changeProcess() {
+
+    },
+    handleClose() {
+      this.$emit("close")
+    }
+  }
+}
+</script>
+
+<style scoped>
+/deep/ .el-table__header-wrapper .el-checkbox{
+  display:none
+}
+</style>
diff --git a/src/views/projectProcess/index.vue b/src/views/projectProcess/index.vue
index f84fe32..cdb3acc 100644
--- a/src/views/projectProcess/index.vue
+++ b/src/views/projectProcess/index.vue
@@ -226,29 +226,31 @@
       <!-- 鎿嶄綔鍒� -->
       <el-table-column label="鎿嶄綔" width="140" align="center" >
         <template slot-scope="scope">
-          <el-button
-            size="medium"
-            type="text"
-            icon="el-icon-view"
-            @click="handleDetail(scope.row)"
-          >
-          </el-button>
-          <el-button
-            v-if="isReserve"
-            size="medium"
-            type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-          >
-          </el-button>
-          <el-button
-            v-if="isReserve"
-            size="medium"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row)"
-          >
-          </el-button>
+          <!--          <el-button-->
+          <!--            size="medium"-->
+          <!--            type="text"-->
+          <!--            icon="el-icon-view"-->
+          <!--            @click="lookProcessDetail(scope.row)"-->
+          <!--          >-->
+          <!--          </el-button>-->
+          <!--          <el-button-->
+          <!--            v-if="isReserve"-->
+          <!--            size="medium"-->
+          <!--            type="text"-->
+          <!--            icon="el-icon-edit"-->
+          <!--            @click="handleUpdate(scope.row)"-->
+          <!--          >-->
+          <!--          </el-button>-->
+          <el-tooltip content="娴佺▼" placement="top" effect="light" :enterable="false">
+            <el-button
+              v-if="isReserve"
+              size="medium"
+              type="text"
+              icon="el-icon-s-operation"
+              @click="openOpProcess(scope.row)"
+            >
+            </el-button>
+          </el-tooltip>
         </template>
       </el-table-column>
     </el-table>
@@ -267,13 +269,18 @@
       @fileDialogCancel="fileDialogCancel"
       :currentColumns="columns"
     />
+
+    <RunProcess :show="showRunProcess" :now-process-id="nowProcessId" :now-process-name="nowProcessName" :process-list="processList" @close="closeRunProcess"></RunProcess>
   </div>
 </template>
 
 <script>
+import { listDefinition } from "@/api/flowable/definition";
 import {listInfo, getInfo, delInfo, addInfo, updateInfo} from "@/api/projectInfo";
+import { getProjectProcesss } from "@/api/projectProcess/projectProcess"
 import {current, currentRest} from '@/views/projectEngineering/projectLibrary/list';
 import FileDialog from '@/views/projectEngineering/projectLibrary/component/FileDialog';
+import RunProcess from "@/views/projectProcess/components/RunProcess";
 
 export default {
   dicts: ['sys_administrative_divisions', 'sys_investment_type', 'sys_project_phases',
@@ -281,10 +288,15 @@
     'sys_project_tags', 'sys_key_categories', 'sys_project_type'],
   name: "projectInfo",
   components: {
-    FileDialog
+    FileDialog, RunProcess
   },
   data() {
     return {
+      processList: [],
+      showRunProcess: false,
+      projectId: null,
+      nowProcessId: '',
+      nowProcessName: '',
       isImportOrExport: false,
       fileDialogVisible: false,
       //鏄惁闇�瑕佹柊澧炴寜閽�(鍌ㄨ搫椤圭洰闇�瑕�)
@@ -367,6 +379,20 @@
     this.getList();
   },
   methods: {
+    closeRunProcess() {
+      this.showRunProcess = false
+    },
+    // 鎵撳紑娴佺▼椤甸潰
+    openOpProcess(row) {
+      this.projectId = row.id;
+      this.nowProcessId = row.flowableProcessId;
+      this.nowProcessName = row.flowableProcessName;
+      // 鎷垮埌娴佺▼鍒楄〃
+      listDefinition(this.queryParams).then(response => {
+        this.processList = response.data.records;
+        this.showRunProcess = true;
+      });
+    },
     // 閲嶇疆鎺掑簭鐨勬柟娉�
     handleResetSort() {
       this.defaultColumns = currentRest.map((item, index) => {
@@ -422,7 +448,7 @@
     /** 鏌ヨ椤圭洰绠$悊鍩虹淇℃伅鍒楄〃 */
     getList() {
       this.loading = true;
-      listInfo(this.queryParams).then(response => {
+      getProjectProcesss(this.queryParams).then(response => {
         this.projectInfoList = response.data;
         this.total = response.total;
       });

--
Gitblit v1.8.0