mirror of
https://github.com/m-xlsea/ruoyi-plus-soybean.git
synced 2025-09-24 07:49:47 +08:00
feat(projects): 新增加签功能
This commit is contained in:
@ -155,7 +155,7 @@ function handleExport() {
|
||||
<template>
|
||||
<div class="min-h-500px flex-col-stretch gap-16px overflow-hidden lt-sm:overflow-auto">
|
||||
<WorkflowCategorySearch v-model:model="searchParams" @reset="resetSearchParams" @search="getData" />
|
||||
<NCard title="流程分类列表" :bordered="false" size="small" class="sm:flex-1-hidden card-wrapper">
|
||||
<NCard title="流程分类列表" :bordered="false" size="small" class="card-wrapper sm:flex-1-hidden">
|
||||
<template #header-extra>
|
||||
<TableHeaderOperation
|
||||
v-model:columns="columnChecks"
|
||||
|
@ -226,7 +226,7 @@ function handleExport() {
|
||||
<template>
|
||||
<div class="min-h-500px flex-col-stretch gap-16px overflow-hidden lt-sm:overflow-auto">
|
||||
<LeaveSearch v-model:model="searchParams" @reset="resetSearchParams" @search="getDataByPage" />
|
||||
<NCard title="请假申请列表" :bordered="false" size="small" class="sm:flex-1-hidden card-wrapper">
|
||||
<NCard title="请假申请列表" :bordered="false" size="small" class="card-wrapper sm:flex-1-hidden">
|
||||
<template #header-extra>
|
||||
<TableHeaderOperation
|
||||
v-model:columns="columnChecks"
|
||||
|
@ -410,7 +410,7 @@ const selectable = computed(() => {
|
||||
</template>
|
||||
<div class="h-full flex-col-stretch gap-12px overflow-hidden lt-sm:overflow-auto">
|
||||
<DefinitionSearch v-model:model="searchParams" @reset="resetSearchParams" @search="getDataByPage" />
|
||||
<NCard :bordered="false" size="small" class="sm:flex-1-hidden card-wrapper">
|
||||
<NCard :bordered="false" size="small" class="card-wrapper sm:flex-1-hidden">
|
||||
<template #header>
|
||||
<NSpace>
|
||||
<NRadioGroup v-model:value="isPublish" on-up size="small">
|
||||
|
@ -365,7 +365,7 @@ async function handlePreview(row: Api.Workflow.ProcessInstance) {
|
||||
</template>
|
||||
<div class="h-full flex-col-stretch gap-12px overflow-hidden lt-sm:overflow-auto">
|
||||
<ProcessInstanceSearch v-model:model="searchParams" @reset="handleResetSearch" @search="getDataByPage" />
|
||||
<NCard :bordered="false" size="small" class="sm:flex-1-hidden card-wrapper">
|
||||
<NCard :bordered="false" size="small" class="card-wrapper sm:flex-1-hidden">
|
||||
<template #header>
|
||||
<NSpace>
|
||||
<NRadioGroup v-model:value="runningStatus" on-up size="small">
|
||||
|
@ -30,8 +30,6 @@ const { bool: viewVisible, setTrue: showViewDrawer } = useBoolean();
|
||||
const { bool: interveneVisible, setTrue: showInterveneDrawer } = useBoolean();
|
||||
const dynamicComponent = shallowRef();
|
||||
|
||||
type Task = Api.Workflow.Task;
|
||||
|
||||
const waitingStatus = ref<boolean>(true);
|
||||
const waitingStatusOptions = ref<WaitingStatusOption[]>([
|
||||
{ label: '待办任务', value: true },
|
||||
@ -123,7 +121,7 @@ const operateColumns = ref<NaiveUI.TableColumn<Api.Workflow.TaskOrHisTask>[]>([
|
||||
type="info"
|
||||
icon="material-symbols:edit-document"
|
||||
tooltipContent="流程干预"
|
||||
onClick={() => handleIntervene(row)}
|
||||
onClick={() => handleIntervene(row as Api.Workflow.Task)}
|
||||
/>
|
||||
);
|
||||
}
|
||||
@ -222,9 +220,13 @@ async function handleView(row: Api.Workflow.TaskOrHisTask) {
|
||||
}
|
||||
}
|
||||
|
||||
const interveneRowData = ref<Api.Workflow.TaskOrHisTask>();
|
||||
function handleIntervene(row: Api.Workflow.TaskOrHisTask) {
|
||||
interveneRowData.value = row;
|
||||
const taskId = ref<CommonType.IdType>('');
|
||||
const assigneeIds = ref<CommonType.IdType[]>([]);
|
||||
const assigneeNames = ref<string[]>([]);
|
||||
function handleIntervene(row: Api.Workflow.Task) {
|
||||
taskId.value = row.id;
|
||||
assigneeIds.value = row.assigneeIds?.split(',') || [];
|
||||
assigneeNames.value = row.assigneeNames?.split(',') || [];
|
||||
showInterveneDrawer();
|
||||
}
|
||||
</script>
|
||||
@ -264,7 +266,7 @@ function handleIntervene(row: Api.Workflow.TaskOrHisTask) {
|
||||
</template>
|
||||
<div class="h-full flex-col-stretch gap-12px overflow-hidden lt-sm:overflow-auto">
|
||||
<AllTaskWaitingSearch v-model:model="searchParams" @reset="handleResetSearch" @search="getDataByPage" />
|
||||
<NCard :bordered="false" size="small" class="sm:flex-1-hidden card-wrapper">
|
||||
<NCard :bordered="false" size="small" class="card-wrapper sm:flex-1-hidden">
|
||||
<template #header>
|
||||
<NSpace>
|
||||
<NRadioGroup v-model:value="waitingStatus" on-up size="small">
|
||||
@ -306,7 +308,9 @@ function handleIntervene(row: Api.Workflow.TaskOrHisTask) {
|
||||
<component :is="dynamicComponent" :visible="viewVisible" operate-type="detail" :business-id="businessId" />
|
||||
<FlowInterveneModal
|
||||
v-model:visible="interveneVisible"
|
||||
:row-data="interveneRowData as Task"
|
||||
:task-id="taskId"
|
||||
:assignee-ids="assigneeIds"
|
||||
:assignee-names="assigneeNames"
|
||||
@refresh="getData"
|
||||
/>
|
||||
</NCard>
|
||||
|
Reference in New Issue
Block a user