diff --git a/frontend/src/pages/admin/versions/[id].vue b/frontend/src/pages/admin/versions/[id].vue index 80b7d9d..ad20cd6 100644 --- a/frontend/src/pages/admin/versions/[id].vue +++ b/frontend/src/pages/admin/versions/[id].vue @@ -101,6 +101,18 @@ async function fetchVersion() { formData.value.custom_download_url = ver.custom_download_url || '' formData.value.changelog = ver.changelog || '' formData.value.entry_file = ver.entry_file || '' + + // 加载已有文件信息 + if (ver.file_path && ver.file_size) { + uploadedData.value = { + file_path: ver.file_path, + file_size: ver.file_size, + file_hash: ver.file_hash || '', + files: ver.files || [], + } + // 保存原始数据 + originalUploadedData.value = { ...uploadedData.value } + } } } catch (error) { @@ -135,12 +147,18 @@ function handleFileSelect(event: Event) { } } +// 保存原始文件数据,用于取消重新上传时恢复 +const originalUploadedData = ref(null) + function removeFile() { formData.value.file = null - uploadedData.value = null if (fileInputRef.value) { fileInputRef.value.value = '' } + // 如果有原始文件数据,恢复显示 + if (originalUploadedData.value) { + uploadedData.value = originalUploadedData.value + } } async function uploadZipFile() { @@ -297,7 +315,34 @@ onMounted(() => { class="hidden" @change="handleFileSelect" > -
+ +
+
+
+ +
+

+ {{ t('admin.versions.createForm.fileUploaded') }} +

+

+ {{ formatFileSize(uploadedData.file_size) }} +

+
+
+ + + {{ t('admin.versions.createForm.reupload') }} + +
+
+
+

{{ t('admin.versions.createForm.fileHash') }}: {{ uploadedData.file_hash.substring(0, 16) }}...

+

{{ t('admin.versions.createForm.containsFiles', { count: uploadedData.files.length }) }}

+
+
+
+ +

{{ t('admin.versions.createForm.dragOrClick') }} @@ -307,7 +352,8 @@ onMounted(() => { {{ t('admin.versions.createForm.selectFile') }}

-
+ +
@@ -322,7 +368,6 @@ onMounted(() => {
{
-
+
{{ t('admin.versions.createForm.fileUploaded') }} diff --git a/frontend/src/plugins/i18n/en.json b/frontend/src/plugins/i18n/en.json index 504e0e3..735584e 100644 --- a/frontend/src/plugins/i18n/en.json +++ b/frontend/src/plugins/i18n/en.json @@ -1504,6 +1504,7 @@ "customDownloadUrlPlaceholder": "e.g., https://your-cdn.com/download/app.zip", "previewCustomDownloadUrl": "Download URL", "useDefault": "Use Default", + "reupload": "Re-upload", "changelogPreview": "Changelog Preview", "noChangelog": "No changelog", "notUploaded": "Not uploaded", diff --git a/frontend/src/plugins/i18n/zh.json b/frontend/src/plugins/i18n/zh.json index e474ac5..394eebc 100644 --- a/frontend/src/plugins/i18n/zh.json +++ b/frontend/src/plugins/i18n/zh.json @@ -1482,6 +1482,7 @@ "customDownloadUrlPlaceholder": "例如: https://your-cdn.com/download/app.zip", "previewCustomDownloadUrl": "下载地址", "useDefault": "使用默认地址", + "reupload": "重新上传", "changelogPreview": "更新日志预览", "noChangelog": "暂无更新日志", "notUploaded": "未上传",