Merge branch 'dev' of http://59.110.10.99:53000/liuc/fe_supplier_frontend into dev
This commit is contained in:
@ -340,7 +340,6 @@ const EvaluateTemplateTable: React.FC<EvaluateTemplateTableProps> = ({
|
||||
const updateDataSource = (newData: TableRowItem[]) => {
|
||||
// 确保每行都有唯一稳定的key
|
||||
const finalData = ensureUniqueKeys(newData);
|
||||
console.log('finalData', finalData);
|
||||
setDataSource(finalData);
|
||||
if (onChange) {
|
||||
// 转换回API格式再传递给父组件
|
||||
@ -369,7 +368,6 @@ const EvaluateTemplateTable: React.FC<EvaluateTemplateTableProps> = ({
|
||||
|
||||
// 处理输入变化
|
||||
const handleInputChange = (val: any, record: TableRowItem, field: string) => {
|
||||
console.log('handleInputChange', val, record, field);
|
||||
const newData = [...dataSource];
|
||||
const index = newData.findIndex((item) => item.key === record.key);
|
||||
if (index > -1) {
|
||||
@ -839,11 +837,11 @@ const EvaluateTemplateTable: React.FC<EvaluateTemplateTableProps> = ({
|
||||
}
|
||||
return (
|
||||
<InputNumber
|
||||
min={0}
|
||||
min={1}
|
||||
max={100}
|
||||
disabled={record.scoreEditST === '1' || record.indicatorStEditST === '1'}
|
||||
value={parseFloat(cellContent) || 0}
|
||||
onChange={(val) => handleInputChange(val?.toString() || '0', record, 'stScore')}
|
||||
value={parseFloat(cellContent) || 1}
|
||||
onChange={(val) => handleInputChange(val?.toString() || '1', record, 'stScore')}
|
||||
style={{ width: '100%' }}
|
||||
/>
|
||||
);
|
||||
@ -987,11 +985,11 @@ const EvaluateTemplateTable: React.FC<EvaluateTemplateTableProps> = ({
|
||||
}
|
||||
return (
|
||||
<InputNumber
|
||||
min={0}
|
||||
min={1}
|
||||
max={100}
|
||||
disabled={record.disabledNd}
|
||||
value={parseFloat(text) || 0}
|
||||
onChange={(val) => handleInputChange(val?.toString() || '0', record, 'ndScore')}
|
||||
value={parseFloat(text) || 1}
|
||||
onChange={(val) => handleInputChange(val?.toString() || '1', record, 'ndScore')}
|
||||
style={{ width: '100%' }}
|
||||
/>
|
||||
);
|
||||
|
12
src/components/SupplierDetailModalContext/SupplierDetail.tsx
Normal file
12
src/components/SupplierDetailModalContext/SupplierDetail.tsx
Normal file
@ -0,0 +1,12 @@
|
||||
import React, { useState, useEffect } from 'react';
|
||||
|
||||
const SupplierDetail = ({ supplierId }: { supplierId: string | null }) => {
|
||||
const [supplierDetail, setSupplierDetail] = useState(null);
|
||||
|
||||
useEffect(() => {
|
||||
console.log(supplierId);
|
||||
}, [supplierId]);
|
||||
return <div>SupplierDetail</div>;
|
||||
};
|
||||
|
||||
export default SupplierDetail;
|
@ -0,0 +1,25 @@
|
||||
import React, { useState } from 'react';
|
||||
import { Modal } from 'antd';
|
||||
import SupplierDetail from './SupplierDetail';
|
||||
|
||||
const SupplierDetailModalContext = React.createContext<((id: string) => void) | null>(null);
|
||||
export const useSupplierDetailModal = () => React.useContext(SupplierDetailModalContext);
|
||||
|
||||
export const SupplierDetailModalProvider = ({ children }: { children: React.ReactNode }) => {
|
||||
const [visible, setVisible] = useState(false);
|
||||
const [supplierId, setSupplierId] = useState<string | null>(null);
|
||||
|
||||
const showSupplierDetail = (id: string) => {
|
||||
setSupplierId(id);
|
||||
setVisible(true);
|
||||
};
|
||||
|
||||
return (
|
||||
<SupplierDetailModalContext.Provider value={showSupplierDetail}>
|
||||
{children}
|
||||
<Modal visible={visible} onCancel={() => setVisible(false)} footer={null}>
|
||||
<SupplierDetail supplierId={supplierId} />
|
||||
</Modal>
|
||||
</SupplierDetailModalContext.Provider>
|
||||
);
|
||||
};
|
3
src/components/SupplierDetailModalContext/readme.md
Normal file
3
src/components/SupplierDetailModalContext/readme.md
Normal file
@ -0,0 +1,3 @@
|
||||
// 任何页面/组件
|
||||
const showSupplierDetail = useSupplierDetailModal();
|
||||
<span onClick={() => showSupplierDetail(supplier.id)}>{supplier.name}</span>
|
@ -233,6 +233,11 @@ const SupplierSelector: React.FC<SupplierSelectorProps> = ({
|
||||
}));
|
||||
};
|
||||
|
||||
// 显示供应商详情
|
||||
const showSupplierDetail = (record: SupplierItem) => {
|
||||
console.log(record);
|
||||
};
|
||||
|
||||
// 表格列定义
|
||||
const columns = [
|
||||
{
|
||||
@ -240,9 +245,9 @@ const SupplierSelector: React.FC<SupplierSelectorProps> = ({
|
||||
dataIndex: 'supplierName',
|
||||
width: 120,
|
||||
ellipsis: true,
|
||||
render: (supplierName: string) => (
|
||||
render: (supplierName: string, record: SupplierItem) => (
|
||||
<Tooltip placement="topLeft" title={supplierName}>
|
||||
{supplierName}
|
||||
<span onClick={()=>showSupplierDetail(record)}>{supplierName}</span>
|
||||
</Tooltip>
|
||||
),
|
||||
},
|
||||
|
Reference in New Issue
Block a user