From 75be833554deac8674832120066dcec092fc4b2f Mon Sep 17 00:00:00 2001 From: Codewoc <947380458@qq.com> Date: Mon, 23 Mar 2026 14:01:06 +0800 Subject: [PATCH] =?UTF-8?q?feat(meeting):=20=E6=96=B0=E5=A2=9E=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E8=AF=A6=E6=83=85=E9=A1=B5=20ProjectDetail.vue=20+=20?= =?UTF-8?q?=E8=B7=AF=E7=94=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 ProjectDetail.vue:el-descriptions 展示项目基本信息 + 文件资料表格 - 支持上传/下载/删除资料文件,复用 project API - 项目基本信息通过 router state 从列表页携带(无需额外接口) - remaining.ts 新增 ReviewProjectDetail 路由 - ProjectList.vue 更新 goToDetail 携带完整 row 数据到 state Co-Authored-By: Claude Sonnet 4.6 --- src/router/modules/remaining.ts | 12 ++ src/views/review/meeting/ProjectDetail.vue | 182 +++++++++++++++++++++ src/views/review/meeting/ProjectList.vue | 12 +- 3 files changed, 205 insertions(+), 1 deletion(-) create mode 100644 src/views/review/meeting/ProjectDetail.vue diff --git a/src/router/modules/remaining.ts b/src/router/modules/remaining.ts index 2e927faf5..29702b547 100644 --- a/src/router/modules/remaining.ts +++ b/src/router/modules/remaining.ts @@ -771,6 +771,18 @@ const remainingRouter: AppRouteRecordRaw[] = [ activeMenu: '/review/meeting' }, component: () => import('@/views/review/meeting/MeetingEdit.vue') + }, + { + path: 'review-meeting/project/:meetingId(\\d+)/detail/:projectId(\\d+)', + name: 'ReviewProjectDetail', + meta: { + title: '项目详情', + noCache: true, + hidden: true, + canTo: true, + activeMenu: '/review/meeting' + }, + component: () => import('@/views/review/meeting/ProjectDetail.vue') } ] }, diff --git a/src/views/review/meeting/ProjectDetail.vue b/src/views/review/meeting/ProjectDetail.vue new file mode 100644 index 000000000..13e1a34b7 --- /dev/null +++ b/src/views/review/meeting/ProjectDetail.vue @@ -0,0 +1,182 @@ + + + + + diff --git a/src/views/review/meeting/ProjectList.vue b/src/views/review/meeting/ProjectList.vue index d14c585d5..87c45591a 100644 --- a/src/views/review/meeting/ProjectList.vue +++ b/src/views/review/meeting/ProjectList.vue @@ -236,7 +236,17 @@ const goToDetail = (row: ReviewMeetingProjectRespVO) => { router.push({ name: 'ReviewProjectDetail', params: { meetingId: reviewMeetingId, projectId: row.id }, - query: { projectTitle: row.projectTitle } + state: { + projectTitle: row.projectTitle, + seqNo: row.seqNo, + startTime: row.startTime, + endTime: row.endTime, + agendaCategory: row.agendaCategory, + reporter: row.reporter, + reporterUnit: row.reporterUnit, + host: row.host, + meetingName: meetingInfo.value?.name + } }) }