diff --git a/components/apolloTable/component/base/detail/link/index.tsx b/components/apolloTable/component/base/detail/link/index.tsx index 68e49067505cb6a06db1ec08a8dffd7d0a2a7c61..944c2dddee56038905c3bfe7e2fd9444a7a81339 100644 --- a/components/apolloTable/component/base/detail/link/index.tsx +++ b/components/apolloTable/component/base/detail/link/index.tsx @@ -11,7 +11,12 @@ export const ApolloLinkDetail = (props: LinkProps) => { {value.map((item, i) => { return (
- + {item.text || item.value}
diff --git a/components/apolloTable/component/base/edit/upload/index.tsx b/components/apolloTable/component/base/edit/upload/index.tsx index 920dd20341ee22dea702a1be494b92f3f33b6819..a63911d5e190f355c18752399b288232c4b93b1e 100644 --- a/components/apolloTable/component/base/edit/upload/index.tsx +++ b/components/apolloTable/component/base/edit/upload/index.tsx @@ -11,6 +11,9 @@ export const ApolloUpload = (props: ApolloUploadProps) => { const selfProps = antiAssign(props, ['onChange', 'value']); if (isMultiple) { selfProps.multiple = true; + } else { + selfProps.multiple = false; + selfProps.maxLength = 1; } const [value, setValue] = useState(props.value || []); const changeValue = (value) => { diff --git a/components/apolloTable/component/base/extra/upload/index.tsx b/components/apolloTable/component/base/extra/upload/index.tsx index 31b9fde8f40800985c6f52b67eae77825b3709ec..1b2d59a8551237ab8de40a67a6dec8721dc6434e 100644 --- a/components/apolloTable/component/base/extra/upload/index.tsx +++ b/components/apolloTable/component/base/extra/upload/index.tsx @@ -12,7 +12,7 @@ message.config({ }); const UploadCom = (props) => { - const { onChange, CDN_HOST, getFormat, setFormat, data, domain } = props; + const { onChange, CDN_HOST, getFormat, setFormat, data, domain, maxLength } = props; const selfProps = antiAssign(props, ['onChange', 'CDN_HOST', 'data']); const getFormatFileList = (fileList = []) => { if (!fileList) { @@ -88,6 +88,9 @@ const UploadCom = (props) => { const changeFileList = ({ file, fileList }) => { let newList = fileList; + if (maxLength) { + newList = fileList.slice(-maxLength); + } if (file.status === 'done' && file.response) { const itemObj = setFormatFile(file); newList = fileList.map((item) => { diff --git a/components/apolloTable/component/filter-condition/index.tsx b/components/apolloTable/component/filter-condition/index.tsx index 5720fa8f67f34e5a2dfec173a2da0c40e8e2b904..c75b2e1e72bbcd248778945c24a12cee947374d1 100644 --- a/components/apolloTable/component/filter-condition/index.tsx +++ b/components/apolloTable/component/filter-condition/index.tsx @@ -18,18 +18,24 @@ const formatTags = (columns: ColumnProps[], tags: any[]) => { return item.columnName === tag.colName; }); if (!colConfig) return; - const { componentAttr } = config[colConfig.columnType]; const { operator = [], columnType } = colConfig; + const { componentAttr, getFormatter } = config[columnType]; const newProps = { ...(componentAttr || {}), ...(colConfig.columnAttrObj || {}), }; const transferColumn = transferAttr(columnType, newProps); - const value = tag.colValues + let value = tag.colValues .map((item: any) => { return item.text; }) .join(','); + if (Number(columnType) === 11 && getFormatter) { + value = getFormatter(tag.colValues, transferColumn); + if (value.format) { + value = value.format(transferColumn.format); + } + } const op = operator.find((item: any) => { return item.id === tag.operationCode;