yxk-20260715
在流程详情弹窗中新增 增补审批意见 tab,仅从 我的待阅、我的已阅、我的已办 三类入口打开时显示。 用户提交后只写入 task_approval_opinion,不写 Flowable 原生历史/评论表,也不写旧流程日志表。 提交成功后刷新 审批历史,新增意见可在审批历史中看到。
This commit is contained in:
@@ -97,6 +97,7 @@
|
|||||||
formData,
|
formData,
|
||||||
formUrl,
|
formUrl,
|
||||||
title: '流程历史',
|
title: '流程历史',
|
||||||
|
showSupplementApprovalOpinion: true,
|
||||||
});
|
});
|
||||||
if (props.isRead === 0 && record?.ccId) {
|
if (props.isRead === 0 && record?.ccId) {
|
||||||
await reload();
|
await reload();
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
formData,
|
formData,
|
||||||
formUrl,
|
formUrl,
|
||||||
title: '流程历史',
|
title: '流程历史',
|
||||||
|
showSupplementApprovalOpinion: true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,11 @@
|
|||||||
<template #tab> <partition-outlined /><span>流程图</span> </template>
|
<template #tab> <partition-outlined /><span>流程图</span> </template>
|
||||||
<task-trace-content :form-data="taskFormData" />
|
<task-trace-content :form-data="taskFormData" />
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
|
|
||||||
|
<a-tab-pane v-if="showSupplementApprovalOpinion" key="4">
|
||||||
|
<template #tab> <form-outlined /><span>增补意见</span> </template>
|
||||||
|
<TaskSupplementApprovalOpinionContent :form-data="taskFormData" @success="handleSupplementSuccess" />
|
||||||
|
</a-tab-pane>
|
||||||
</a-tabs>
|
</a-tabs>
|
||||||
</BasicModal>
|
</BasicModal>
|
||||||
</template>
|
</template>
|
||||||
@@ -47,11 +52,12 @@
|
|||||||
*/
|
*/
|
||||||
import { BasicModal, useModalInner } from '/@/components/Modal';
|
import { BasicModal, useModalInner } from '/@/components/Modal';
|
||||||
import { ref , nextTick , computed, watch } from 'vue';
|
import { ref , nextTick , computed, watch } from 'vue';
|
||||||
import { UserOutlined, PartitionOutlined, FileTextOutlined, HistoryOutlined } from '@ant-design/icons-vue';
|
import { UserOutlined, PartitionOutlined, FileTextOutlined, HistoryOutlined, FormOutlined } from '@ant-design/icons-vue';
|
||||||
import TaskHandleInnerContent from '../content/TaskHandleInnerContent.vue';
|
import TaskHandleInnerContent from '../content/TaskHandleInnerContent.vue';
|
||||||
import TaskTraceContent from '../content/TaskTraceContent.vue';
|
import TaskTraceContent from '../content/TaskTraceContent.vue';
|
||||||
import BpmDynamicForm from '/@/views/super/bpm/process/components/BpmDynamicForm.vue';
|
import BpmDynamicForm from '/@/views/super/bpm/process/components/BpmDynamicForm.vue';
|
||||||
import TaskApprovalHistoryContent from '../content/TaskApprovalHistoryContent.vue';
|
import TaskApprovalHistoryContent from '../content/TaskApprovalHistoryContent.vue';
|
||||||
|
import TaskSupplementApprovalOpinionContent from '../content/TaskSupplementApprovalOpinionContent.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'TaskHandleModal',
|
name: 'TaskHandleModal',
|
||||||
@@ -61,16 +67,20 @@
|
|||||||
FileTextOutlined,
|
FileTextOutlined,
|
||||||
PartitionOutlined,
|
PartitionOutlined,
|
||||||
HistoryOutlined,
|
HistoryOutlined,
|
||||||
|
FormOutlined,
|
||||||
TaskHandleInnerContent,
|
TaskHandleInnerContent,
|
||||||
TaskTraceContent,
|
TaskTraceContent,
|
||||||
BpmDynamicForm,
|
BpmDynamicForm,
|
||||||
TaskApprovalHistoryContent,
|
TaskApprovalHistoryContent,
|
||||||
|
TaskSupplementApprovalOpinionContent,
|
||||||
},
|
},
|
||||||
emits: ['success', 'register'],
|
emits: ['success', 'register'],
|
||||||
setup(_p, { emit }) {
|
setup(_p, { emit }) {
|
||||||
const title = ref('流程办理');
|
const title = ref('流程办理');
|
||||||
const taskFormData = ref<Recordable>({});
|
const taskFormData = ref<Recordable>({});
|
||||||
const taskFormUrl = ref('');
|
const taskFormUrl = ref('');
|
||||||
|
const showSupplementApprovalOpinion = ref(false);
|
||||||
|
const activeKey = ref('1');
|
||||||
//是否需要签收
|
//是否需要签收
|
||||||
const claimStatus = ref(false);
|
const claimStatus = ref(false);
|
||||||
//useModalInner
|
//useModalInner
|
||||||
@@ -79,6 +89,8 @@
|
|||||||
taskFormData.value = data.formData;
|
taskFormData.value = data.formData;
|
||||||
taskFormUrl.value = data.formUrl;
|
taskFormUrl.value = data.formUrl;
|
||||||
title.value = data.title;
|
title.value = data.title;
|
||||||
|
activeKey.value = '1';
|
||||||
|
showSupplementApprovalOpinion.value = !!data.showSupplementApprovalOpinion;
|
||||||
if(data.isSignTask==true){
|
if(data.isSignTask==true){
|
||||||
claimStatus.value = true
|
claimStatus.value = true
|
||||||
}else{
|
}else{
|
||||||
@@ -86,7 +98,6 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const activeKey = ref('1');
|
|
||||||
const isEmbeddedHandleForm = computed(() => taskFormUrl.value?.includes('BgPartymatterBPMForm'));
|
const isEmbeddedHandleForm = computed(() => taskFormUrl.value?.includes('BgPartymatterBPMForm'));
|
||||||
const approvalHistoryRef = ref();
|
const approvalHistoryRef = ref();
|
||||||
|
|
||||||
@@ -106,6 +117,12 @@
|
|||||||
claimStatus.value = false;
|
claimStatus.value = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handleSupplementSuccess() {
|
||||||
|
nextTick(() => {
|
||||||
|
approvalHistoryRef.value?.reload();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
watch(activeKey, (key) => {
|
watch(activeKey, (key) => {
|
||||||
if (key === '2') {
|
if (key === '2') {
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
@@ -122,8 +139,10 @@
|
|||||||
taskFormData,
|
taskFormData,
|
||||||
taskFormUrl,
|
taskFormUrl,
|
||||||
handleSuccess,
|
handleSuccess,
|
||||||
|
handleSupplementSuccess,
|
||||||
claimStatus,
|
claimStatus,
|
||||||
claimSuccess,
|
claimSuccess,
|
||||||
|
showSupplementApprovalOpinion,
|
||||||
modalRef,
|
modalRef,
|
||||||
parentNode,
|
parentNode,
|
||||||
isEmbeddedHandleForm
|
isEmbeddedHandleForm
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ enum Api {
|
|||||||
list = '/taskapprovalopinion/taskApprovalOpinion/list',
|
list = '/taskapprovalopinion/taskApprovalOpinion/list',
|
||||||
save='/taskapprovalopinion/taskApprovalOpinion/add',
|
save='/taskapprovalopinion/taskApprovalOpinion/add',
|
||||||
edit='/taskapprovalopinion/taskApprovalOpinion/edit',
|
edit='/taskapprovalopinion/taskApprovalOpinion/edit',
|
||||||
|
supplement = '/taskapprovalopinion/taskApprovalOpinion/supplement',
|
||||||
deleteOne = '/taskapprovalopinion/taskApprovalOpinion/delete',
|
deleteOne = '/taskapprovalopinion/taskApprovalOpinion/delete',
|
||||||
deleteBatch = '/taskapprovalopinion/taskApprovalOpinion/deleteBatch',
|
deleteBatch = '/taskapprovalopinion/taskApprovalOpinion/deleteBatch',
|
||||||
importExcel = '/taskapprovalopinion/taskApprovalOpinion/importExcel',
|
importExcel = '/taskapprovalopinion/taskApprovalOpinion/importExcel',
|
||||||
@@ -70,3 +71,11 @@ export const saveOrUpdate = (params, isUpdate) => {
|
|||||||
let url = isUpdate ? Api.edit : Api.save;
|
let url = isUpdate ? Api.edit : Api.save;
|
||||||
return defHttp.post({ url: url, params }, { isTransformResponse: false });
|
return defHttp.post({ url: url, params }, { isTransformResponse: false });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 提交增补审批意见,只写入 task_approval_opinion。
|
||||||
|
* @param params
|
||||||
|
*/
|
||||||
|
export const saveSupplementOpinion = (params) => {
|
||||||
|
return defHttp.post({ url: Api.supplement, data: params });
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user