|
|
@@ -16,13 +16,17 @@ export type ParameterSelectObject = { |
|
|
[key: string]: any; |
|
|
[key: string]: any; |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
export type ParameterSelectDataType = 'dataset' | 'model' | 'service' | 'resource'; |
|
|
|
|
|
|
|
|
export interface ParameterSelectProps extends SelectProps { |
|
|
export interface ParameterSelectProps extends SelectProps { |
|
|
/** 类型 */ |
|
|
/** 类型 */ |
|
|
dataType: 'dataset' | 'model' | 'service' | 'resource'; |
|
|
|
|
|
|
|
|
dataType: ParameterSelectDataType; |
|
|
/** 是否只是展示信息 */ |
|
|
/** 是否只是展示信息 */ |
|
|
display?: boolean; |
|
|
display?: boolean; |
|
|
/** 值,支持对象,对象必须包含 value */ |
|
|
/** 值,支持对象,对象必须包含 value */ |
|
|
value?: string | ParameterSelectObject; |
|
|
value?: string | ParameterSelectObject; |
|
|
|
|
|
/** 用于流水线, 流水线资源规格要求 id 为字符串 */ |
|
|
|
|
|
isPipeline?: boolean; |
|
|
/** 修改后回调 */ |
|
|
/** 修改后回调 */ |
|
|
onChange?: (value: string | ParameterSelectObject) => void; |
|
|
onChange?: (value: string | ParameterSelectObject) => void; |
|
|
} |
|
|
} |
|
|
@@ -32,6 +36,7 @@ function ParameterSelect({ |
|
|
dataType, |
|
|
dataType, |
|
|
display = false, |
|
|
display = false, |
|
|
value, |
|
|
value, |
|
|
|
|
|
isPipeline = false, |
|
|
onChange, |
|
|
onChange, |
|
|
...rest |
|
|
...rest |
|
|
}: ParameterSelectProps) { |
|
|
}: ParameterSelectProps) { |
|
|
@@ -39,6 +44,12 @@ function ParameterSelect({ |
|
|
const propsConfig = paramSelectConfig[dataType]; |
|
|
const propsConfig = paramSelectConfig[dataType]; |
|
|
const valueText = typeof value === 'object' && value !== null ? value.value : value; |
|
|
const valueText = typeof value === 'object' && value !== null ? value.value : value; |
|
|
const [resourceStandardList] = useComputingResource(); |
|
|
const [resourceStandardList] = useComputingResource(); |
|
|
|
|
|
const computingResource = isPipeline |
|
|
|
|
|
? resourceStandardList.map((v) => ({ |
|
|
|
|
|
...v, |
|
|
|
|
|
id: String(v.id), |
|
|
|
|
|
})) |
|
|
|
|
|
: resourceStandardList; |
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
useEffect(() => { |
|
|
// 获取下拉数据 |
|
|
// 获取下拉数据 |
|
|
@@ -56,7 +67,7 @@ function ParameterSelect({ |
|
|
getSelectOptions(); |
|
|
getSelectOptions(); |
|
|
}, [propsConfig]); |
|
|
}, [propsConfig]); |
|
|
|
|
|
|
|
|
const selectOptions = dataType === 'resource' ? resourceStandardList : options; |
|
|
|
|
|
|
|
|
const selectOptions = dataType === 'resource' ? computingResource : options; |
|
|
|
|
|
|
|
|
const handleChange = (text: string) => { |
|
|
const handleChange = (text: string) => { |
|
|
if (typeof value === 'object' && value !== null) { |
|
|
if (typeof value === 'object' && value !== null) { |
|
|
|