From 10feac04d0b5e132fe66f29b095c4af8e5d48be5 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 07 二月 2025 17:32:11 +0800
Subject: [PATCH] 流程设计:跳过、容缺的允许开关、办理时跳过容缺按钮的显隐控制
---
src/views/projectProcess/index.vue | 155 +++++++++++++++++++++++++++++++++++----------------
1 files changed, 107 insertions(+), 48 deletions(-)
diff --git a/src/views/projectProcess/index.vue b/src/views/projectProcess/index.vue
index a8d58d1..b16baeb 100644
--- a/src/views/projectProcess/index.vue
+++ b/src/views/projectProcess/index.vue
@@ -88,7 +88,7 @@
<el-row>
<el-col :span="12">
<el-form-item label="椤圭洰鐮�">
- <el-select v-model="queryParams.projectColorCode" clearable placeholder="璇烽�夋嫨" class="select-option" @change="handleQuery">
+ <el-select v-model="queryParams.coding" clearable placeholder="璇烽�夋嫨" class="select-option" @change="handleQuery">
<el-option v-for="item in dict.type.sys_project_code" :key="item.value" :label="item.label"
:value="item.value"/>
</el-select>
@@ -185,7 +185,7 @@
v-loading="loading"
:data="projectInfoList"
@selection-change="handleSelectionChange"
- height="60vh"
+ height="100%"
sortable="custom"
:show-overflow-tooltip="true">
<el-table-column type="selection" width="55" align="center"/>
@@ -197,29 +197,26 @@
:prop="item.id"
:label="item.label"
:min-width="item.minWidth"
+ :show-overflow-tooltip="item.showOverflowTooltip"
>
<template slot-scope="scope">
<!-- 浣跨敤鍏峰悕鎻掓Ы -->
<template v-if="item.slotName">
<!-- projectStatus鎻掓Ы -->
<template v-if="item.slotName === 'projectStatus'">
- <div class="mx-1">{{ '鑷畾涔夋牱寮�' }}</div>
+ <dict-tag :options="dict.type.sys_project_status" :value="scope.row.projectStatus"/>
</template>
- <!-- projectColorCode鎻掓Ы -->
- <template v-if="item.slotName === 'projectColorCode'">
- <div class="mx-1 has-dot">{{ '鑷畾涔夋牱寮�' }}<span class="dot" style="margin-left: 5px"></span></div>
+ <!-- coding鎻掓Ы -->
+ <template v-if="item.slotName === 'coding' || item.slotName === 'coding'">
+ <dict-tag :options="dict.type.sys_project_code" :value="scope.row.coding"/>
</template>
<!-- projectType鎻掓Ы -->
<template v-if="item.slotName === 'projectType'">
- <div class="mx-1">{{ '鑷畾涔夋牱寮�' }}</div>
+ <dict-tag :options="dict.type.sys_project_type" :value="scope.row.projectType"/>
</template>
<!-- investType鎻掓Ы -->
<template v-if="item.slotName === 'investType'">
- <div class="mx-1">{{ '鑷畾涔夋牱寮�' }}</div>
- </template>
- <!-- planStartTime鎻掓Ы -->
- <template v-if="item.slotName === 'planStartTime'">
- {{ '鑷畾涔夋牱寮�' }}
+ <dict-tag :options="dict.type.sys_investment_type" :value="scope.row.investType"/>
</template>
</template>
<!-- 榛樿鏄剧ず -->
@@ -230,29 +227,32 @@
<!-- 鎿嶄綔鍒� -->
<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"
+ v-if="scope.row.processInsId"
+ @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>
@@ -260,7 +260,7 @@
<pagination
v-show="total>0"
:total="total"
- :page.sync="queryParams.pageNum"
+ :page.sync="queryParams.currentPage"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
@@ -271,13 +271,25 @@
@fileDialogCancel="fileDialogCancel"
:currentColumns="columns"
/>
+
+ <RunProcess ref="runProcess" :show="showRunProcess"
+ :now-process-def-id="nowProcessDefId"
+ :now-process-ins-id="nowProcessInsId"
+ :project-info="projectRunFrom"
+ :process-list="processList"
+ @close="closeRunProcess">
+ </RunProcess>
</div>
</template>
<script>
-import {listInfo, getInfo, delInfo, addInfo, updateInfo} from "@/api/projectInfo";
-import {current, currentRest} from '@/views/projectEngineering/projectLibrary/list';
-import FileDialog from '@/views/projectEngineering/component/FileDialog';
+import { listDefinition } from "@/api/flowable/definition";
+import {listInfo, getInfo, delInfo, addInfo, updateInfo} from "@/api/projectEngineering/projectInfo";
+import { getProjectProcess } from "@/api/projectProcess/projectProcess"
+import {projectProcessCurrent, projectProcessCurrentRest} from '@/views/projectEngineering/projectLibrary/list';
+import FileDialog from '@/views/projectEngineering/projectLibrary/component/FileDialog';
+import RunProcess from "@/views/projectProcess/components/RunProcess";
+import {getProcessConfigInfoList} from "@/api/projectProcess/processConfigInfo";
export default {
dicts: ['sys_administrative_divisions', 'sys_investment_type', 'sys_project_phases',
@@ -285,10 +297,18 @@
'sys_project_tags', 'sys_key_categories', 'sys_project_type'],
name: "projectInfo",
components: {
- FileDialog
+ FileDialog, RunProcess
},
data() {
return {
+ projectRunFrom: {
+ projectId: null,
+ projectName: ''
+ },
+ processList: [],
+ showRunProcess: false,
+ nowProcessDefId: '',
+ nowProcessInsId: '',
isImportOrExport: false,
fileDialogVisible: false,
//鏄惁闇�瑕佹柊澧炴寜閽�(鍌ㄨ搫椤圭洰闇�瑕�)
@@ -322,7 +342,7 @@
timeRange: [],
// 鏌ヨ鍙傛暟
queryParams: {
- pageNum: 1,
+ currentPage: 1,
pageSize: 10,
projectName: null,
projectCode: null,
@@ -331,7 +351,7 @@
projectType: '', // 椤圭洰绫诲瀷
importanceType: '', // 閲嶇偣鍒嗙被
projectStatus: '', // 椤圭洰鐘舵��
- projectColorCode: '', // 椤圭洰鐮�
+ coding: '', // 椤圭洰鐮�
investmentType: '', // 璧勯噾绫诲瀷
projectPhase: '', // 椤圭洰闃舵
investType: '', // 鎶曡祫绫诲埆
@@ -360,7 +380,7 @@
if(projectCategory){
this.isProjectCategory = true;
}
- const columns = current.map((item, index) => {
+ const columns = projectProcessCurrent.map((item, index) => {
item.index = index + 1;
item.key = index;
item.serialNumber = index + 1;
@@ -371,15 +391,54 @@
this.getList();
},
methods: {
+ // 鏌ョ湅璇︽儏
+ lookProcessDetail(row) {
+ sessionStorage.removeItem("projectProDetail")
+ this.$router.push({
+ path: '/projectFlow/detail',
+ query: {
+ projectId: row.id,
+ processDefId: row.processDefId,
+ processInsId: row.processInsId,
+ deployId: row.deployId,
+ processName: row.flowableProcessName
+ }
+ })
+ },
+ closeRunProcess() {
+ this.projectRunFrom = {
+ projectId: null,
+ projectName: ''
+ }
+ this.nowProcessDefId = "";
+ this.nowProcessInsId = "";
+ this.showRunProcess = false
+ this.getList()
+ },
+ // 鎵撳紑娴佺▼椤甸潰
+ openOpProcess(row) {
+ // 鎷垮埌娴佺▼鍒楄〃 TODO 鏍规嵁椤圭洰绫诲瀷鍋氱瓫閫�
+ getProcessConfigInfoList().then(response => {
+ this.processList = response.data;
+ this.nowProcessDefId = row.processDefId ? row.processDefId : '';
+ this.nowProcessInsId = row.processInsId ? row.processInsId : '';
+ // // 闃叉锛歩d娌″彉涓嶈Е鍙戠洃鍚�
+ // this.$refs.runProcess.setSelect(row.flowableProcessId);
+ this.projectRunFrom.projectId = row.id;
+ this.projectRunFrom.projectName = row.projectName;
+
+ this.showRunProcess = true;
+ });
+ },
// 閲嶇疆鎺掑簭鐨勬柟娉�
handleResetSort() {
- this.defaultColumns = currentRest.map((item, index) => {
+ this.defaultColumns = projectProcessCurrentRest.map((item, index) => {
item.index = index + 1;
item.key = index;
item.serialNumber = index + 1
return item;
});
- this.columns = currentRest.map((item, index) => {
+ this.columns = projectProcessCurrentRest.map((item, index) => {
item.index = index + 1;
item.key = index;
item.serialNumber = index + 1
@@ -426,11 +485,11 @@
/** 鏌ヨ椤圭洰绠$悊鍩虹淇℃伅鍒楄〃 */
getList() {
this.loading = true;
- listInfo(this.queryParams).then(response => {
+ getProjectProcess(this.queryParams).then(response => {
this.projectInfoList = response.data;
this.total = response.total;
+ this.loading = false;
});
- this.loading = false;
},
// 鍙栨秷鎸夐挳
cancel() {
@@ -480,7 +539,7 @@
},
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
- this.queryParams.pageNum = 1;
+ this.queryParams.currentPage = 1;
this.getList();
},
/** 閲嶇疆鎸夐挳鎿嶄綔 */
--
Gitblit v1.8.0