Commit af3811b9 by zhaochengxiang

资产管理页面调整

parent 2789022a
import React,{ useState, useEffect, useRef } from "react"; import React,{ useState, useEffect, useRef } from "react";
import { Button, Pagination, Space, Modal, Input, Table, Tooltip, Checkbox, Typography } from "antd"; import { Button, Pagination, Space, Modal, Input, Table, Tooltip, Checkbox, Typography, Dropdown, Menu } from "antd";
import classNames from 'classnames'; import classNames from 'classnames';
import SmoothScroll from 'smooth-scroll'; import SmoothScroll from 'smooth-scroll';
import { Resizable } from 'react-resizable'; import { Resizable } from 'react-resizable';
import ResizeObserver from 'rc-resize-observer';
import FilterElementModal from './FilterElementModal'; import FilterElementModal from './FilterElementModal';
import AssetMount from '../../AssetRecycle/Component/AssetMount'; import AssetMount from '../../AssetRecycle/Component/AssetMount';
...@@ -72,6 +73,7 @@ const AssetTable = (props) => { ...@@ -72,6 +73,7 @@ const AssetTable = (props) => {
const [ batchCatalogChange, setBatchCatalogChange ] = useState(false); const [ batchCatalogChange, setBatchCatalogChange ] = useState(false);
const [ fullScreen, setFullScreen ] = useState(false); const [ fullScreen, setFullScreen ] = useState(false);
const [ recursive, setRecursive ] = useState(true); const [ recursive, setRecursive ] = useState(true);
const [ compact, setCompact ] = useState(false);
const [ modal, contextHolder ] = Modal.useModal(); const [ modal, contextHolder ] = Modal.useModal();
const anchorId = getQueryParam(AnchorId, props.location.search); const anchorId = getQueryParam(AnchorId, props.location.search);
...@@ -459,6 +461,44 @@ const AssetTable = (props) => { ...@@ -459,6 +461,44 @@ const AssetTable = (props) => {
setColumns(nextColumns); setColumns(nextColumns);
}; };
const moreMenu = (
<Menu>
{
(reference===AssetManageReference) && <Menu.Item>
<div className='text-center' onClick={importAsset}>
导入
</div>
</Menu.Item>
}
{
(reference===AssetManageReference || reference===AssetRecycleReference) && <React.Fragment>
<Menu.Item disabled={(checkedKeys||[]).length===0}>
<div className='text-center' onClick={exportAsset}>
导出
</div>
</Menu.Item>
<Menu.Item disabled={(checkedKeys||[]).length===0}>
<div className='text-center' onClick={onBatchCatalogChangeBtnClick}>
{(reference===AssetRecycleReference)?'挂载':'变更目录'}
</div>
</Menu.Item>
<Menu.Item disabled={(checkedKeys||[]).length===0}>
<div className='text-center' onClick={deleteAssets}>
删除
</div>
</Menu.Item>
</React.Fragment>
}
<Menu.Item>
<div className='text-center' onClick={onFilterElementClick}>
要素设置
</div>
</Menu.Item>
</Menu>
);
const rowSelection = { const rowSelection = {
selectedRowKeys: checkedKeys, selectedRowKeys: checkedKeys,
onChange: onSelectChange, onChange: onSelectChange,
...@@ -495,6 +535,10 @@ const AssetTable = (props) => { ...@@ -495,6 +535,10 @@ const AssetTable = (props) => {
(reference===AssetManageReference) && <Button onClick={addAsset}>新增</Button> (reference===AssetManageReference) && <Button onClick={addAsset}>新增</Button>
} }
{ {
compact ? <Dropdown overlay={moreMenu} placement="bottomCenter">
<Button>其他操作</Button>
</Dropdown> : <React.Fragment>
{
(reference===AssetManageReference) && <Button onClick={importAsset}>导入</Button> (reference===AssetManageReference) && <Button onClick={importAsset}>导入</Button>
} }
{ {
...@@ -511,6 +555,8 @@ const AssetTable = (props) => { ...@@ -511,6 +555,8 @@ const AssetTable = (props) => {
</React.Fragment> </React.Fragment>
} }
<Button onClick={onFilterElementClick}>要素设置</Button> <Button onClick={onFilterElementClick}>要素设置</Button>
</React.Fragment>
}
<Checkbox onChange={onRecursiveChange} checked={!recursive}>仅显示当前目录</Checkbox> <Checkbox onChange={onRecursiveChange} checked={!recursive}>仅显示当前目录</Checkbox>
</Space> </Space>
<Space> <Space>
...@@ -529,6 +575,15 @@ const AssetTable = (props) => { ...@@ -529,6 +575,15 @@ const AssetTable = (props) => {
<div <div
className='px-common' className='px-common'
> >
<ResizeObserver
onResize={({ width }) => {
if (width < 960 && !compact) {
setCompact(true);
} else if (width >= 960 && compact) {
setCompact(false);
}
}}
>
<Table <Table
rowSelection={rowSelection} rowSelection={rowSelection}
components={{ components={{
...@@ -574,6 +629,7 @@ const AssetTable = (props) => { ...@@ -574,6 +629,7 @@ const AssetTable = (props) => {
size='default' size='default'
scroll={{ x: 1000, y: scrollY }} scroll={{ x: 1000, y: scrollY }}
/> />
</ResizeObserver>
</div> </div>
<Pagination <Pagination
size="small" size="small"
......
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