import 'dart:convert'; import 'package:flutter/foundation.dart'; import 'package:http/http.dart' as http; import 'package:flutter_dotenv/flutter_dotenv.dart'; class AuditService { static String _envOrDefault(String key, String fallback) { if (!dotenv.isInitialized) { return fallback; } return dotenv.env[key] ?? fallback; } static String get _baseUrl => _envOrDefault('BACKEND_URL', 'https://sso.hmac.kr'); static Future logEvent({ required String userId, required String eventType, required String status, String? details, }) async { final url = Uri.parse('$_baseUrl/api/v1/audit'); try { final response = await http.post( url, headers: {'Content-Type': 'application/json'}, body: jsonEncode({ 'user_id': userId, 'event_type': eventType, 'status': status, 'details': details, }), ); if (response.statusCode >= 200 && response.statusCode < 300) { debugPrint('Audit log sent successfully'); } else { debugPrint( 'Failed to send audit log: ${response.statusCode} ${response.body}', ); } } catch (e) { debugPrint('Error sending audit log: $e'); } } }