|
@@ -12,53 +12,45 @@ import { baseURL } from "@/utils/http";
|
|
import filesLookFu from "@/utils/filesLook";
|
|
import filesLookFu from "@/utils/filesLook";
|
|
import A1ORenFile from "./A1ORenFile";
|
|
import A1ORenFile from "./A1ORenFile";
|
|
import A1OMove from "./A1OMove";
|
|
import A1OMove from "./A1OMove";
|
|
-
|
|
|
|
-export const leftTabArr:{
|
|
|
|
- id: number;
|
|
|
|
- type?: string;
|
|
|
|
- name: string;
|
|
|
|
-}[] = [
|
|
|
|
- { id: 1, type: "文件夹", name: "重要文档-已盖章" },
|
|
|
|
- { id: 2, type: "文件夹", name: "重要文档-未盖章" },
|
|
|
|
- { id: 3, type: "文件夹", name: "其他过程文件" },
|
|
|
|
-];
|
|
|
|
-
|
|
|
|
-const towTableArr = [
|
|
|
|
- {
|
|
|
|
- id: 2,
|
|
|
|
- b: "第二级",
|
|
|
|
- fileName: "899845646.pdf",
|
|
|
|
- type: "文件",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- id: 22,
|
|
|
|
- b: "第二级2222",
|
|
|
|
- fileName: "899845646杀杀杀.pdf",
|
|
|
|
- type: "文件",
|
|
|
|
- },
|
|
|
|
-];
|
|
|
|
|
|
+import { A1OFileType } from "@/types";
|
|
|
|
+import { useDispatch, useSelector } from "react-redux";
|
|
|
|
+import { RootState } from "@/store";
|
|
|
|
+import {
|
|
|
|
+ A1_APIOgetList,
|
|
|
|
+ A2_APIOdel,
|
|
|
|
+ A2_APIOdownload,
|
|
|
|
+} from "@/store/action/A1Project";
|
|
|
|
+import { MessageFu } from "@/utils/message";
|
|
|
|
+import A1OupFile from "./A1OupFile";
|
|
|
|
|
|
type Props = {
|
|
type Props = {
|
|
- id: number;
|
|
|
|
|
|
+ projectId: number;
|
|
};
|
|
};
|
|
|
|
|
|
-function A1Outer({ id }: Props) {
|
|
|
|
|
|
+function A1Outer({ projectId }: Props) {
|
|
|
|
+ const dispatch = useDispatch();
|
|
|
|
+
|
|
|
|
+ // 从仓库获取左侧写死列表 和 展示列表
|
|
|
|
+ const { A1OleftArr, A1OtableInfo } = useSelector(
|
|
|
|
+ (state: RootState) => state.A1Project
|
|
|
|
+ );
|
|
|
|
+
|
|
const [fromData, setFromData] = useState({
|
|
const [fromData, setFromData] = useState({
|
|
- id: 1,
|
|
|
|
- aaaa: "",
|
|
|
|
|
|
+ parentId: 1,
|
|
|
|
+ searchKey: "",
|
|
pageNum: 1,
|
|
pageNum: 1,
|
|
pageSize: 10,
|
|
pageSize: 10,
|
|
});
|
|
});
|
|
|
|
|
|
// 文件名的输入
|
|
// 文件名的输入
|
|
- const aaaaTime = useRef(-1);
|
|
|
|
- const aaaaChange = useCallback(
|
|
|
|
|
|
+ const searchKeyTime = useRef(-1);
|
|
|
|
+ const searchKeyChange = useCallback(
|
|
(e: React.ChangeEvent<HTMLInputElement>) => {
|
|
(e: React.ChangeEvent<HTMLInputElement>) => {
|
|
- clearTimeout(aaaaTime.current);
|
|
|
|
- aaaaTime.current = window.setTimeout(() => {
|
|
|
|
|
|
+ clearTimeout(searchKeyTime.current);
|
|
|
|
+ searchKeyTime.current = window.setTimeout(() => {
|
|
setFromData({
|
|
setFromData({
|
|
...fromData,
|
|
...fromData,
|
|
- aaaa: e.target.value,
|
|
|
|
|
|
+ searchKey: e.target.value,
|
|
pageNum: 1,
|
|
pageNum: 1,
|
|
});
|
|
});
|
|
}, 500);
|
|
}, 500);
|
|
@@ -68,37 +60,21 @@ function A1Outer({ id }: Props) {
|
|
|
|
|
|
// 封装发送请求的函数
|
|
// 封装发送请求的函数
|
|
const getListFu = useCallback(() => {
|
|
const getListFu = useCallback(() => {
|
|
- console.log("tab2发送请求", fromData);
|
|
|
|
-
|
|
|
|
|
|
+ dispatch(A1_APIOgetList({ ...fromData, projectId }));
|
|
// 清空选中
|
|
// 清空选中
|
|
setSelectedRowKeys([]);
|
|
setSelectedRowKeys([]);
|
|
-
|
|
|
|
- setTableInfo({
|
|
|
|
- list: [
|
|
|
|
- {
|
|
|
|
- id: 11,
|
|
|
|
- c: "2020-02-02 12:34:56",
|
|
|
|
- type: "文件夹",
|
|
|
|
- fileName: "一个文件夹",
|
|
|
|
- filePath: "xxx",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- id: 2,
|
|
|
|
- b: "阿三大苏打阿三大苏打",
|
|
|
|
- fileName: "899845646.pdf",
|
|
|
|
- type: "文件",
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- total: 200,
|
|
|
|
- });
|
|
|
|
- }, [fromData]);
|
|
|
|
|
|
+ }, [dispatch, fromData, projectId]);
|
|
|
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
getListFu();
|
|
getListFu();
|
|
}, [getListFu]);
|
|
}, [getListFu]);
|
|
|
|
|
|
// 一级的高亮
|
|
// 一级的高亮
|
|
- const [tab1, setTab1] = useState(leftTabArr[0]);
|
|
|
|
|
|
+ const [tab1, setTab1] = useState({} as A1OFileType);
|
|
|
|
+
|
|
|
|
+ useEffect(() => {
|
|
|
|
+ setTab1(A1OleftArr[0]);
|
|
|
|
+ }, [A1OleftArr]);
|
|
|
|
|
|
// 二级的选择
|
|
// 二级的选择
|
|
const [tab2, setTab2] = useState({ id: 0, name: "" });
|
|
const [tab2, setTab2] = useState({ id: 0, name: "" });
|
|
@@ -107,109 +83,116 @@ function A1Outer({ id }: Props) {
|
|
const cutTab1Fu = useCallback(
|
|
const cutTab1Fu = useCallback(
|
|
(id: number, name: string) => {
|
|
(id: number, name: string) => {
|
|
setTab2({ id: 0, name: "" });
|
|
setTab2({ id: 0, name: "" });
|
|
- setTab1({ id, name });
|
|
|
|
|
|
+ setTab1({ id, name } as A1OFileType);
|
|
|
|
|
|
- if (id !== fromData.id) setFromData({ ...fromData, id, pageNum: 1 });
|
|
|
|
|
|
+ if (id !== fromData.parentId)
|
|
|
|
+ setFromData({ ...fromData, parentId: id, pageNum: 1 });
|
|
},
|
|
},
|
|
[fromData]
|
|
[fromData]
|
|
);
|
|
);
|
|
|
|
|
|
- // 点击表格里面的删除
|
|
|
|
- const delById = useCallback((id: number) => {
|
|
|
|
- console.log("---点击删除");
|
|
|
|
- }, []);
|
|
|
|
-
|
|
|
|
- // 点击表格里面的 文件夹 的下载
|
|
|
|
- const downFilesFu = useCallback((id: number) => {
|
|
|
|
- console.log("ssss,点击文件夹的下载");
|
|
|
|
- }, []);
|
|
|
|
-
|
|
|
|
// 点击表格里面的 文件夹 进入 2级
|
|
// 点击表格里面的 文件夹 进入 2级
|
|
const toTowFilesFu = useCallback(
|
|
const toTowFilesFu = useCallback(
|
|
- (id: number, type: string, name: string) => {
|
|
|
|
- if (type === "文件夹") {
|
|
|
|
|
|
+ (id: number, type: 0 | 1, name: string) => {
|
|
|
|
+ if (type === 1) {
|
|
setTab2({ id, name });
|
|
setTab2({ id, name });
|
|
- setFromData({ ...fromData, id, pageNum: 1 });
|
|
|
|
-
|
|
|
|
- // 后面调试接口的时候 删掉
|
|
|
|
- setTimeout(() => {
|
|
|
|
- setTableInfo({ list: towTableArr, total: 200 });
|
|
|
|
- }, 200);
|
|
|
|
|
|
+ setFromData({ ...fromData, parentId: id, pageNum: 1 });
|
|
}
|
|
}
|
|
},
|
|
},
|
|
[fromData]
|
|
[fromData]
|
|
);
|
|
);
|
|
|
|
|
|
- // 表格数据
|
|
|
|
- const [tableInfo, setTableInfo] = useState({
|
|
|
|
- list: [
|
|
|
|
- {
|
|
|
|
- id: 11,
|
|
|
|
- c: "2020-02-02 12:34:56",
|
|
|
|
- type: "文件夹",
|
|
|
|
- fileName: "一个文件夹",
|
|
|
|
- filePath: "xxx",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- id: 2,
|
|
|
|
- b: "阿三大苏打阿三大苏打",
|
|
|
|
- fileName: "899845646.pdf",
|
|
|
|
- type: "文件",
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- total: 2,
|
|
|
|
- });
|
|
|
|
|
|
+ // 页码变化
|
|
|
|
+ const paginationChange = useCallback(
|
|
|
|
+ () => (pageNum: number, pageSize: number) => {
|
|
|
|
+ setFromData({ ...fromData, pageNum, pageSize });
|
|
|
|
+ },
|
|
|
|
+ [fromData]
|
|
|
|
+ );
|
|
|
|
+
|
|
|
|
+ // 关于表格的多选
|
|
|
|
+ const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([]);
|
|
|
|
+
|
|
|
|
+ // 新建文件夹或者 重命名
|
|
|
|
+ const [renFile, setRenFile] = useState({} as A1OFileType);
|
|
|
|
+
|
|
|
|
+ // 点击移动之后出来的数据
|
|
|
|
+ const [moveId, setMoveId] = useState({ id: 0, name: "" });
|
|
|
|
+
|
|
|
|
+ // 点击表格里面的删除
|
|
|
|
+ const delById = useCallback(
|
|
|
|
+ async (id: number) => {
|
|
|
|
+ const res = await A2_APIOdel(id);
|
|
|
|
+ if (res.code === 0) {
|
|
|
|
+ MessageFu.success("删除成功!");
|
|
|
|
+ getListFu();
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ [getListFu]
|
|
|
|
+ );
|
|
|
|
+
|
|
|
|
+ // 点击表格里面的 文件夹 的下载
|
|
|
|
+ const downFilesFu = useCallback((id: number) => {
|
|
|
|
+ console.log("ssss,点击文件夹的下载", id);
|
|
|
|
+ }, []);
|
|
|
|
+
|
|
|
|
+ // 点击批量下载
|
|
|
|
+ const downSelectFu = useCallback(async () => {
|
|
|
|
+ const res = await A2_APIOdownload(selectedRowKeys.join(","));
|
|
|
|
+ if (res.code === 0) {
|
|
|
|
+ console.log("批量下载", res);
|
|
|
|
+ }
|
|
|
|
+ }, [selectedRowKeys]);
|
|
|
|
+
|
|
|
|
+ // 点击-批量上传
|
|
|
|
+ const [upFileId, setUpFileId] = useState(0);
|
|
|
|
|
|
const columns = useMemo(() => {
|
|
const columns = useMemo(() => {
|
|
return [
|
|
return [
|
|
{
|
|
{
|
|
title: "文件名",
|
|
title: "文件名",
|
|
- render: (item: any) =>
|
|
|
|
- item.fileName.length >= 30 ? (
|
|
|
|
- <span style={{ cursor: "pointer" }} title={item.fileName}>
|
|
|
|
|
|
+ render: (item: A1OFileType) =>
|
|
|
|
+ item.name.length >= 30 ? (
|
|
|
|
+ <span style={{ cursor: "pointer" }} title={item.name}>
|
|
<span
|
|
<span
|
|
- onClick={() => toTowFilesFu(item.id, item.type, item.fileName)}
|
|
|
|
- className={classNames(
|
|
|
|
- item.type === "文件夹" ? "A1OfilesTable" : ""
|
|
|
|
- )}
|
|
|
|
|
|
+ onClick={() => toTowFilesFu(item.id, item.type, item.name)}
|
|
|
|
+ className={classNames(item.type === 1 ? "A1OfilesTable" : "")}
|
|
>
|
|
>
|
|
- {item.fileName.substring(0, 30) + "..."}
|
|
|
|
|
|
+ {item.name.substring(0, 30) + "..."}
|
|
</span>
|
|
</span>
|
|
</span>
|
|
</span>
|
|
) : (
|
|
) : (
|
|
<span
|
|
<span
|
|
- onClick={() => toTowFilesFu(item.id, item.type, item.fileName)}
|
|
|
|
- className={classNames(
|
|
|
|
- item.type === "文件夹" ? "A1OfilesTable" : ""
|
|
|
|
- )}
|
|
|
|
|
|
+ onClick={() => toTowFilesFu(item.id, item.type, item.name)}
|
|
|
|
+ className={classNames(item.type === 1 ? "A1OfilesTable" : "")}
|
|
>
|
|
>
|
|
- {item.fileName}
|
|
|
|
|
|
+ {item.name}
|
|
</span>
|
|
</span>
|
|
),
|
|
),
|
|
},
|
|
},
|
|
{
|
|
{
|
|
title: "创建用户",
|
|
title: "创建用户",
|
|
- dataIndex: "b",
|
|
|
|
|
|
+ dataIndex: "creatorName",
|
|
},
|
|
},
|
|
{
|
|
{
|
|
title: "创建时间",
|
|
title: "创建时间",
|
|
- dataIndex: "c",
|
|
|
|
|
|
+ dataIndex: "createTime",
|
|
},
|
|
},
|
|
{
|
|
{
|
|
title: "操作",
|
|
title: "操作",
|
|
- render: (item: any) => (
|
|
|
|
|
|
+ render: (item: A1OFileType) => (
|
|
<>
|
|
<>
|
|
- {filesLookFu(item.fileName) ? (
|
|
|
|
|
|
+ {filesLookFu(item.name) ? (
|
|
<Button
|
|
<Button
|
|
size="small"
|
|
size="small"
|
|
type="text"
|
|
type="text"
|
|
- onClick={() => filesLookFu(item.fileName, item.filePath)}
|
|
|
|
|
|
+ onClick={() => filesLookFu(item.name, item.filePath)}
|
|
>
|
|
>
|
|
查看
|
|
查看
|
|
</Button>
|
|
</Button>
|
|
) : null}
|
|
) : null}
|
|
|
|
|
|
- {item.type === "文件夹" ? (
|
|
|
|
|
|
+ {item.type === 1 ? (
|
|
<Button
|
|
<Button
|
|
size="small"
|
|
size="small"
|
|
type="text"
|
|
type="text"
|
|
@@ -220,7 +203,7 @@ function A1Outer({ id }: Props) {
|
|
) : (
|
|
) : (
|
|
<a
|
|
<a
|
|
href={baseURL + item.filePath}
|
|
href={baseURL + item.filePath}
|
|
- download={item.fileName}
|
|
|
|
|
|
+ download={item.name}
|
|
target="_blank"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
rel="noreferrer"
|
|
>
|
|
>
|
|
@@ -230,24 +213,14 @@ function A1Outer({ id }: Props) {
|
|
</a>
|
|
</a>
|
|
)}
|
|
)}
|
|
|
|
|
|
- <Button
|
|
|
|
- size="small"
|
|
|
|
- type="text"
|
|
|
|
- onClick={() =>
|
|
|
|
- setRenFile({
|
|
|
|
- id: item.id,
|
|
|
|
- fileName: item.fileName,
|
|
|
|
- type: item.type,
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
- >
|
|
|
|
|
|
+ <Button size="small" type="text" onClick={() => setRenFile(item)}>
|
|
重命名
|
|
重命名
|
|
</Button>
|
|
</Button>
|
|
- {item.type === "文件夹" ? null : (
|
|
|
|
|
|
+ {item.type === 1 ? null : (
|
|
<Button
|
|
<Button
|
|
size="small"
|
|
size="small"
|
|
type="text"
|
|
type="text"
|
|
- onClick={() => setMoveId({ id: item.id, name: item.fileName })}
|
|
|
|
|
|
+ onClick={() => setMoveId({ id: item.id, name: item.name })}
|
|
>
|
|
>
|
|
移动
|
|
移动
|
|
</Button>
|
|
</Button>
|
|
@@ -270,26 +243,10 @@ function A1Outer({ id }: Props) {
|
|
];
|
|
];
|
|
}, [delById, downFilesFu, toTowFilesFu]);
|
|
}, [delById, downFilesFu, toTowFilesFu]);
|
|
|
|
|
|
- // 页码变化
|
|
|
|
- const paginationChange = useCallback(
|
|
|
|
- () => (pageNum: number, pageSize: number) => {
|
|
|
|
- setFromData({ ...fromData, pageNum, pageSize });
|
|
|
|
- },
|
|
|
|
- [fromData]
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
- // 关于表格的多选
|
|
|
|
- const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([]);
|
|
|
|
-
|
|
|
|
- // 新建文件夹或者 重命名
|
|
|
|
- const [renFile, setRenFile] = useState({
|
|
|
|
- id: 0,
|
|
|
|
- fileName: "",
|
|
|
|
- type: "",
|
|
|
|
- });
|
|
|
|
-
|
|
|
|
- // 点击移动之后出来的数据
|
|
|
|
- const [moveId, setMoveId] = useState({ id: 0, name: "" });
|
|
|
|
|
|
+ // 当前位置
|
|
|
|
+ const nowLoc = useMemo(() => {
|
|
|
|
+ return tab1.name + (tab2.id ? ` / ${tab2.name}` : "");
|
|
|
|
+ }, [tab1.name, tab2.id, tab2.name]);
|
|
|
|
|
|
return (
|
|
return (
|
|
<div className={styles.A1Outer}>
|
|
<div className={styles.A1Outer}>
|
|
@@ -301,13 +258,10 @@ function A1Outer({ id }: Props) {
|
|
style={{ width: 300 }}
|
|
style={{ width: 300 }}
|
|
placeholder="请输入文件名称,最多30字"
|
|
placeholder="请输入文件名称,最多30字"
|
|
allowClear
|
|
allowClear
|
|
- onChange={(e) => aaaaChange(e)}
|
|
|
|
|
|
+ onChange={(e) => searchKeyChange(e)}
|
|
/>
|
|
/>
|
|
  
|
|
  
|
|
- <span className="A1OnowLoc">
|
|
|
|
- <span>当前位置:{tab1.name}</span>
|
|
|
|
- {tab2.id ? <> / {tab2.name}</> : null}
|
|
|
|
- </span>
|
|
|
|
|
|
+ <span className="A1OnowLoc">当前位置:{nowLoc}</span>
|
|
</div>
|
|
</div>
|
|
<div className="A1Otop2">
|
|
<div className="A1Otop2">
|
|
{tab2.id ? null : (
|
|
{tab2.id ? null : (
|
|
@@ -315,7 +269,12 @@ function A1Outer({ id }: Props) {
|
|
<Button
|
|
<Button
|
|
type="primary"
|
|
type="primary"
|
|
onClick={() =>
|
|
onClick={() =>
|
|
- setRenFile({ id: -1, fileName: "", type: "文件夹" })
|
|
|
|
|
|
+ setRenFile({
|
|
|
|
+ id: -1,
|
|
|
|
+ name: "",
|
|
|
|
+ type: 1,
|
|
|
|
+ parentId: tab1.id,
|
|
|
|
+ } as A1OFileType)
|
|
}
|
|
}
|
|
>
|
|
>
|
|
新建文件夹
|
|
新建文件夹
|
|
@@ -323,18 +282,28 @@ function A1Outer({ id }: Props) {
|
|
 
|
|
 
|
|
</>
|
|
</>
|
|
)}
|
|
)}
|
|
- <Button type="primary" disabled={selectedRowKeys.length <= 0}>
|
|
|
|
|
|
+ <Button
|
|
|
|
+ type="primary"
|
|
|
|
+ onClick={downSelectFu}
|
|
|
|
+ disabled={selectedRowKeys.length <= 0}
|
|
|
|
+ >
|
|
批量下载
|
|
批量下载
|
|
</Button>
|
|
</Button>
|
|
 
|
|
 
|
|
- <Button type="primary">批量上传</Button> 
|
|
|
|
|
|
+ <Button
|
|
|
|
+ type="primary"
|
|
|
|
+ onClick={() => setUpFileId(tab2.id ? tab2.id : tab1.id)}
|
|
|
|
+ >
|
|
|
|
+ 批量上传
|
|
|
|
+ </Button>
|
|
|
|
+  
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{/* 表格主体 */}
|
|
{/* 表格主体 */}
|
|
<div className="A1OtableBox">
|
|
<div className="A1OtableBox">
|
|
<div className="A1OtableBox1">
|
|
<div className="A1OtableBox1">
|
|
<div className="A1OtableBox1_1">目录</div>
|
|
<div className="A1OtableBox1_1">目录</div>
|
|
- {leftTabArr.map((v) => (
|
|
|
|
|
|
+ {A1OleftArr.map((v) => (
|
|
<div
|
|
<div
|
|
onClick={() => cutTab1Fu(v.id, v.name)}
|
|
onClick={() => cutTab1Fu(v.id, v.name)}
|
|
className={classNames(
|
|
className={classNames(
|
|
@@ -353,12 +322,11 @@ function A1Outer({ id }: Props) {
|
|
type: "checkbox",
|
|
type: "checkbox",
|
|
selectedRowKeys,
|
|
selectedRowKeys,
|
|
onChange: (selectedRowKeys: React.Key[]) => {
|
|
onChange: (selectedRowKeys: React.Key[]) => {
|
|
- console.log("选中的ids", selectedRowKeys);
|
|
|
|
setSelectedRowKeys(selectedRowKeys);
|
|
setSelectedRowKeys(selectedRowKeys);
|
|
},
|
|
},
|
|
}}
|
|
}}
|
|
scroll={{ y: 560 }}
|
|
scroll={{ y: 560 }}
|
|
- dataSource={tableInfo.list}
|
|
|
|
|
|
+ dataSource={A1OtableInfo.list}
|
|
columns={columns}
|
|
columns={columns}
|
|
rowKey="id"
|
|
rowKey="id"
|
|
pagination={{
|
|
pagination={{
|
|
@@ -367,7 +335,7 @@ function A1Outer({ id }: Props) {
|
|
showSizeChanger: true,
|
|
showSizeChanger: true,
|
|
current: fromData.pageNum,
|
|
current: fromData.pageNum,
|
|
pageSize: fromData.pageSize,
|
|
pageSize: fromData.pageSize,
|
|
- total: tableInfo.total,
|
|
|
|
|
|
+ total: A1OtableInfo.total,
|
|
onChange: paginationChange(),
|
|
onChange: paginationChange(),
|
|
}}
|
|
}}
|
|
/>
|
|
/>
|
|
@@ -376,8 +344,13 @@ function A1Outer({ id }: Props) {
|
|
{/* 点击 新建 文件夹 或者 重命名 */}
|
|
{/* 点击 新建 文件夹 或者 重命名 */}
|
|
{renFile.id ? (
|
|
{renFile.id ? (
|
|
<A1ORenFile
|
|
<A1ORenFile
|
|
- closeFu={() => setRenFile({ id: 0, fileName: "", type: "" })}
|
|
|
|
|
|
+ addFu={() => setFromData({ ...fromData, searchKey: "", pageNum: 1 })}
|
|
|
|
+ editFu={() => getListFu()}
|
|
|
|
+ closeFu={() =>
|
|
|
|
+ setRenFile({ id: 0, name: "", type: 0 } as A1OFileType)
|
|
|
|
+ }
|
|
fileInfo={renFile}
|
|
fileInfo={renFile}
|
|
|
|
+ projectId={projectId}
|
|
/>
|
|
/>
|
|
) : null}
|
|
) : null}
|
|
|
|
|
|
@@ -390,6 +363,16 @@ function A1Outer({ id }: Props) {
|
|
closeFu={() => setMoveId({ id: 0, name: "" })}
|
|
closeFu={() => setMoveId({ id: 0, name: "" })}
|
|
/>
|
|
/>
|
|
) : null}
|
|
) : null}
|
|
|
|
+
|
|
|
|
+ {/* 点击批量上传 */}
|
|
|
|
+ {upFileId ? (
|
|
|
|
+ <A1OupFile
|
|
|
|
+ myUrl={baseURL + "cms/item/upload"}
|
|
|
|
+ fromData={{ parentId: upFileId, projectId }}
|
|
|
|
+ nowLoc={nowLoc}
|
|
|
|
+ closeFu={() => setUpFileId(0)}
|
|
|
|
+ />
|
|
|
|
+ ) : null}
|
|
</div>
|
|
</div>
|
|
);
|
|
);
|
|
}
|
|
}
|