feat(accounts): 新增登录异常分型统计、多选/全量导出、筛选记忆及页面组件模块化拆分

- 新增登录失败异常分型统计:支持「必须绑定手机号」、「极验滑块」、「凭证错误」、「邮箱取码失败」、「邮箱配额已满」、「网络异常」分型识别、生命周期联动(待人工)与一键筛选;
- 新增账号名单与明细导出功能:支持勾选多选或按当前筛选条件全选,可导出纯用户名名单 (TXT) 或 UTF-8 BOM 结构化明细报表 (CSV),并支持一键复制到剪贴板;
- 优化筛选条件记忆机制:支持页面切换/返回后自动保留所有筛选与排序状态,新增顶部「重置全部筛选」快捷按钮;
- 模块化拆分 AccountsPage:将 2100+ 行的大文件拆解至 pages/accounts/ 子目录(包含状态卡片、筛选面板、工具栏、操作弹窗与表格构建器),提升可维护性;
- 验证方式:新增 5 个后端自动化单测 (test_account_failure_and_export.py),全量 694 个测试用例通过,前端 TypeScript 编译与 pre-commit 代码规范检查全部通过。
This commit is contained in:
yml2213
2026-10-07 17:23:39 +08:00
parent 44b762ea8c
commit f101414f5e
19 changed files with 2697 additions and 1282 deletions
+1 -1
View File
@@ -172,7 +172,7 @@ class CaptchaCaptureRecord:
dtu_bytes: bytes,
puzzle_bytes: bytes,
restored_bg_bytes: bytes | None = None,
angle: int | float | None = None,
angle: float | None = None,
raw_data: dict[str, Any] | None = None,
) -> Path:
"""捕获旋转验证码的所有图片和元数据。"""
+1 -1
View File
@@ -6,6 +6,7 @@ import base64
import io
import json
import random
import re
import time
import uuid
from collections.abc import Mapping
@@ -15,7 +16,6 @@ from pathlib import Path
from typing import Any, cast
from urllib.parse import parse_qs, quote, urlparse
import re
import cv2
import execjs
import numpy as np