Add i18n support for batch delete jobs messages

This commit is contained in:
jingrow 2025-11-14 12:28:27 +08:00
parent c57ce68d2b
commit be79e5e46d
4 changed files with 27 additions and 2 deletions

View File

@ -400,6 +400,9 @@
"No jobs found": "暂无任务",
"Job stopped successfully": "任务已停止",
"Job deleted successfully": "任务已删除",
"Deleted {count} jobs successfully": "成功删除 {count} 个任务",
"Partially deleted: {success} succeeded, {failed} failed": "部分删除成功:{success} 个成功,{failed} 个失败",
"Delete failed: {count} jobs failed to delete": "删除失败:{count} 个任务均删除失败",
"Failed to stop job": "停止任务失败",
"Failed to delete job": "删除任务失败",
"Are you sure you want to stop this job?": "确定要停止这个任务吗?",

View File

@ -37,6 +37,7 @@ export interface LocalJobDetailResponse {
export interface BatchDeleteResponse {
success: boolean
message: string
message_params?: Record<string, number>
success_count: number
failed_jobs: string[]
}

View File

@ -232,7 +232,15 @@ async function handleDeleteSelected() {
const result = await batchDeleteLocalJobs(selectedJobs.value)
if (result.success) {
message.success(result.message)
// 使
let translatedMessage = t(result.message)
if (result.message_params) {
//
Object.entries(result.message_params).forEach(([key, value]) => {
translatedMessage = translatedMessage.replace(`{${key}}`, String(value))
})
}
message.success(translatedMessage)
selectedJobs.value = []
await fetchJobs()
} else {

View File

@ -266,9 +266,22 @@ async def batch_delete_local_jobs(request: Request, request_data: Dict[str, Any]
except Exception:
failed_jobs.append(job_id)
# 根据结果返回翻译键和参数
failed_count = len(failed_jobs)
if failed_count == 0:
message_key = "Deleted {count} jobs successfully"
message_params = {"count": success_count}
elif success_count > 0:
message_key = "Partially deleted: {success} succeeded, {failed} failed"
message_params = {"success": success_count, "failed": failed_count}
else:
message_key = "Delete failed: {count} jobs failed to delete"
message_params = {"count": failed_count}
return {
"success": True,
"message": f"Deleted {success_count} jobs successfully",
"message": message_key,
"message_params": message_params,
"success_count": success_count,
"failed_jobs": failed_jobs
}