From 9ea4e18161d44d9ff5ec23b0e4b34caf878ffa19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E5=BA=86=E6=B3=B0?= <12369755+htcloud1@user.noreply.gitee.com> Date: Sun, 13 Sep 2026 21:03:10 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=88=A0=E9=99=A4=E5=85=AC=E5=91=8A?= =?UTF-8?q?=E7=A1=AE=E8=AE=A4=E6=94=B9=E7=94=A8=20ElMessageBox.confirm?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - manager/Projects.vue: 删除空 body 的 el-dialog (header/footer 边框叠成两条线), 改用 ElMessageBox.confirm - 合并 openDeleteAnnouncement/confirmDeleteAnn 为 deleteAnnouncement, 删无用 ref delAnnModalOpen/delAnnTargetRow --- ry-vue3/src/views/manager/Projects.vue | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/ry-vue3/src/views/manager/Projects.vue b/ry-vue3/src/views/manager/Projects.vue index 142a604..eb21fbd 100644 --- a/ry-vue3/src/views/manager/Projects.vue +++ b/ry-vue3/src/views/manager/Projects.vue @@ -233,14 +233,6 @@ - - - - - @@ -329,7 +321,7 @@ function onAction(cmd, row) { else if (cmd === 'view') viewDetail(row) else if (cmd === 'edit') doEdit(row) else if (cmd === 'activate') openActivate(row) - else if (cmd === 'delAnn') openDeleteAnnouncement(row) + else if (cmd === 'delAnn') deleteAnnouncement(row) else if (cmd === 'rate') openSingleScore(row) else if (cmd === 'delete') doDelete(row) } @@ -486,15 +478,13 @@ function confirmActivate() { .catch(() => ElMessage.error('开通失败')) } -function openDeleteAnnouncement(row) { - delAnnTargetRow.value = row - delAnnModalOpen.value = true -} -function confirmDeleteAnn() { - if (!delAnnTargetRow.value) return +async function deleteAnnouncement(row) { + try { + await ElMessageBox.confirm(`确定删除项目 ${row.projectNo} 的所有公告吗?删除后无法恢复`, '删除公告', { type: 'warning' }) + } catch { return } // 删除公告: 后端专用端点, 将 3 个公示 URL 置 NULL (未发布由 URL 为空判定, 无独立 is_published 列) - request.delete(`/business/project/${delAnnTargetRow.value.projectId}/announcement`) - .then(() => { ElMessage.success(`已删除项目 ${delAnnTargetRow.value.projectNo} 的公告`); delAnnModalOpen.value = false; load() }) + request.delete(`/business/project/${row.projectId}/announcement`) + .then(() => { ElMessage.success(`已删除项目 ${row.projectNo} 的公告`); load() }) .catch(() => ElMessage.error('删除失败')) } @@ -614,8 +604,6 @@ const closeModalOpen = ref(false) const closeTargetRow = ref(null) const activateModalOpen = ref(false) const activateTargetRow = ref(null) -const delAnnModalOpen = ref(false) -const delAnnTargetRow = ref(null) const singleScoreModalOpen = ref(false) const singleScoreTargetRow = ref(null) const singleScoreForm = reactive({ qualityScore: 0, responseScore: 0, cooperationScore: 0, complianceScore: 0 })