diff --git a/src/TelegramPanel.Web/Components/Pages/Accounts.razor b/src/TelegramPanel.Web/Components/Pages/Accounts.razor index da8c7d3..c14fe16 100644 --- a/src/TelegramPanel.Web/Components/Pages/Accounts.razor +++ b/src/TelegramPanel.Web/Components/Pages/Accounts.razor @@ -44,8 +44,8 @@ @SelectionToggleText - 批量刷新状态 + Disabled="@(loading || selectedAccounts.Count == 0)" OnClick="BatchRefreshTelegramStatus" Size="Size.Small"> + 刷新已选状态 a.Id > 0) + .GroupBy(a => a.Id) + .Select(g => g.First()) + .ToList(); + + if (targets.Count == 0) { - Snackbar.Add("暂无账号可刷新", Severity.Info); + Snackbar.Add("请先选择账号", Severity.Warning); return; } @@ -623,14 +629,12 @@ try { bool? probeResult = await DialogService.ShowMessageBox( - "批量刷新 Telegram 状态", - "是否进行深度探测(将对每个账号创建并删除一个测试频道,用于判断【创建频道接口是否被冻结】)?", + "刷新已选 Telegram 状态", + $"将刷新已选 {targets.Count} 个账号的 Telegram 状态。\n\n是否进行深度探测(将对每个账号创建并删除一个测试频道,用于判断【创建频道接口是否被冻结】)?", yesText: "深度探测", cancelText: "普通刷新"); var probe = probeResult == true; - var categoryId = filterCategoryId <= 0 ? (int?)null : filterCategoryId; - var targets = (await AccountManagement.QueryAccountsAsync(categoryId, searchString, _pageCts.Token)).ToList(); // 批量风控检查:深度探测是敏感操作 if (probe && targets.Count > 0)