Web: Client: Data Import: ignore migration request if chunkSize was already set

This commit is contained in:
Vladimir Khvan 2024-07-04 13:37:00 +05:00
parent 33a908700a
commit 69920f3b9e
2 changed files with 27 additions and 13 deletions

View File

@ -252,6 +252,7 @@ const SelectFileStep = (props: SelectFileStepProps) => {
setChunk,
startChunk,
setChunkSize,
chunkSize,
);
} else {
setFiles([file.name]);
@ -262,6 +263,7 @@ const SelectFileStep = (props: SelectFileStepProps) => {
setChunk,
startChunk,
setChunkSize,
chunkSize,
);
}

View File

@ -335,6 +335,7 @@ class ImportAccountsStore {
setChunk: React.Dispatch<React.SetStateAction<number>>,
startChunk: number,
setChunkSize: React.Dispatch<React.SetStateAction<number>>,
chunkSize: number,
) => {
let chunk = 0;
try {
@ -344,17 +345,22 @@ class ImportAccountsStore {
);
const requestsDataArray: { formData: FormData; fileName: string }[] = [];
let chunkUploadSize = 0;
if (chunkSize) {
chunkUploadSize = chunkSize;
} else {
const res: { data: { ChunkSize: number } } = await axios.post(
`${location}?Init=${startChunk === 0}`,
);
if (!res.data.ChunkSize) return;
const chunkUploadSize = res.data.ChunkSize;
chunkUploadSize = res.data.ChunkSize;
setChunkSize(chunkUploadSize);
}
if (isAbort!.current) return;
if (!chunkUploadSize) return;
if (isAbort.current) return;
const chunksNumber = files
.map((file) => Math.ceil(file.size / chunkUploadSize))
@ -402,6 +408,7 @@ class ImportAccountsStore {
setChunk: React.Dispatch<React.SetStateAction<number>>,
startChunk: number,
setChunkSize: React.Dispatch<React.SetStateAction<number>>,
chunkSize: number,
) => {
let chunk = 0;
try {
@ -410,15 +417,20 @@ class ImportAccountsStore {
"migrationFileUpload.ashx",
);
let chunkUploadSize = 0;
if (chunkSize) {
chunkUploadSize = chunkSize;
} else {
const res: { data: { ChunkSize: number } } = await axios.post(
`${location}?Init=${startChunk === 0}`,
);
if (!res.data.ChunkSize) return;
const chunkUploadSize = res.data.ChunkSize;
chunkUploadSize = res.data.ChunkSize;
setChunkSize(chunkUploadSize);
}
if (!chunkUploadSize) return;
const requestsDataArray = [];