|
|
@@ -60,7 +60,9 @@
|
|
|
<el-table-column label="状态" props="statusName" width="100" />
|
|
|
<el-table-column fixed="right" min-width="240" label="操作">
|
|
|
<template #default="scope">
|
|
|
- <el-button v-if="scope.row.status === 1" type="primary" link>提交</el-button>
|
|
|
+ <el-button v-if="scope.row.status === 1" type="primary" link @click="handleSendApproval(scope)"
|
|
|
+ >提交</el-button
|
|
|
+ >
|
|
|
<el-button
|
|
|
type="primary"
|
|
|
link
|
|
|
@@ -155,7 +157,7 @@
|
|
|
</template>
|
|
|
<template #footer>
|
|
|
<el-button type="primary" @click="handleSubmitApproval">提交</el-button>
|
|
|
- <el-button @click="basicDialogRef?.closeDialog()">取消</el-button>
|
|
|
+ <el-button @click="approvalVisible = false">取消</el-button>
|
|
|
</template>
|
|
|
</BasicDialog>
|
|
|
</template>
|
|
|
@@ -166,6 +168,7 @@
|
|
|
import {
|
|
|
constructionSafetyQueryPageConstruction,
|
|
|
constructionSafetyDeleteConstructionById,
|
|
|
+ constructionSafetyUpdateApply,
|
|
|
} from '@/api/production-safety/responsibility-implementation';
|
|
|
import BasicDialog from '@/components/BasicDialog.vue';
|
|
|
import { getApprovalNodeInstanceList } from '@/api/approval/approval';
|
|
|
@@ -270,6 +273,7 @@
|
|
|
});
|
|
|
|
|
|
const approvalNodeList = ref<ApprovalNodeInstanceType[]>([]);
|
|
|
+ const receiptRecordId = ref<number>();
|
|
|
|
|
|
const { userOptions, loading, remoteMethod } = useEmergencySuppliesHook();
|
|
|
|
|
|
@@ -277,7 +281,11 @@
|
|
|
const res = await getApprovalNodeInstanceList(id);
|
|
|
approvalNodeList.value = res.approvalNodeInfoList || [];
|
|
|
};
|
|
|
-
|
|
|
+ const handleSendApproval = async (scope) => {
|
|
|
+ await getApprovalNode(scope.row.templateId);
|
|
|
+ approvalVisible.value = true;
|
|
|
+ receiptRecordId.value = scope.row.id;
|
|
|
+ };
|
|
|
const resetApprovalForm = () => {
|
|
|
approvalFormRef.value?.resetFields();
|
|
|
approvalForm.description = '';
|
|
|
@@ -291,13 +299,13 @@
|
|
|
const handleSubmitApproval = () => {
|
|
|
approvalFormRef.value?.validate(async (valid: boolean) => {
|
|
|
if (!valid) return;
|
|
|
- if (!receiptRecordId.value) {
|
|
|
- ElMessage.error('缺少物品领取记录ID,无法提交审批');
|
|
|
+ if (!receiptRecordId?.value) {
|
|
|
+ ElMessage.error('缺少施工作业记录ID,无法提交审批');
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
const approvalData: any = {
|
|
|
- planId: receiptRecordId.value,
|
|
|
+ id: receiptRecordId.value,
|
|
|
approvalDescription: approvalForm.description,
|
|
|
approvalInfoList: approvalNodeList.value.map((node) => {
|
|
|
let approverIdList: number[] = [];
|
|
|
@@ -314,12 +322,11 @@
|
|
|
};
|
|
|
|
|
|
try {
|
|
|
- await submitReceiptRecordApprovalProcess(approvalData);
|
|
|
+ await constructionSafetyUpdateApply(approvalData);
|
|
|
ElMessage.success('提交成功');
|
|
|
- closeApprovalDialog();
|
|
|
- router.back();
|
|
|
+ approvalVisible.value = false;
|
|
|
+ queryTableList();
|
|
|
} catch (e) {
|
|
|
- console.error('提交审批失败:', e);
|
|
|
ElMessage.error('提交审批失败,请重试');
|
|
|
}
|
|
|
});
|
|
|
@@ -349,19 +356,6 @@
|
|
|
margin-left: 0;
|
|
|
}
|
|
|
|
|
|
- :deep(.el-form) {
|
|
|
- flex: 1;
|
|
|
- display: flex;
|
|
|
- row-gap: 15px;
|
|
|
- flex-wrap: wrap;
|
|
|
- }
|
|
|
- :deep(.el-form-item) {
|
|
|
- margin-bottom: 0;
|
|
|
- }
|
|
|
- :deep(main) {
|
|
|
- display: flex;
|
|
|
- flex-direction: column;
|
|
|
- }
|
|
|
.search-form {
|
|
|
min-width: 800px;
|
|
|
display: flex;
|
|
|
@@ -369,6 +363,19 @@
|
|
|
justify-content: space-between;
|
|
|
align-items: center;
|
|
|
margin-bottom: 20px;
|
|
|
+ :deep(.el-form) {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ row-gap: 15px;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ }
|
|
|
+ :deep(.el-form-item) {
|
|
|
+ margin-bottom: 0;
|
|
|
+ }
|
|
|
+ :deep(main) {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
.button-content {
|