Commit 829ec90b authored by chenshouchao's avatar chenshouchao

feat: 删除文件弹窗重构

parent 50dbbf5f
import React, { useImperativeHandle, useMemo } from "react"; import React, { useMemo } from "react";
import MyDialog from "@/components/mui/MyDialog"; import MyDialog from "@/components/mui/Dialog";
import { useMessage } from "@/components/MySnackbar"; import { useMessage } from "@/components/MySnackbar";
import { getDataFileDelPackage } from "@/api/project_api"; import { getDataFileDelPackage } from "@/api/project_api";
import useMyRequest from "@/hooks/useMyRequest"; import useMyRequest from "@/hooks/useMyRequest";
const DeleteDialog = (props: any) => { type IDeleteFileProps = {
const { path, projectId, currentOperateFile, selectIds, refresh, showList } = deleteDialogOpen: any;
props; setDeleteDialogOpen: any;
const Message = useMessage(); path: string;
let deleteFileDialogRef: any = React.createRef(); projectId: string;
const showDialog = () => { refresh: any;
deleteFileDialogRef.current.handleClickOpen(); selectIds: Array<any>;
}; currentOperateFile: any;
showList: Array<any>;
};
useImperativeHandle(props.onRef, () => { const DeleteDialog = (props: IDeleteFileProps) => {
return { const {
showDialog: showDialog, deleteDialogOpen,
}; setDeleteDialogOpen,
}); path,
projectId,
currentOperateFile,
selectIds,
refresh,
showList,
} = props;
const Message = useMessage();
const { run: getDataFileDelPackageRun } = useMyRequest( const { run: getDataFileDelPackageRun } = useMyRequest(
getDataFileDelPackage, getDataFileDelPackage,
{ {
onSuccess: (res: any) => { onSuccess: (res: any) => {
Message.success("删除成功!"); Message.success("删除成功!");
deleteFileDialogRef?.current?.handleClose(); setDeleteDialogOpen(false);
refresh(); refresh();
}, },
} }
...@@ -73,14 +82,13 @@ const DeleteDialog = (props: any) => { ...@@ -73,14 +82,13 @@ const DeleteDialog = (props: any) => {
path: deletePath, path: deletePath,
}); });
}; };
const submitloading = false;
return ( return (
<MyDialog <MyDialog
handleSubmit={handleSubmit}
onRef={deleteFileDialogRef}
title="提示" title="提示"
submitloading={submitloading} open={deleteDialogOpen}
onClose={() => setDeleteDialogOpen(false)}
onConfirm={handleSubmit}
> >
{currentOperateFile {currentOperateFile
? "确认删除该数据吗?" ? "确认删除该数据吗?"
......
...@@ -79,7 +79,10 @@ const ProjectData = observer(() => { ...@@ -79,7 +79,10 @@ const ProjectData = observer(() => {
const [showCheckBox, setShowCheckBox] = useState<boolean>(true); const [showCheckBox, setShowCheckBox] = useState<boolean>(true);
// 文件服务器指向 // 文件服务器指向
const fileServerEndPoint = localStorage.getItem("fileServerEndPoint"); const fileServerEndPoint = localStorage.getItem("fileServerEndPoint");
// 文件移动弹窗控制
const [moveDialogOpen, setMoveDialogOpen] = useState(false); const [moveDialogOpen, setMoveDialogOpen] = useState(false);
// 文件删除弹窗控制
const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);
useEffect(() => { useEffect(() => {
const locationInfo: any = location?.state; const locationInfo: any = location?.state;
...@@ -453,10 +456,9 @@ const ProjectData = observer(() => { ...@@ -453,10 +456,9 @@ const ProjectData = observer(() => {
}; };
// 删除弹窗 // 删除弹窗
let deleteDialogRef: any = React.createRef();
const hanleShowDeleteDialogRef = (item: any) => { const hanleShowDeleteDialogRef = (item: any) => {
setCurrentOperateFile(item); setCurrentOperateFile(item);
deleteDialogRef.current.showDialog(); setDeleteDialogOpen(true);
}; };
// 批量移动 // 批量移动
...@@ -468,7 +470,7 @@ const ProjectData = observer(() => { ...@@ -468,7 +470,7 @@ const ProjectData = observer(() => {
// 批量删除 // 批量删除
const handleBatchDelete = () => { const handleBatchDelete = () => {
setCurrentOperateFile(null); setCurrentOperateFile(null);
deleteDialogRef.current.showDialog(); setDeleteDialogOpen(true);
}; };
// 前端展示的文件路径 // 前端展示的文件路径
...@@ -671,15 +673,18 @@ const ProjectData = observer(() => { ...@@ -671,15 +673,18 @@ const ProjectData = observer(() => {
</Button> </Button>
</div> </div>
)} )}
<DeleteDialog {deleteDialogOpen && (
onRef={deleteDialogRef} <DeleteDialog
path={path} deleteDialogOpen={deleteDialogOpen}
projectId={projectId} setDeleteDialogOpen={setDeleteDialogOpen}
currentOperateFile={currentOperateFile} path={path}
selectIds={selectIds} projectId={projectId as string}
refresh={handleRefresh} currentOperateFile={currentOperateFile}
showList={showList} selectIds={selectIds}
></DeleteDialog> refresh={handleRefresh}
showList={showList}
></DeleteDialog>
)}
<UpLoaderFile <UpLoaderFile
onRef={UpLoaderFileRef} onRef={UpLoaderFileRef}
path={path} path={path}
...@@ -687,7 +692,6 @@ const ProjectData = observer(() => { ...@@ -687,7 +692,6 @@ const ProjectData = observer(() => {
></UpLoaderFile> ></UpLoaderFile>
{moveDialogOpen && ( {moveDialogOpen && (
<MoveFile <MoveFile
// onRef={moveFileRef}
moveDialogOpen={moveDialogOpen} moveDialogOpen={moveDialogOpen}
setMoveDialogOpen={setMoveDialogOpen} setMoveDialogOpen={setMoveDialogOpen}
path={path} path={path}
......
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