import React, {useEffect, useState} from 'react'; import PropTypes from 'prop-types'; import {Button, Divider, Drawer, Form, Input, message, Radio, Space, Upload} from "antd"; import {UploadOutlined} from "@ant-design/icons"; import creatMessageCommonAxios from "../../../http/CreatMessageCommonAxios"; import ImportHistoryTable from "./ImportHistoryTable"; const ImportDataDrawer = props => { const {open, onClose, fetchWorkloadData} = props; const [form] = Form.useForm(); const [messageApi, contextHolder] = message.useMessage(); const commonAxios = creatMessageCommonAxios(messageApi); const [drawerParam, setDrawerParam] = useState({ open: false }); const [fileList, setFileList] = useState([]); useEffect(() => { console.log('open drawer', open) setDrawerParam(prevDrawerParam => ({...prevDrawerParam, open: open})) }, [open]); const onReset = () => { form.resetFields(); setFileList([]); } const onSubmit = () => { form.submit(); } const onFinish = (values) => { const formData = new FormData(); formData.append('file', fileList[0]); formData.append('startYear', values.startYear); formData.append('endYear', parseInt(values.startYear) + 1); formData.append('semester', values.term); commonAxios.post('/api/v1/workload/import', formData, { headers: { 'Content-Type': 'multipart/form-data' } }).then((res) => { if (res.data.data && res.data.success === true && res.data.data.uploadStatus === '03') { messageApi.success("导入成功"); onReset(); onClose(); fetchWorkloadData(); } else { messageApi.warning('导入失败,请检查文件格式或数据'); onClose(); } }) }; return (
{contextHolder} } title={'导入数据'} placement={'right'} onClose={onClose} >
第一学期 第二学期 { setFileList([file]); return false; }} onRemove={() => setFileList([])} multiple={false} fileList={fileList} >
); }; ImportDataDrawer.propTypes = { open: PropTypes.bool, onClose: PropTypes.func }; export default ImportDataDrawer;