diff --git a/frontend/mobile-app/lib/core/providers/maintenance_provider.dart b/frontend/mobile-app/lib/core/providers/maintenance_provider.dart index 26ece366..666b0d3b 100644 --- a/frontend/mobile-app/lib/core/providers/maintenance_provider.dart +++ b/frontend/mobile-app/lib/core/providers/maintenance_provider.dart @@ -44,7 +44,6 @@ class MaintenanceNotifier extends StateNotifier void didChangeAppLifecycleState(AppLifecycleState lifecycleState) { if (lifecycleState == AppLifecycleState.resumed) { // App 从后台切回前台,立即检查维护状态 - debugPrint('[MaintenanceProvider] App 恢复前台,检查维护状态'); _checkAndShowDialogIfNeeded(); } } @@ -71,10 +70,9 @@ class MaintenanceNotifier extends StateNotifier state = status; if (status.isUnderMaintenance) { - debugPrint('[MaintenanceProvider] 系统正在维护'); + debugPrint('[MaintenanceProvider] 检测到系统维护中'); _startPeriodicCheck(); } else { - debugPrint('[MaintenanceProvider] 系统正常运行'); _stopPeriodicCheck(); // 如果之前在维护,现在恢复了,关闭弹窗 if (_isDialogShowing) { diff --git a/frontend/mobile-app/lib/core/services/contract_check_service.dart b/frontend/mobile-app/lib/core/services/contract_check_service.dart index 9d393137..9e457623 100644 --- a/frontend/mobile-app/lib/core/services/contract_check_service.dart +++ b/frontend/mobile-app/lib/core/services/contract_check_service.dart @@ -39,15 +39,9 @@ class ContractCheckService { /// 返回 true 表示有待签署合同,需要强制签署 Future hasPendingContracts() async { try { - debugPrint('[ContractCheckService] 检查待签署合同...'); - // 获取未签署任务(包括待签署和超时未签署的) final unsignedTasks = await _contractSigningService.getUnsignedTasks(); - - final hasPending = unsignedTasks.isNotEmpty; - debugPrint('[ContractCheckService] 未签署合同数量: ${unsignedTasks.length}'); - - return hasPending; + return unsignedTasks.isNotEmpty; } catch (e) { debugPrint('[ContractCheckService] 检查待签署合同失败: $e'); // 检查失败时不阻止用户使用 App @@ -62,15 +56,13 @@ class ContractCheckService { /// - 是否需要先完成 KYC(有已付款订单但未完成 KYC) Future checkAll() async { try { - debugPrint('[ContractCheckService] 开始综合检查...'); - // 1. 检查未签署的合同 final unsignedTasks = await _contractSigningService.getUnsignedTasks(); final hasPending = unsignedTasks.isNotEmpty; - debugPrint('[ContractCheckService] 未签署合同数量: ${unsignedTasks.length}'); // 2. 如果有待签署的合同,直接返回(不需要再检查 KYC) if (hasPending) { + debugPrint('[ContractCheckService] 检测到 ${unsignedTasks.length} 个待签署合同'); return ContractCheckResult( hasPendingContracts: true, requiresKyc: false, @@ -79,7 +71,10 @@ class ContractCheckService { // 3. 没有待签署合同,检查是否有需要 KYC 的情况 final kycResult = await _contractSigningService.checkKycRequirement(); - debugPrint('[ContractCheckService] KYC 检查结果: requiresKyc=${kycResult.requiresKyc}, paidOrderCount=${kycResult.paidOrderCount}'); + + if (kycResult.requiresKyc) { + debugPrint('[ContractCheckService] 检测到需要 KYC, paidOrderCount=${kycResult.paidOrderCount}'); + } return ContractCheckResult( hasPendingContracts: false, diff --git a/frontend/mobile-app/lib/core/services/contract_signing_service.dart b/frontend/mobile-app/lib/core/services/contract_signing_service.dart index 817b774c..c342dbaf 100644 --- a/frontend/mobile-app/lib/core/services/contract_signing_service.dart +++ b/frontend/mobile-app/lib/core/services/contract_signing_service.dart @@ -214,15 +214,12 @@ class ContractSigningService { /// 如果用户有已付款的认种订单但未完成 KYC,返回需要强制完成 KYC 的信息 Future checkKycRequirement() async { try { - debugPrint('[ContractSigningService] 检查 KYC 需求'); - final response = await _apiClient.get('/planting/contract-signing/kyc-requirement'); if (response.statusCode == 200) { final responseData = response.data as Map; if (responseData['success'] == true && responseData['data'] != null) { final data = responseData['data'] as Map; - debugPrint('[ContractSigningService] KYC 检查结果: requiresKyc=${data['requiresKyc']}, paidOrderCount=${data['paidOrderCount']}'); return KycRequirementResult.fromJson(data); } } @@ -239,15 +236,12 @@ class ContractSigningService { /// 获取待签署任务列表 Future> getPendingTasks() async { try { - debugPrint('[ContractSigningService] 获取待签署任务列表'); - final response = await _apiClient.get('/planting/contract-signing/pending'); if (response.statusCode == 200) { final responseData = response.data as Map; if (responseData['success'] == true && responseData['data'] != null) { final data = responseData['data'] as List; - debugPrint('[ContractSigningService] 待签署任务数量: ${data.length}'); return data.map((e) => ContractSigningTask.fromJson(e)).toList(); } return []; @@ -263,19 +257,12 @@ class ContractSigningService { /// 获取未签署任务列表(包括超时的) Future> getUnsignedTasks() async { try { - debugPrint('[ContractSigningService] 获取未签署任务列表'); - final response = await _apiClient.get('/planting/contract-signing/unsigned'); if (response.statusCode == 200) { final responseData = response.data as Map; if (responseData['success'] == true && responseData['data'] != null) { final data = responseData['data'] as List; - debugPrint('[ContractSigningService] 未签署任务数量: ${data.length}'); - // 调试:打印每个任务的 expiresAt - for (final item in data) { - debugPrint('[ContractSigningService] 任务 ${item['orderNo']} expiresAt: ${item['expiresAt']}'); - } return data.map((e) => ContractSigningTask.fromJson(e)).toList(); } return []; @@ -291,7 +278,6 @@ class ContractSigningService { /// 获取签署任务详情 Future getTask(String orderNo) async { try { - debugPrint('[ContractSigningService] 获取签署任务详情: $orderNo'); final response = await _apiClient.get('/planting/contract-signing/tasks/$orderNo'); diff --git a/frontend/mobile-app/lib/features/home/presentation/pages/home_shell_page.dart b/frontend/mobile-app/lib/features/home/presentation/pages/home_shell_page.dart index 56e9fc32..3821f8aa 100644 --- a/frontend/mobile-app/lib/features/home/presentation/pages/home_shell_page.dart +++ b/frontend/mobile-app/lib/features/home/presentation/pages/home_shell_page.dart @@ -135,7 +135,6 @@ class _HomeShellPageState extends ConsumerState // 随机 5-20 秒 final randomSeconds = 5 + Random().nextInt(16); // 5 + 0~15 = 5~20 - debugPrint('[HomeShellPage] 下次合同检查将在 $randomSeconds 秒后执行'); _contractCheckTimer = Timer(Duration(seconds: randomSeconds), () async { await _performBackgroundContractCheck(); @@ -161,7 +160,6 @@ class _HomeShellPageState extends ConsumerState for (final match in matches) { final location = match.matchedLocation; - debugPrint('[HomeShellPage] 路由栈: $location'); // 合同签署相关页面 if (location.startsWith('/contract-signing')) return true; // KYC 相关页面 @@ -169,7 +167,6 @@ class _HomeShellPageState extends ConsumerState } return false; } catch (e) { - debugPrint('[HomeShellPage] 获取路由状态失败: $e'); return false; } } @@ -179,24 +176,16 @@ class _HomeShellPageState extends ConsumerState if (!mounted || _isShowingDialog) return; // 如果用户在合同签署、KYC页面,或正在升级,跳过检查 - if (_shouldSkipContractCheck()) { - debugPrint('[HomeShellPage] 用户在合同/KYC/升级页面,跳过后台检查'); - return; - } + if (_shouldSkipContractCheck()) return; try { - debugPrint('[HomeShellPage] 执行后台综合检查...'); - final contractCheckService = ref.read(contractCheckServiceProvider); final result = await contractCheckService.checkAll(); if (!mounted || _isShowingDialog) return; // 再次检查,防止在请求期间用户进入了相关页面或开始升级 - if (_shouldSkipContractCheck()) { - debugPrint('[HomeShellPage] 用户已进入合同/KYC/升级页面,跳过弹窗'); - return; - } + if (_shouldSkipContractCheck()) return; // 1. 优先处理待签署合同 if (result.hasPendingContracts) {