From eb5d2522ecb756731a6e2471242867507449e4a1 Mon Sep 17 00:00:00 2001 From: chenfan Date: Mon, 31 Mar 2025 14:46:22 +0800 Subject: [PATCH] =?UTF-8?q?add:=20=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E7=9A=84=E6=97=A0=E6=84=9F=E5=88=B7=E6=96=B0=EF=BC=8C=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=9C=80=E5=90=8E=E6=9B=B4=E6=96=B0=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- static/js/app.js | 42 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/static/js/app.js b/static/js/app.js index 8b196b3..01fcfc6 100644 --- a/static/js/app.js +++ b/static/js/app.js @@ -36,6 +36,14 @@ function initializeApplication() { // 绑定所有事件处理函数 bindEventHandlers(); + + // 在自动刷新指示器中添加最后更新时间显示 + $(".position-fixed.bottom-0.end-0 .d-flex").append( + '最后更新: --:--:--' + ); + + // 立即更新一次时间,显示页面初始加载时间 + updateLastRefreshTime(); } // 事件处理绑定函数 - 将所有事件绑定集中在一起 @@ -185,8 +193,11 @@ function hideLoading() { } // 加载账号数据 -function loadAccounts(page = 1, perPage = itemsPerPage, search = '', sortField = currentSortField, sortOrder = currentSortOrder) { - showLoading(); +function loadAccounts(page = 1, perPage = itemsPerPage, search = '', sortField = currentSortField, sortOrder = currentSortOrder, showLoadingOverlay = true) { + // 只在需要时显示加载遮罩 + if (showLoadingOverlay) { + showLoading(); + } // 构建URL查询参数 let params = new URLSearchParams({ @@ -249,14 +260,20 @@ function loadAccounts(page = 1, perPage = itemsPerPage, search = '', sortField = // 淡入表格 $("#accounts-table").animate({opacity: 1}, 300); - hideLoading(); + if (showLoadingOverlay) { + hideLoading(); + } } else { + if (showLoadingOverlay) { + hideLoading(); + } showAlert('danger', '加载账号失败: ' + response.message); - hideLoading(); } }, error: function(xhr) { - hideLoading(); + if (showLoadingOverlay) { + hideLoading(); + } showAlert('danger', '加载账号失败: ' + (xhr.responseJSON?.detail || xhr.statusText)); } }); @@ -1546,7 +1563,11 @@ function setupTaskRefresh() { // 如果在账号管理页面,刷新账号列表 if ($("#tasks-accounts").hasClass('active')) { - loadAccounts(currentPage, itemsPerPage, $("#search-input").val(), currentSortField, currentSortOrder); + // 静默刷新,不显示loading框 + loadAccounts(currentPage, itemsPerPage, $("#search-input").val(), currentSortField, currentSortOrder, false); + + // 更新最后刷新时间 + updateLastRefreshTime(); } }, REFRESH_INTERVAL); @@ -1554,6 +1575,15 @@ function setupTaskRefresh() { checkTaskStatus(); } +// 更新最后刷新时间的函数 +function updateLastRefreshTime() { + const now = new Date(); + const timeString = now.getHours().toString().padStart(2, '0') + ":" + + now.getMinutes().toString().padStart(2, '0') + ":" + + now.getSeconds().toString().padStart(2, '0'); + $("#last-update-time").text(timeString); +} + // 检查任务状态 function checkTaskStatus() { fetch('/registration/status')