|
|
|
|
@ -0,0 +1,74 @@
|
|
|
|
|
import React, { useMemo } from 'react';
|
|
|
|
|
import styles from './LogisticsInfo.less';
|
|
|
|
|
const LogisticsInfo = ({ data }) => {
|
|
|
|
|
const mockData = {
|
|
|
|
|
// 承运商信息
|
|
|
|
|
approvedCarriers: '中远物流、顺丰速运、德邦物流',
|
|
|
|
|
vehicleRequirement: '危险品运输专用车辆',
|
|
|
|
|
driverQualification: '危险品运输资格证',
|
|
|
|
|
|
|
|
|
|
// 交付信息
|
|
|
|
|
preferredDeliveryLocation: '北京市大兴区亦庄开发区',
|
|
|
|
|
deliveryTime: '工作日 9:00-17:00',
|
|
|
|
|
receiverContact: '李主管(13900139001)',
|
|
|
|
|
|
|
|
|
|
// 资质证书
|
|
|
|
|
hazardousChemBusinessLicense: '已上传(有效期至2025-12-31)',
|
|
|
|
|
safetyProductionLicense: '已上传(有效期至2024-06-30)'
|
|
|
|
|
}
|
|
|
|
|
const safe = (v) => (v ?? '-')
|
|
|
|
|
const currency = (n) => {
|
|
|
|
|
if (typeof n === 'number') return `¥${n.toLocaleString()}`;
|
|
|
|
|
if (typeof n === 'string') return n;
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 近期交易记录 - 列定义与数据(参考 second_oil_components/BasicInfo.less 的表格样式)
|
|
|
|
|
const columns = useMemo(() => ([
|
|
|
|
|
{ title: '订单号', dataIndex: 'orderId', key: 'orderId', width: 160 },
|
|
|
|
|
{ title: '日期', dataIndex: 'date', key: 'date', width: 200 },
|
|
|
|
|
{ title: '产品', dataIndex: 'product', key: 'product', width: 140 },
|
|
|
|
|
{ title: '数量(吨)', dataIndex: 'quantity', key: 'quantity', width: 120 },
|
|
|
|
|
{ title: '金额(元)', dataIndex: 'amount', key: 'amount', width: 140, render: (val) => val.toLocaleString() },
|
|
|
|
|
]), []);
|
|
|
|
|
|
|
|
|
|
const tableData = [
|
|
|
|
|
{ key: '1', orderId: 'ORDER-2023-1025', date: '2025-11-15 20:02:14', product: '92#汽油', quantity: 500, amount: 3850000 },
|
|
|
|
|
{ key: '2', orderId: 'ORDER-2023-1012', date: '2025-11-15 18:22:58', product: '92#汽油', quantity: 200, amount: 2050000 },
|
|
|
|
|
{ key: '3', orderId: 'ORDER-2023-1005', date: '2025-11-15 15:38:26', product: '95#汽油', quantity: 300, amount: 1620000 },
|
|
|
|
|
{ key: '4', orderId: 'ORDER-2023-1021', date: '2025-11-10 10:42:08', product: '92#汽油', quantity: 500, amount: 3850000 },
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<div className={styles.container}>
|
|
|
|
|
<div className={styles.section}>
|
|
|
|
|
<div className={styles.sectionTitle}>承运商信息</div>
|
|
|
|
|
<div className={styles.grid}>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>核准承运商:</span><span className={styles.value}>{safe(mockData?.approvedCarriers)}</span></div>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>车辆要求:</span><span className={styles.value}>{safe(mockData?.vehicleRequirement)}</span></div>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>司机资质:</span><span className={styles.value}>{safe(mockData?.driverQualification)}</span></div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div className={styles.section}>
|
|
|
|
|
<div className={styles.sectionTitle}>交付信息</div>
|
|
|
|
|
<div className={styles.grid}>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>首选交付地点:</span><span className={styles.value}>{safe(mockData?.preferredDeliveryLocation)}</span></div>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>交付时间:</span><span className={styles.value}>{safe(mockData?.deliveryTime)}</span></div>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>接收联系人:</span><span className={styles.value}>{safe(mockData?.receiverContact)}</span></div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div className={styles.section}>
|
|
|
|
|
<div className={styles.sectionTitle}>资质证书</div>
|
|
|
|
|
<div className={styles.grid}>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>危险化学品经营许可证:</span><span className={styles.value}>{safe(mockData?.hazardousChemBusinessLicense)}</span></div>
|
|
|
|
|
<div className={styles.item}><span className={styles.label}>安全生产许可证:</span><span className={styles.value}>{safe(mockData?.safetyProductionLicense)}</span></div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default LogisticsInfo;
|
|
|
|
|
|
|
|
|
|
|