Commit c4f08074 by zhaochengxiang

bug fix

parent 49238dcc
...@@ -65,7 +65,6 @@ const AssetAction = (props) => { ...@@ -65,7 +65,6 @@ const AssetAction = (props) => {
const [publishedAssetPaths, setPublishedAssetPaths] = useState([]); const [publishedAssetPaths, setPublishedAssetPaths] = useState([]);
const [publishedAsset, setPublishedAsset] = useState(); const [publishedAsset, setPublishedAsset] = useState();
const [isMetadataEdit, setMetadataEdit] = useState(false);
const [loadingSaveAsDraft, setLoadingSaveAsDraft] = React.useState(false) const [loadingSaveAsDraft, setLoadingSaveAsDraft] = React.useState(false)
const [needSaveAsDraft, setNeedSaveAsDraft] = React.useState() const [needSaveAsDraft, setNeedSaveAsDraft] = React.useState()
...@@ -140,7 +139,7 @@ const AssetAction = (props) => { ...@@ -140,7 +139,7 @@ const AssetAction = (props) => {
> >
<MetadataColumnEditableItem <MetadataColumnEditableItem
value={text} value={text}
isEdit={isMetadataEdit} isEdit={currentAction!=='detail'}
terms={terms} terms={terms}
onChange={(e) => { onChange={(e) => {
onMetadataColumnEditableItemChange(e.target.value, 'enName', index) onMetadataColumnEditableItemChange(e.target.value, 'enName', index)
...@@ -156,7 +155,7 @@ const AssetAction = (props) => { ...@@ -156,7 +155,7 @@ const AssetAction = (props) => {
ellipsis: true, ellipsis: true,
render: (text, _, index) => <MetadataColumnEditableItem render: (text, _, index) => <MetadataColumnEditableItem
value={text} value={text}
isEdit={isMetadataEdit} isEdit={currentAction!=='detail'}
terms={terms} terms={terms}
onChange={(e) => { onChange={(e) => {
onMetadataColumnEditableItemChange(e.target.value, 'cnName', index) onMetadataColumnEditableItemChange(e.target.value, 'cnName', index)
...@@ -169,7 +168,7 @@ const AssetAction = (props) => { ...@@ -169,7 +168,7 @@ const AssetAction = (props) => {
ellipsis: true, ellipsis: true,
render: (text, _, index) => <MetadataColumnEditableItem render: (text, _, index) => <MetadataColumnEditableItem
value={text} value={text}
isEdit={isMetadataEdit} isEdit={currentAction!=='detail'}
terms={terms} terms={terms}
onChange={(e) => { onChange={(e) => {
onMetadataColumnEditableItemChange(e.target.value, 'remarks', index) onMetadataColumnEditableItemChange(e.target.value, 'remarks', index)
...@@ -270,19 +269,19 @@ const AssetAction = (props) => { ...@@ -270,19 +269,19 @@ const AssetAction = (props) => {
let newCols = [] let newCols = []
if (assets) { if (assets) {
newCols = assets.structured?[...columns]:[...businessColumns] newCols = assets.structured?[...columns]:[...businessColumns]
if (!assets.structured && isMetadataEdit) { if (!assets.structured && currentAction!=='detail') {
newCols.push(businessActionCol) newCols.push(businessActionCol)
} }
} }
return newCols return newCols
}, [isMetadataEdit, assets, columns, businessColumns, businessActionCol]) }, [currentAction, assets, columns, businessColumns, businessActionCol])
const [tableData, total] = useMemo(() => { const [tableData, total] = useMemo(() => {
let currentMetadataColumnList = isMetadataEdit ? [...modifyMetadataColumnList||[]] : [...metadataColumnList||[]] let currentMetadataColumnList = currentAction!=='detail' ? [...modifyMetadataColumnList||[]] : [...metadataColumnList||[]]
return [paginate(currentMetadataColumnList, pageNum, pageSize), currentMetadataColumnList.length]; return [paginate(currentMetadataColumnList, pageNum, pageSize), currentMetadataColumnList.length];
}, [metadataColumnList, modifyMetadataColumnList, pagination, keyword, isMetadataEdit, assets]) }, [metadataColumnList, modifyMetadataColumnList, pagination, keyword, currentAction, assets])
const getPermission = () => { const getPermission = () => {
dispatch({ dispatch({
...@@ -540,7 +539,8 @@ const AssetAction = (props) => { ...@@ -540,7 +539,8 @@ const AssetAction = (props) => {
}, },
callback: data => { callback: data => {
setLoadingMetadataColumnList(false); setLoadingMetadataColumnList(false);
setMetadataColumnList(data); setMetadataColumnList(data);
setModifyMetadataColumnList(data);
}, },
error: () => { error: () => {
setLoadingMetadataColumnList(false); setLoadingMetadataColumnList(false);
...@@ -597,21 +597,10 @@ const AssetAction = (props) => { ...@@ -597,21 +597,10 @@ const AssetAction = (props) => {
} }
// const jumpToRelation = (relation) => {
// const timestamp = new Date().getTime();
// if (relation.resourceType==='innerSource'||relation.resourceType==='outerSource') {
// window.open(`/center-home/menu/asset-resource-browse?${AnchorId}=${relation?.dataAssetId}&${AnchorDirId}=${relation?.dirId}&timestamp=${timestamp}`);
// } else if (relation.resourceType==='dataAsset') {
// window.open(`/center-home/menu/asset-browse?${AnchorId}=${relation?.dataAssetId}&${AnchorDirId}=${relation?.dirId}&timestamp=${timestamp}`);
// } else {
// showMessage('warn', '资产目录类型不是资源也不是资产!');
// }
// }
const onOk = async() => { const onOk = async() => {
try { try {
const row = await form?.validateFields(); const row = await form?.validateFields();
await columnForm?.validateFields();
const newElements = [...elements]; const newElements = [...elements];
(newElements||[]).forEach(element => { (newElements||[]).forEach(element => {
...@@ -653,7 +642,7 @@ const AssetAction = (props) => { ...@@ -653,7 +642,7 @@ const AssetAction = (props) => {
let data = action==='add' ? { elements: newElements } : { ...assets, elements: newElements } let data = action==='add' ? { elements: newElements } : { ...assets, elements: newElements }
data = {...data, businessRelations: relationAssetsRef.current?.assets} data = {...data, businessRelations: relationAssetsRef.current?.assets, businessColumns: modifyMetadataColumnList}
dispatch({ dispatch({
type: needSaveAsDraft?'assetmanage.saveAsDraft':'assetmanage.addOrUpdateDataAsset', type: needSaveAsDraft?'assetmanage.saveAsDraft':'assetmanage.addOrUpdateDataAsset',
...@@ -972,67 +961,24 @@ const AssetAction = (props) => { ...@@ -972,67 +961,24 @@ const AssetAction = (props) => {
}, },
}} }}
/> : <React.Fragment> /> : <React.Fragment>
<Space style={{ marginLeft: 'auto' }}> <div className='flex' style={{ justifyContent: 'end' }}>
{ {
!readonly && (reference===AssetManageReference||canEdit) && <React.Fragment> (currentAction !== 'detail') && <Button onClick={async () => {
{ try {
isMetadataEdit ? <React.Fragment> await columnForm?.validateFields()
<Button onClick={() => { setModifyMetadataColumnList(prev => {
setMetadataEdit(false) return [{
}}>
取消 }, ...prev]
</Button> })
<Button onClick={ async () => { } catch (errInfo) {
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> }}>
新增
</Button>
} }
</Space> </div>
<Form form={columnForm}> <Form form={columnForm}>
<Table <Table
......
...@@ -161,21 +161,12 @@ const FC = React.forwardRef(function ({ item, reference, action, onChange }, ref ...@@ -161,21 +161,12 @@ const FC = React.forwardRef(function ({ item, reference, action, onChange }, ref
<Space> <Space>
{ {
action !== 'detail' && <React.Fragment> action !== 'detail' && <React.Fragment>
<Button onClick={onEditClick}>编辑</Button> <Button onClick={onEditClick}>新增</Button>
<Tooltip title={(selectedRows??[]).length===0?'请先选择资产':''}> <Tooltip title={(selectedRows??[]).length===0?'请先选择资产':''}>
<Button disabled={(selectedRows??[]).length===0} onClick={onDeleteClick}>删除</Button> <Button disabled={(selectedRows??[]).length===0} onClick={onDeleteClick}>删除</Button>
</Tooltip> </Tooltip>
</React.Fragment> </React.Fragment>
} }
<Input size="middle"
placeholder='搜索资产名称'
value={keyword}
bordered={true} allowClear
style={{ width: 200 }}
onChange={(e) => {
setPagination({...pagination, pageNum: 1})
setKeyword(e.target.value)
}} />
</Space> </Space>
</div> </div>
<div className='mt-3'> <div className='mt-3'>
......
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