import React, { useState, useEffect } from 'react'; import { Modal, Descriptions, Spin } from 'antd'; import { useSupplierDetailModal } from '@/components/SupplierDetailModalContext/SupplierDetailModalContext'; import GlobalModal from '../GlobalModal/index' import { coscoAccessWork } from '../services' //数据接口 interface Data { coscoAccessWork: coscoAccessWorks; coscoAccessSupplierList: coscoAccessSupplierLists[]; coscoAccessCategoryList: coscoAccessCategoryLists[]; coscoAccessUserls: coscoAccessUserl[]; coscoAccessWorkAttachments: coscoAccessWorkAttachments; } interface coscoAccessWorkAttachments { fileName: string; fileUrl: string; } interface coscoAccessUserl { deptName: string; deptId: string; userName: string; userId: string; } interface coscoAccessCategoryLists { categoryName: string; [property: string]: any; } interface coscoAccessSupplierLists { supplierName: string; [property: string]: any; } interface coscoAccessWorks { deptId: string; deptName: string; orgName: string; startTime: string; endTime: string; reviewStatusText: string; accessType: string; accessDesc: string; approveStatusText: string; } const ViewModal: React.FC<{ visible: boolean; record?: any; onCancel: () => void; }> = ({ visible, record = {}, onCancel }) => { //渲染数据 const [data, setData] = useState < Data | null > (null); const supplierDetailModal = useSupplierDetailModal(); const [loading, setLoading] = useState(false); const [visibleGlobalModal, setVisibleGlobalModal] = useState(false); const [id, setId] = useState(''); //初始化 useEffect(() => { console.log(record,visible); if (visible && record?.id) { setLoading(true); coscoAccessWork(record.id) .then((res) => { const { code, data } = res; if (code == 200) { setData(data); } }) .finally(() => setLoading(false)); } else { setData(null); } }, [visible, record]); return (

查看详情

{data && ( {data.coscoAccessWork.orgName} {data.coscoAccessWork.deptName} {data.coscoAccessSupplierList.map((item) => { return ( { setId(item.supplierId) setVisibleGlobalModal(true) }} > {item.supplierName} //
supplierDetailModal?.(item.supplierId)} >{item.supplierName}
) })}
{data.coscoAccessWork.accessType === 'scattered' && ( <> {data.coscoAccessCategoryList.map((item) => { return (
{item.categoryPathName}
) })}
{data.coscoAccessWork.accessDesc} {data.coscoAccessWorkAttachments.fileName} )} {data.coscoAccessWork.accessType === 'offline' && ( <> {data.coscoAccessCategoryList.map((item) => { return (
{item.categoryPathName}
) })}
{data.coscoAccessWorkAttachments.fileName} )} {data.coscoAccessWork.accessType === 'online' && ( <> {data.coscoAccessCategoryList.map((item) => { return (
{item.categoryPathName}
) })}
{data.coscoAccessWork.startTime} {data.coscoAccessWork.endTime} {data.coscoAccessUserls.map((item) => { return (
{item.deptName} - {item.userName}
) })}
{data.coscoAccessWork.approveStatusText} )}
)}
setVisibleGlobalModal(false)} />
); }; export default ViewModal;