class ApiResponse { final bool success; final T? data; final String? message; final int? statusCode; // 构造函数 const ApiResponse({ required this.success, this.data, this.message, this.statusCode, }); // 成功响应 factory ApiResponse.success(T data, {String message = 'Success', int? statusCode}) { return ApiResponse( success: true, data: data, message: message, statusCode: statusCode, ); } // 失败响应 factory ApiResponse.error(String message, {int? statusCode, T? data}) { return ApiResponse( success: false, message: message, statusCode: statusCode, data: data, // 可选:返回部分数据(如错误时的缓存数据) ); } // 加载中(可选) factory ApiResponse.loading() { return ApiResponse( success: false, message: 'Loading...', ); } @override List get props => [success, data, message, statusCode]; @override String toString() { return 'ApiResponse(success: $success, message: $message, data: $data, statusCode: $statusCode)'; } }