chore(mobile-app): 减少频繁日志输出
移除以下频繁执行操作的日志,只保留错误和关键状态日志: - MaintenanceProvider: 移除正常状态日志,只保留检测到维护的日志 - ContractCheckService: 移除常规检查日志,只保留检测到异常的日志 - ContractSigningService: 移除KYC检查、获取任务列表等常规日志 - HomeShellPage: 移除合同检查定时器日志和路由栈打印 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
68237d9905
commit
8a839b5e14
|
|
@ -44,7 +44,6 @@ class MaintenanceNotifier extends StateNotifier<MaintenanceStatus>
|
|||
void didChangeAppLifecycleState(AppLifecycleState lifecycleState) {
|
||||
if (lifecycleState == AppLifecycleState.resumed) {
|
||||
// App 从后台切回前台,立即检查维护状态
|
||||
debugPrint('[MaintenanceProvider] App 恢复前台,检查维护状态');
|
||||
_checkAndShowDialogIfNeeded();
|
||||
}
|
||||
}
|
||||
|
|
@ -71,10 +70,9 @@ class MaintenanceNotifier extends StateNotifier<MaintenanceStatus>
|
|||
state = status;
|
||||
|
||||
if (status.isUnderMaintenance) {
|
||||
debugPrint('[MaintenanceProvider] 系统正在维护');
|
||||
debugPrint('[MaintenanceProvider] 检测到系统维护中');
|
||||
_startPeriodicCheck();
|
||||
} else {
|
||||
debugPrint('[MaintenanceProvider] 系统正常运行');
|
||||
_stopPeriodicCheck();
|
||||
// 如果之前在维护,现在恢复了,关闭弹窗
|
||||
if (_isDialogShowing) {
|
||||
|
|
|
|||
|
|
@ -39,15 +39,9 @@ class ContractCheckService {
|
|||
/// 返回 true 表示有待签署合同,需要强制签署
|
||||
Future<bool> 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<ContractCheckResult> 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,
|
||||
|
|
|
|||
|
|
@ -214,15 +214,12 @@ class ContractSigningService {
|
|||
/// 如果用户有已付款的认种订单但未完成 KYC,返回需要强制完成 KYC 的信息
|
||||
Future<KycRequirementResult> 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<String, dynamic>;
|
||||
if (responseData['success'] == true && responseData['data'] != null) {
|
||||
final data = responseData['data'] as Map<String, dynamic>;
|
||||
debugPrint('[ContractSigningService] KYC 检查结果: requiresKyc=${data['requiresKyc']}, paidOrderCount=${data['paidOrderCount']}');
|
||||
return KycRequirementResult.fromJson(data);
|
||||
}
|
||||
}
|
||||
|
|
@ -239,15 +236,12 @@ class ContractSigningService {
|
|||
/// 获取待签署任务列表
|
||||
Future<List<ContractSigningTask>> getPendingTasks() async {
|
||||
try {
|
||||
debugPrint('[ContractSigningService] 获取待签署任务列表');
|
||||
|
||||
final response = await _apiClient.get('/planting/contract-signing/pending');
|
||||
|
||||
if (response.statusCode == 200) {
|
||||
final responseData = response.data as Map<String, dynamic>;
|
||||
if (responseData['success'] == true && responseData['data'] != null) {
|
||||
final data = responseData['data'] as List<dynamic>;
|
||||
debugPrint('[ContractSigningService] 待签署任务数量: ${data.length}');
|
||||
return data.map((e) => ContractSigningTask.fromJson(e)).toList();
|
||||
}
|
||||
return [];
|
||||
|
|
@ -263,19 +257,12 @@ class ContractSigningService {
|
|||
/// 获取未签署任务列表(包括超时的)
|
||||
Future<List<ContractSigningTask>> getUnsignedTasks() async {
|
||||
try {
|
||||
debugPrint('[ContractSigningService] 获取未签署任务列表');
|
||||
|
||||
final response = await _apiClient.get('/planting/contract-signing/unsigned');
|
||||
|
||||
if (response.statusCode == 200) {
|
||||
final responseData = response.data as Map<String, dynamic>;
|
||||
if (responseData['success'] == true && responseData['data'] != null) {
|
||||
final data = responseData['data'] as List<dynamic>;
|
||||
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<ContractSigningTask> getTask(String orderNo) async {
|
||||
try {
|
||||
debugPrint('[ContractSigningService] 获取签署任务详情: $orderNo');
|
||||
|
||||
final response = await _apiClient.get('/planting/contract-signing/tasks/$orderNo');
|
||||
|
||||
|
|
|
|||
|
|
@ -135,7 +135,6 @@ class _HomeShellPageState extends ConsumerState<HomeShellPage>
|
|||
|
||||
// 随机 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<HomeShellPage>
|
|||
|
||||
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<HomeShellPage>
|
|||
}
|
||||
return false;
|
||||
} catch (e) {
|
||||
debugPrint('[HomeShellPage] 获取路由状态失败: $e');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -179,24 +176,16 @@ class _HomeShellPageState extends ConsumerState<HomeShellPage>
|
|||
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) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue