From bdd79e3302ae444a882be27209dc4ed1172f2cd5 Mon Sep 17 00:00:00 2001
From: shen <>
Date: Mon, 8 Jun 2026 21:16:09 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E7=82=B9=E5=87=BB=E4=BA=8C=E7=BB=B4?=
=?UTF-8?q?=E7=A0=81=E7=BC=A9=E7=95=A5=E5=9B=BE=E5=8F=AF=E6=94=BE=E5=A4=A7?=
=?UTF-8?q?=E6=9F=A5=E7=9C=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
frontend/src/views/HistoryView.vue | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/frontend/src/views/HistoryView.vue b/frontend/src/views/HistoryView.vue
index d7e85e6..589640b 100644
--- a/frontend/src/views/HistoryView.vue
+++ b/frontend/src/views/HistoryView.vue
@@ -56,7 +56,7 @@
+ @click="showQrPreview(task)">
下载 IPA
-
@@ -75,6 +75,22 @@
+
+
+
+
+
![QR Code]()
+
+
App: {{ qrPreview.app_name }}
+
Scheme: {{ qrPreview.scheme_name }}
+
类型: {{ qrPreview.build_type }}
+
+
+
+
@@ -163,8 +179,13 @@ const logTask = ref(null)
const logLines = ref([])
const logContainer = ref(null)
const showVerboseLogs = ref(false)
+const qrPreview = ref(null)
let logWs = null
+const showQrPreview = (task) => {
+ qrPreview.value = task
+}
+
const filteredTasks = computed(() => {
return tasks.value.filter(task => {
// 默认隐藏已取消的任务
@@ -467,4 +488,10 @@ const errorCategoryLabel = (cat) => {
.qr-thumb:hover { border-color: #1890ff; }
.btn-danger { color: #ff4d4f; border-color: #ff4d4f; }
.btn-danger:hover { background: #ff4d4f; color: white; }
+
+/* 二维码放大弹窗 */
+.qr-preview-modal { background: white; border-radius: 12px; padding: 24px; width: 380px; text-align: center; }
+.qr-preview-img { width: 260px; height: 260px; border: 1px solid #f0f0f0; border-radius: 8px; margin: 16px 0; }
+.qr-preview-info { text-align: left; padding: 12px 16px; background: #fafafa; border-radius: 8px; }
+.qr-preview-info p { margin: 6px 0; font-size: 13px; color: #555; }