diff --git a/frontend/mining-app/lib/presentation/providers/trading_providers.dart b/frontend/mining-app/lib/presentation/providers/trading_providers.dart index ea6991e7..f3635be6 100644 --- a/frontend/mining-app/lib/presentation/providers/trading_providers.dart +++ b/frontend/mining-app/lib/presentation/providers/trading_providers.dart @@ -8,6 +8,7 @@ import '../../domain/entities/kline.dart'; import '../../domain/repositories/trading_repository.dart'; import '../../data/models/trade_order_model.dart'; import '../../core/di/injection.dart'; +import 'user_providers.dart'; // Repository Provider final tradingRepositoryProvider = Provider((ref) { @@ -32,7 +33,11 @@ final buyEnabledProvider = FutureProvider((ref) async { }); // 预种卖出限制状态 Provider (2分钟缓存,fail-open) +// 依赖当前用户 accountSequence,账号切换时自动重新请求,避免跨账号缓存污染 final sellRestrictionProvider = FutureProvider((ref) async { + // 绑定用户身份:accountSequence 变化(登录/切换账号)时自动失效重新请求 + ref.watch(userNotifierProvider.select((s) => s.accountSequence)); + final repository = ref.watch(tradingRepositoryProvider); final result = await repository.getSellRestriction();