From da7098aa42394c56fb942e24273468a78a9b537a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=99=AF=E5=AD=A6?= <5412262+sun_jing_xue@user.noreply.gitee.com> Date: Thu, 17 Jul 2025 16:35:30 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=84=E5=AE=A1=E7=BB=93=E6=9E=9C=20?= =?UTF-8?q?=E6=98=BE=E7=A4=BAreviewName?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ResultModal.tsx | 12 ++++---- .../components/GroupLeaderModal.tsx | 28 ++++++++++++------- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/src/pages/supplier/admission/admissionManagement/components/ResultModal.tsx b/src/pages/supplier/admission/admissionManagement/components/ResultModal.tsx index f6634c4..81e775b 100644 --- a/src/pages/supplier/admission/admissionManagement/components/ResultModal.tsx +++ b/src/pages/supplier/admission/admissionManagement/components/ResultModal.tsx @@ -5,7 +5,7 @@ import { connect } from 'umi'; interface ResultModalProps { visible: boolean; - record?: { id?: string; [key: string]: any } | null; + record?: { id?: string;[key: string]: any } | null; onCancel: () => void; dispatch: any; } @@ -121,15 +121,15 @@ const ResultModal: React.FC = ({ }, ...suppliers.map(sup => { // 当前公司所有人员(所有非summary项,取 coscoAccessUserItemList 多个) - const reviewerSet = new Set(); + const reviewerMap = new Map(); (sup.coscoAccessItemList || []).forEach((item: any) => { if (item.itemType !== 'summary' && Array.isArray(item.coscoAccessUserItemList)) { item.coscoAccessUserItemList.forEach((u: any) => { - reviewerSet.add(u.reviewBy); + reviewerMap.set(u.reviewBy, u.reviewName); // 工号 -> 姓名 }); } }); - const reviewers = Array.from(reviewerSet); + const reviewers = Array.from(reviewerMap.entries()).map(([reviewBy, reviewName]) => ({ reviewBy, reviewName })); return { title: ( @@ -148,8 +148,8 @@ const ResultModal: React.FC = ({ ), - children: reviewers.map((reviewBy: string) => ({ - title: reviewBy, + children: reviewers.map(({ reviewName, reviewBy }) => ({ + title: reviewName, dataIndex: `${sup.supplierId}_${reviewBy}`, key: `${sup.supplierId}_${reviewBy}`, width: 100, diff --git a/src/pages/supplier/admission/admissionReviewManagement/components/GroupLeaderModal.tsx b/src/pages/supplier/admission/admissionReviewManagement/components/GroupLeaderModal.tsx index 89a2603..27e799b 100644 --- a/src/pages/supplier/admission/admissionReviewManagement/components/GroupLeaderModal.tsx +++ b/src/pages/supplier/admission/admissionReviewManagement/components/GroupLeaderModal.tsx @@ -6,7 +6,7 @@ import './GroupLeaderModal.less' interface GroupLeaderModalProps { visible: boolean; view: boolean; - record?: { id?: string; [key: string]: any } | null; + record?: { id?: string;[key: string]: any } | null; onCancel: () => void; onSubmit: () => void; dispatch: any; @@ -131,7 +131,7 @@ const GroupLeaderModal: React.FC = ({ }).filter(Boolean); let accessWorkId = record?.id || ''; for (let index = 0; index < summaryParams.length; index++) { - if(summaryParams[index].reviewResult === null || summaryParams[index].reviewResult === undefined) { + if (summaryParams[index].reviewResult === null || summaryParams[index].reviewResult === undefined) { message.warning('有未评审项'); return } @@ -154,7 +154,16 @@ const GroupLeaderModal: React.FC = ({ fixed: 'left', }, ...suppliers.map(sup => { - const reviewers = supplierReviewerMap[sup.supplierId] || []; + // 构建对象数组 + const reviewerSet = new Map(); + (sup.coscoAccessUserItemList || []).forEach((u: any) => { + if (u.itemType === 'item' && u.reviewBy) { + reviewerSet.set(u.reviewBy, u.reviewName || u.reviewBy); + } + }); + const reviewers = Array.from(reviewerSet.entries()).map(([reviewBy, reviewName]) => ({ reviewBy, reviewName })); + + // const reviewers = supplierReviewerMap[sup.supplierId] || []; return { title: (
@@ -170,14 +179,13 @@ const GroupLeaderModal: React.FC = ({
), - children: reviewers.map((reviewBy: string) => ({ - title: reviewBy, + children: reviewers.map(({ reviewName, reviewBy }) => ({ + title: reviewName, dataIndex: `${sup.supplierId}_${reviewBy}`, key: `${sup.supplierId}_${reviewBy}`, width: 100, align: 'center', render: (_: any, row: any) => { - // itemName+reviewBy精确查找 const userItem = (sup.coscoAccessUserItemList || []).find( (u: any) => u.itemType === 'item' && u.itemName === row.itemName && u.reviewBy === reviewBy ); @@ -187,8 +195,8 @@ const GroupLeaderModal: React.FC = ({ {userItem.reviewResult === '0' ? 合格 : userItem.reviewResult === '1' - ? 不合格 - : ''} + ? 不合格 + : ''} {userItem.remark && (