feat(gui): 优化双时间日志呈现与账号兑换记录弹窗明细查看

- 参考斗鱼重构日志双时间展示:本地时间与虎牙估算时间拆分,青色高亮 Tag 醒目显示 H:xx:xx:xx.xxx,排版自适应不折行;新增一键复制带双时间格式日志与清空功能
- 增强账号兑换记录交互:账号列表新增专属「记录」按钮,点击弹出专属兑换记录明细 Modal(支持查看全部历史订单、缩略图、积分、格式化时间,单号一键复制)
- 优化顶部批量「兑换记录」流程:查询完成后自动切至「兑换记录」Tab(由原'复盘'重命名),并显示总记录条数与友好空状态提示
- 验证:Vite 前端打包与 Go 全套单测均干净通过
This commit is contained in:
yml2213
2026-10-17 19:23:19 +08:00
parent 4e8fb03705
commit f89b54dc49
3 changed files with 367 additions and 26 deletions
+6 -1
View File
@@ -422,6 +422,8 @@ func (a *App) GetRecords(cfg Config) ([]RecordResult, error) {
defer closeClient()
results := make([]RecordResult, len(accounts))
totalRecords := 0
var recordMu sync.Mutex
a.runConcurrent(accounts, cfg.Concurrency, func(i int, account sniper.Account) {
ctx, cancel := requestContext(cfg.TimeoutSec)
defer cancel()
@@ -429,10 +431,13 @@ func (a *App) GetRecords(cfg Config) ([]RecordResult, error) {
item := RecordResult{UID: account.UID, Resp: resp, Error: errorString(err)}
if resp != nil {
item.Records = resp.Records
recordMu.Lock()
totalRecords += len(resp.Records)
recordMu.Unlock()
}
results[i] = item
})
a.addLog("info", "查询兑换记录完成: accounts=%d", len(accounts))
a.addLog("info", "查询兑换记录完成: accounts=%d 总记录=%d", len(accounts), totalRecords)
return results, nil
}