/*
|
* @Company: hugeInfo
|
* @Author: ldh
|
* @Date: 2022-07-06 14:54:25
|
* @LastEditTime: 2022-11-10 18:03:42
|
* @LastEditors: ldh
|
* @Version: 1.0.0
|
* @Description: 公共附件右侧抽屉查看
|
*/
|
import React, { useEffect, useState } from 'react';
|
import PropTypes from 'prop-types';
|
import { Typography } from 'antd';
|
import { PaperClipOutlined } from '@ant-design/icons';
|
import MyDrawer from '../MyDrawer';
|
import FilesTable from '../FilesTable';
|
|
/**
|
* filesData:[{id:""}], // 对象数组格式
|
*/
|
const FilesDrawer = ({ filesData = [], title = '附件信息', name }) => {
|
const [filesDrawerVisible, setFilesDrawerVisible] = useState(false);
|
|
useEffect(() => {
|
return () => {
|
setFilesDrawerVisible(false);
|
};
|
}, []);
|
|
return filesData?.length > 0 ? (
|
<>
|
<Typography.Link onClick={() => setFilesDrawerVisible(true)}>
|
{!!name ? (
|
name
|
) : (
|
<>
|
<PaperClipOutlined style={{ marginRight: '4px' }} />
|
<span className="public-underline">查看附件</span>
|
</>
|
)}
|
</Typography.Link>
|
{!!filesDrawerVisible && (
|
<MyDrawer
|
title={title}
|
visible={filesDrawerVisible}
|
width={400}
|
style={{ position: 'absolute' }}
|
onClose={() => setFilesDrawerVisible(false)}
|
>
|
<FilesTable isCheck={true} isList={true} data={filesData} />
|
</MyDrawer>
|
)}
|
</>
|
) : (
|
'-'
|
);
|
};
|
|
FilesDrawer.propTypes = {
|
filesData: PropTypes.array,
|
title: PropTypes.string,
|
name: PropTypes.any,
|
};
|
|
export default FilesDrawer;
|