合并代码

This commit is contained in:
孙景学
2025-07-02 16:18:03 +08:00
parent 2b3eb5672d
commit 3ae57eb23b
87 changed files with 3852 additions and 19276 deletions

View File

@ -1,11 +1,12 @@
import React, { useEffect, useState } from 'react';
import { Modal, Table, Button, Select, Spin, message } from 'antd';
import { reviewInfoData } from '../services';
import { reviewInfoData } from '../services';
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;
}
// 只读备注弹窗
@ -14,7 +15,7 @@ const RemarkViewModal: React.FC<{
onCancel: () => void;
remark: string;
file?: any;
}> = ({ visible, onCancel, remark, file }) => (
}> = ({ visible, onCancel, remark, file, }) => (
<Modal
visible={visible}
title="备注信息"
@ -42,6 +43,7 @@ const ResultModal: React.FC<ResultModalProps> = ({
visible,
record,
onCancel,
dispatch
}) => {
const [loading, setLoading] = useState(false);
const [suppliers, setSuppliers] = useState<any[]>([]);
@ -49,7 +51,6 @@ const ResultModal: React.FC<ResultModalProps> = ({
const [groupSummaryResult, setGroupSummaryResult] = useState<{ [k: string]: '0' | '1' | undefined }>({});
// 查看备注弹窗
const [remarkModal, setRemarkModal] = useState({ open: false, remark: '', file: undefined as any });
// 拉取数据
useEffect(() => {
if (visible && record?.id) {
@ -67,7 +68,7 @@ const ResultModal: React.FC<ResultModalProps> = ({
supplierList.forEach((sup: any) => {
// summary 行
const summaryItem = (sup.coscoAccessItemList || []).find((i: any) => i.itemType === 'summary');
console.log(summaryItem,'summaryItem');
console.log(summaryItem, 'summaryItem');
summaryMap[sup.supplierId] = summaryItem.coscoAccessUserItemList[0]?.reviewResult;
});
setGroupSummaryResult(summaryMap);
@ -79,8 +80,8 @@ const ResultModal: React.FC<ResultModalProps> = ({
setGroupSummaryResult({});
}
}, [visible, record]);
// 构造二级表头
const columns: any[] = [
@ -102,10 +103,23 @@ const ResultModal: React.FC<ResultModalProps> = ({
}
});
const reviewers = Array.from(reviewerSet);
console.log(sup, 'sup');
return {
title: (
<div>
<div style={{ fontWeight: 600 }}>{sup.supplierName}</div>
<a
onClick={() => {
dispatch({
type: 'globalModal/show',
payload: {
id: sup.supplierId,
},
});
}}
>
{sup.supplierName}
</a>
</div>
),
children: reviewers.map((reviewBy: string) => ({
@ -125,8 +139,8 @@ const ResultModal: React.FC<ResultModalProps> = ({
{userItem.reviewResult === '0'
? <span style={{ color: '#52c41a' }}></span>
: userItem.reviewResult === '1'
? <span style={{ color: '#f5222d' }}></span>
: ''}
? <span style={{ color: '#f5222d' }}></span>
: ''}
{userItem.remark && (
<Button type="link" size="small" onClick={() =>
setRemarkModal({ open: true, remark: userItem.remark, file: userItem.coscoAccessTtemAttachments })
@ -179,10 +193,10 @@ const ResultModal: React.FC<ResultModalProps> = ({
}
});
const colSpan = reviewerSet.size || 1;
return (
<Table.Summary.Cell index={index} key={sup.supplierId} colSpan={colSpan} align="center">
<span style={{color: groupSummaryResult[sup.supplierId] === '0'? '#52c41a': '#f5222d' }}> {groupSummaryResult[sup.supplierId] === '0'? '合格': '不合格'}</span>
<span style={{ color: groupSummaryResult[sup.supplierId] === '0' ? '#52c41a' : '#f5222d' }}> {groupSummaryResult[sup.supplierId] === '0' ? '合格' : '不合格'}</span>
</Table.Summary.Cell>
)
})}
@ -222,4 +236,4 @@ const ResultModal: React.FC<ResultModalProps> = ({
);
};
export default ResultModal;
export default connect()(ResultModal);