// 档案管理 import { Button, Space, Modal, FormInstance, Flex } from "antd"; import { inject, observer } from "mobx-react"; import { useEffect, useState } from "react"; import { Store } from "antd/lib/form/interface"; import SimpleForm from "@/components/form/simple_form"; import React from "react"; import FolderTwoTone from "@ant-design/icons/FolderOpenTwoTone"; import { folderConfig } from "./archives_conf"; import { Form, Select } from "antd"; import Preview from "./preview"; const { Option } = Select; const ArchivesFolder = (props: Store) => { const { folderStore, acStore } = props; const [isModalOpen, setIsModalOpen] = useState(false); const [isModalOpenArchives, setIsModalOpenArchives] = useState(false); const [projectConfig, setProjectConfig] = useState([]); const formRef = React.useRef(null); const [tagId, setId] = useState(null); const [catList, setCatList] = useState(null); // 仓库列表 const onFinish = (values: any) => { let data = values; if (!tagId) { folderStore.add(data); } else { folderStore.putItem(tagId, data); } setIsModalOpen(false); }; useEffect(() => { folderStore.getlist(); acStore.getlist().then(() => { setCatList(acStore.list); }); }, [folderStore, acStore]); // 添加事件 const addHandler = () => { setProjectConfig(folderConfig); setIsModalOpen(true); }; // 取消 const cancelHandler = () => { setId(null); setIsModalOpen(false); }; const cancelHandlerArch = () => { setIsModalOpenArchives(false); }; // 文件夹点击 const folderHandle = (e) => { folderStore.getAlist(e.identity).then((res) => { setIsModalOpenArchives(true); }) }; const onFinishFailed = () => {}; return (
{Array.from({ length: folderStore.list?.length ?? 0 }, (_, i) => (
folderHandle(folderStore.list[i])} style={{ cursor: "pointer", width: "120px" }} >

{folderStore.list[i].folder_name}

))}
formRef.current?.resetFields()} onOk={() => formRef.current?.submit()} onCancel={cancelHandler} > {}} formName="card_basic" colProps={12} span={6} subBtnName="提交" formDatas={projectConfig} onFinish={onFinish} initialValues={true} onFinishFailed={onFinishFailed} >
); }; export default inject(...["archivesStore", "folderStore", "acStore"])( observer(ArchivesFolder) );