Commit 49238dcc by zhaochengxiang

结构化字段

parent 721aa3d5
......@@ -74,7 +74,53 @@ const AssetAction = (props) => {
const [columnForm] = Form.useForm()
const relationAssetsRef = useRef();
const businessCols = [
const columns = [
{
title: '技术ID(英文名称)',
dataIndex: 'name',
width: 160,
ellipsis: true,
render: (text, record, _) => {
return (
<Tooltip title={text||''}>
<a onClick={() => {
window.open(`/center-home/metadetail?mid=${record.metadataColumnId}&action=metadetail&type=detail&manager=true&activekey=1`)
}}>
{highlightSearchContentByTerms(text||'', terms)}
</a>
</Tooltip>
);
}
},
{
title: '名称',
dataIndex: 'cnName',
// width: 200,
ellipsis: true,
render: (text, _) => highlightSearchContentByTerms(text||'', terms)
},
{
title: '备注信息',
dataIndex: 'remarks',
ellipsis: true,
render: (text, _) => highlightSearchContentByTerms(text||'', terms)
},
{
title: '类型',
dataIndex: 'typeName',
width: 100,
ellipsis: true,
render: (text, _) => highlightSearchContentByTerms(text||'', terms)
},
{
title: '长度',
dataIndex: 'size',
width: 60,
ellipsis: true,
},
];
const businessColumns = [
{
title: <span>
<span style={{
......@@ -221,13 +267,16 @@ const AssetAction = (props) => {
}, [currentDomainGroup, currentBussinessDomain, treeDataMap])
const cols = useMemo(() => {
let newCols = [...businessCols]
if (isMetadataEdit) {
newCols.push(businessActionCol)
let newCols = []
if (assets) {
newCols = assets.structured?[...columns]:[...businessColumns]
if (!assets.structured && isMetadataEdit) {
newCols.push(businessActionCol)
}
}
return newCols
}, [isMetadataEdit, modifyMetadataColumnList])
}, [isMetadataEdit, assets, columns, businessColumns, businessActionCol])
const [tableData, total] = useMemo(() => {
let currentMetadataColumnList = isMetadataEdit ? [...modifyMetadataColumnList||[]] : [...metadataColumnList||[]]
......@@ -923,6 +972,68 @@ const AssetAction = (props) => {
},
}}
/> : <React.Fragment>
<Space style={{ marginLeft: 'auto' }}>
{
!readonly && (reference===AssetManageReference||canEdit) && <React.Fragment>
{
isMetadataEdit ? <React.Fragment>
<Button onClick={() => {
setMetadataEdit(false)
}}>
取消
</Button>
<Button onClick={ async () => {
try {
await columnForm?.validateFields()
setModifyMetadataColumnList(prev => {
return [{
}, ...prev]
})
} catch (errInfo) {
}
}}>
新增
</Button>
<Button onClick={async () => {
try {
await columnForm?.validateFields()
setLoadingMetadataColumnList(true)
dispatch({
type: 'assetmanage.saveBusinessColumns',
payload: {
params: {
dataAssetId: assets?.id,
},
data: modifyMetadataColumnList,
},
callback: () => {
setLoadingMetadataColumnList(false)
setMetadataEdit(false)
getMetadataAttributes()
},
error: () => {
setLoadingMetadataColumnList(false)
}
})
} catch (errInfo) {
}
}}>
保存
</Button>
</React.Fragment> : <Button onClick={() => {
setModifyMetadataColumnList(metadataColumnList)
setMetadataEdit(true)
}}>
编辑
</Button>
}
</React.Fragment>
}
</Space>
<Form form={columnForm}>
<Table
className='mt-3'
......@@ -958,68 +1069,6 @@ const AssetAction = (props) => {
</React.Fragment>
}
</div>
<Space style={{ marginLeft: 'auto' }}>
{
!readonly && (reference===AssetManageReference||canEdit) && <React.Fragment>
{
isMetadataEdit ? <React.Fragment>
<Button onClick={() => {
setMetadataEdit(false)
}}>
取消
</Button>
<Button onClick={ async () => {
try {
await columnForm?.validateFields()
setModifyMetadataColumnList(prev => {
return [{
}, ...prev]
})
} catch (errInfo) {
}
}}>
新增
</Button>
<Button onClick={async () => {
try {
await columnForm?.validateFields()
setLoadingMetadataColumnList(true)
dispatch({
type: 'assetmanage.saveBusinessColumns',
payload: {
params: {
dataAssetId: assets?.id,
},
data: modifyMetadataColumnList,
},
callback: () => {
setLoadingMetadataColumnList(false)
setMetadataEdit(false)
getMetadataAttributes()
},
error: () => {
setLoadingMetadataColumnList(false)
}
})
} catch (errInfo) {
}
}}>
保存
</Button>
</React.Fragment> : <Button onClick={() => {
setModifyMetadataColumnList(metadataColumnList)
setMetadataEdit(true)
}}>
编辑
</Button>
}
</React.Fragment>
}
</Space>
{contextHolder}
</div>
)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment