From 66a5fe964fb105cda88346811619d1bc12d91748 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期二, 25 八月 2026 16:30:36 +0800
Subject: [PATCH] feat(mes): 设计项目列表新增「审核文件」按钮,按文件审核状态显隐「提交审批」
---
src/api/mes/pd/project/index.ts | 2 ++
src/views/mes/pd/project/index.vue | 22 +++++++++++++++++++++-
src/views/mes/pd/project/detail/index.vue | 5 ++++-
3 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/src/api/mes/pd/project/index.ts b/src/api/mes/pd/project/index.ts
index e6841ce..1e927d5 100644
--- a/src/api/mes/pd/project/index.ts
+++ b/src/api/mes/pd/project/index.ts
@@ -34,6 +34,8 @@
createTime?: number;
/** BPM 娴佺▼瀹炰緥缂栧彿 */
processInstanceId?: string;
+ /** 寰呭鏍告枃浠舵暟锛坅uditStatus=0 鐨勫鏍歌褰曟暟锛� */
+ pendingAuditCount?: number;
}
export interface PageParams extends PageParam {
diff --git a/src/views/mes/pd/project/detail/index.vue b/src/views/mes/pd/project/detail/index.vue
index 97f7f8b..f38c05d 100644
--- a/src/views/mes/pd/project/detail/index.vue
+++ b/src/views/mes/pd/project/detail/index.vue
@@ -86,7 +86,10 @@
loading.value = true;
try {
project.value = await getPdProject(projectId.value);
- if (isPendingUpload.value) {
+ if (route.query.tab === 'audit') {
+ // 浠庡垪琛ㄩ〉銆屽鏍告枃浠躲�嶆寜閽繘鍏ワ紝鐩存帴瀹氫綅鍒拌祫鏂欏鏍� Tab
+ activeTab.value = 'audit';
+ } else if (isPendingUpload.value) {
activeTab.value = 'material';
} else if (isPendingAudit.value) {
activeTab.value = 'audit';
diff --git a/src/views/mes/pd/project/index.vue b/src/views/mes/pd/project/index.vue
index 6727d6d..05c74ce 100644
--- a/src/views/mes/pd/project/index.vue
+++ b/src/views/mes/pd/project/index.vue
@@ -100,6 +100,15 @@
}
}
+/** 瀹℃牳鏂囦欢 - 璺宠浆璇︽儏椤佃祫鏂欏鏍� Tab */
+function handleAuditFile(row: MesPdProjectApi.Project) {
+ router.push({
+ name: 'MesPdProjectDetail',
+ params: { id: row.id },
+ query: { tab: 'audit' },
+ });
+}
+
/** 鏌ョ湅瀹℃壒璇︽儏 */
function handleProcessDetail(row: MesPdProjectApi.Project) {
if (!row.processInstanceId) {
@@ -223,10 +232,21 @@
onClick: () => handleDetail(row),
},
{
+ label: '瀹℃牳鏂囦欢',
+ type: 'link',
+ auth: ['mes:pd-project:update'],
+ ifShow:
+ row.status === MesPdProjectStatusEnum.PENDING_AUDIT &&
+ (row.pendingAuditCount ?? 0) > 0,
+ onClick: handleAuditFile.bind(null, row),
+ },
+ {
label: '鎻愪氦瀹℃壒',
type: 'link',
auth: ['mes:pd-project:update'],
- ifShow: row.status === MesPdProjectStatusEnum.PENDING_AUDIT,
+ ifShow:
+ row.status === MesPdProjectStatusEnum.PENDING_AUDIT &&
+ (row.pendingAuditCount ?? 0) === 0,
onClick: handleSubmit.bind(null, row),
},
{
--
Gitblit v1.9.3