feat:流程-流程实例的版本问题

1.流程变更后,新旧流程按版本执行,按各种版本的流程定义和流程配置继续流转
2.可以切换流程实例的版本
This commit is contained in:
lvjunzhao
2025-02-25 18:42:40 +08:00
parent 2850e8abf5
commit 2d240ccf0c
6 changed files with 399 additions and 23 deletions

View File

@ -49,6 +49,9 @@
<a-button v-auth="'design:classifyMgt'" @click="handleCategory">{{
t('分类管理')
}}</a-button>
<a-button @click="handleUpdateVersion">{{
t('流程版本变更')
}}</a-button>
</template>
<template #action="{ record }">
@ -79,7 +82,7 @@
@register="registerCategoryModal"
@success="getCategoryTree"
/>
<Preview v-if="data.previewVisible" :xml="data.xml" @close="data.previewVisible = false" />
<Preview v-if="data.previewVisible" :xml="data.xml" @close="() => {data.previewVisible = false}" />
<WorkflowDesignModal
v-if="data.visibleBpmnDesign"
:editData="data.editData"
@ -91,6 +94,7 @@
import { onMounted, reactive, computed, defineAsyncComponent, h, ref } from 'vue';
import { CategoryModal } from '/@/components/CategoryModal';
import { UpdateProcessVersionModal } from '/@/components/UpdateProcessVersion';
import { BasicTree, TreeItem } from '/@/components/Tree';
import { PageWrapper } from '/@/components/Page';
import { LoadingBox } from '/@/components/ModalPanel/index';
@ -114,7 +118,11 @@
import History from './History.vue';
import ImportFlow from './ImportFlow.vue';
import { Tag } from 'ant-design-vue';
import { Row, Tag } from 'ant-design-vue';
import { useRouter } from 'vue-router';
const { currentRoute } = useRouter();
const router = useRouter();
const { t } = useI18n();
const Preview = defineAsyncComponent(() => import('./Preview.vue'));
const WorkflowDesignModal = defineAsyncComponent({
@ -305,6 +313,26 @@
} catch (error) {}
}
}
const versionData = {
definitionKey: '',
schemaId: '',
}
/**
* 更新选中的流程图对应的执行流程的版本
*/
async function handleUpdateVersion() {
let row = checkSelectSingleRow();
if (row) {
router.push({
path: '/task/monitor',
query: {
definitionKey: row.definitionKey,
}
});
}
}
async function forbidden() {
let row = checkSelectSingleRow();