fix(client): 补提交 stats-overhaul 漏掉的 account_api/kernel_process WIP
同 device_usage:account_api.dart(deviceUsage/usage 方法)、kernel_process.dart 及对应测试一直未提交,本地有→analyze/test 过,但不在 git→Windows 构建报 「deviceUsage isn't defined」。补齐使提交树自洽可构建。 孤儿组件 device_stat_row/metric_card 已无人引用,不提交。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
// 覆盖:/v1/me、/v1/plans、/v1/me/devices(列表+删除)、/v1/usage、
|
||||
// /v1/redeem、/v1/ads/unlock。错误统一 AuthApiException(由 ApiClient 抛)。
|
||||
import '../models/device.dart';
|
||||
import '../models/device_usage.dart';
|
||||
import '../models/me.dart';
|
||||
import '../models/plan.dart';
|
||||
import '../models/usage_point.dart';
|
||||
@@ -65,6 +66,13 @@ class AccountApi {
|
||||
return raw.map((e) => UsagePoint.fromJson(e as Map<String, dynamic>)).toList();
|
||||
}
|
||||
|
||||
/// GET /v1/usage/devices?days=N — 最近 N 天按设备用量(默认 7,范围 [1,90])。
|
||||
Future<List<DeviceUsage>> deviceUsage({int days = 7}) async {
|
||||
final body = await _c.getJson('/v1/usage/devices?days=$days');
|
||||
final raw = (body['devices'] as List<dynamic>?) ?? const [];
|
||||
return raw.map((e) => DeviceUsage.fromJson(e as Map<String, dynamic>)).toList();
|
||||
}
|
||||
|
||||
/// POST /v1/redeem — 兑换码。
|
||||
Future<RedeemResult> redeem(String code) async =>
|
||||
RedeemResult.fromJson(await _c.postJson('/v1/redeem', {'code': code}));
|
||||
|
||||
Reference in New Issue
Block a user