From 068a5b49bb4e1e6d2d427624a67db5d0631f5d59 Mon Sep 17 00:00:00 2001 From: "liang.chao" <1360241448@qq.com> Date: Thu, 4 Dec 2025 10:52:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/filesTransfer/rectFeedback.js | 14 ++ .../components/rectFeedbackDetail.vue | 159 +++++++++++++++++- 2 files changed, 164 insertions(+), 9 deletions(-) diff --git a/src/api/filesTransfer/rectFeedback.js b/src/api/filesTransfer/rectFeedback.js index 6f087fab..04512f9c 100644 --- a/src/api/filesTransfer/rectFeedback.js +++ b/src/api/filesTransfer/rectFeedback.js @@ -22,3 +22,17 @@ export function rectifyApi(params) { data: params, }) } +export function rejectApi(params) { + return request({ + url: '/blade-system/rectFeedback/rectifyRefuse', + method: 'POST', + data: params, + }) +} +export function approveApi(params) { + return request({ + url: '/blade-system/rectFeedback/rectifyPass', + method: 'POST', + data: params, + }) +} diff --git a/src/views/fileTransfer/components/rectFeedbackDetail.vue b/src/views/fileTransfer/components/rectFeedbackDetail.vue index 82438827..02f1d0c5 100644 --- a/src/views/fileTransfer/components/rectFeedbackDetail.vue +++ b/src/views/fileTransfer/components/rectFeedbackDetail.vue @@ -8,9 +8,20 @@
- + +
+
+ {{ + rectifyStatus === '1' + ? '已通过' + : rectifyStatus === '3' + ? '已整改' + : '待整改' + }}
-
待整改
@@ -70,7 +81,7 @@ -
+

责任单位整改反馈

@@ -80,10 +91,16 @@
-
+
整改
+ +
+ 驳回 + 同意 +
+ + + + + + + + + + +
@@ -126,13 +170,13 @@ import { ref, onMounted, onBeforeUnmount } from 'vue' import { useRoute, useRouter } from 'vue-router' import { ElMessage, ElMessageBox } from 'element-plus' -import { Close, Timer } from '@element-plus/icons-vue' +import { Close, Timer, Check } from '@element-plus/icons-vue' // 新增:引入 ViewFile 组件 import ViewFile from '@/views/viewFile/viewFile.vue' // API(请根据你实际路径调整) -import { getRectifyDetailApi, rectifyApi } from '@/api/filesTransfer/rectFeedback.js' +import { getRectifyDetailApi, rectifyApi, rejectApi, approveApi } from '@/api/filesTransfer/rectFeedback.js' const route = useRoute() const router = useRouter() @@ -158,6 +202,12 @@ const rectifyForm = ref({ description: '' }) +// 新增:驳回弹框相关变量 +const rejectDialogVisible = ref(false) +const rejectForm = ref({ + description: '' +}) + // 生命周期 onMounted(() => { document.body.style.overflow = 'hidden' @@ -269,6 +319,93 @@ const saveRectify = async () => { ElMessage.error('整改提交失败') } } + +// 显示驳回弹框 +const showRejectDialog = () => { + rejectDialogVisible.value = true + // 清空之前的输入 + rejectForm.value.description = '' +} + +// 关闭驳回弹框 +const closeRejectDialog = () => { + rejectDialogVisible.value = false + rejectForm.value.description = '' +} + +// 保存驳回信息 +const saveReject = async () => { + if (!rejectForm.value.description.trim()) { + ElMessage.warning('请输入驳回原因') + return + } + + try { + // 获取当前记录的ID + const currentId = fileList.value[0]?.id + if (!currentId) { + ElMessage.error('获取记录ID失败') + return + } + + // 调用驳回接口 + const res = await rejectApi({ + id: currentId, + description: rejectForm.value.description + }) + + if (res.data?.code === 200) { + ElMessage.success('驳回成功') + // 关闭弹框 + closeRejectDialog() + // 刷新数据 + await initData() + } else { + ElMessage.error(res.data?.msg || '驳回失败') + } + } catch (error) { + console.error('驳回失败:', error) + ElMessage.error('驳回失败') + } +} + +// 同意整改 +const approveRectify = async () => { + try { + // 获取当前记录的ID + const currentId = fileList.value[0]?.id + if (!currentId) { + ElMessage.error('获取记录ID失败') + return + } + + // 弹出确认提示 + await ElMessageBox.confirm('是否确认同意整改?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }) + + // 调用同意接口 + const res = await approveApi({ + id: currentId + }) + + if (res.data?.code === 200) { + ElMessage.success('同意成功') + // 刷新数据 + await initData() + } else { + ElMessage.error(res.data?.msg || '同意失败') + } + } catch (error) { + // 用户点击取消时,error.message 通常是 "cancel" + if (error !== 'cancel') { + console.error('同意失败:', error) + ElMessage.error('同意失败') + } + } +}