Merged PR 829: 音声ファイルバックアップポップアップ修正
## 概要 [Task3882: 音声ファイルバックアップポップアップ修正](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3882) - 音声ファイルバックアップ中にファイル削除された場合の処理を追加しました。 - ダウンロードで対象ファイルが削除されていた場合に特別なエラーとなるようにしています。 - タスクバックアップで対象ファイルが削除されていた場合でも成功となるようにしています。 ## レビューポイント - 対応するエラーは適切でしょうか? ## UIの変更 - [Task3882](https://ndstokyo.sharepoint.com/:i:/r/sites/Piranha/Shared%20Documents/General/OMDS/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88/Task3882/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%89%8A%E9%99%A4%E6%B8%88%E3%81%BF.png?csf=1&web=1&e=1BKVh8) ## クエリの変更 - なし ## 動作確認状況 - ローカルで確認 - 行った修正がデグレを発生させていないことを確認できるか - 具体的にどのような確認をしたか - ダウンロード実行中にファイル削除 - backupAPIからタスク不在エラーを返却して成功するか確認
This commit is contained in:
parent
5f4a05044b
commit
66c643677d
@ -565,10 +565,21 @@ export const backupTasksAsync = createAsyncThunk<
|
||||
a.click();
|
||||
a.parentNode?.removeChild(a);
|
||||
|
||||
// eslint-disable-next-line no-await-in-loop
|
||||
await tasksApi.backup(task.audioFileId, {
|
||||
headers: { authorization: `Bearer ${accessToken}` },
|
||||
});
|
||||
// バックアップ済みに更新
|
||||
try {
|
||||
// eslint-disable-next-line no-await-in-loop
|
||||
await tasksApi.backup(task.audioFileId, {
|
||||
headers: { authorization: `Bearer ${accessToken}` },
|
||||
});
|
||||
} catch (e) {
|
||||
// e ⇒ errorObjectに変換
|
||||
const error = createErrorObject(e);
|
||||
if (error.code === "E010603") {
|
||||
// タスクが削除済みの場合は成功扱いとする
|
||||
} else {
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -580,8 +591,22 @@ export const backupTasksAsync = createAsyncThunk<
|
||||
);
|
||||
return {};
|
||||
} catch (e) {
|
||||
// e ⇒ errorObjectに変換"
|
||||
// e ⇒ errorObjectに変換
|
||||
const error = createErrorObject(e);
|
||||
if (error.code === "E010603") {
|
||||
// 存在しない音声ファイルをダウンロードしようとした場合
|
||||
thunkApi.dispatch(
|
||||
openSnackbar({
|
||||
level: "error",
|
||||
message: getTranslationID(
|
||||
"dictationPage.message.fileAlreadyDeletedError"
|
||||
),
|
||||
})
|
||||
);
|
||||
|
||||
return thunkApi.rejectWithValue({ error });
|
||||
}
|
||||
|
||||
thunkApi.dispatch(
|
||||
openSnackbar({
|
||||
level: "error",
|
||||
|
||||
@ -636,4 +636,4 @@
|
||||
"lowerLayerId": "(de)Lower Layer ID"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -636,4 +636,4 @@
|
||||
"lowerLayerId": "Lower Layer ID"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -636,4 +636,4 @@
|
||||
"lowerLayerId": "(es)Lower Layer ID"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -636,4 +636,4 @@
|
||||
"lowerLayerId": "(fr)Lower Layer ID"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user