wesal/frontend/lib/services/user_service.dart

25 lines
942 B
Dart

import 'dart:convert';
import '../constants/api_constants.dart';
import 'http_service.dart';
class UserService {
static Future<Map<String, dynamic>> getCurrentUser() async {
try {
final response = await HttpService.get(ApiConstants.getUserEndpoint);
if (response.statusCode == 200) {
final data = jsonDecode(response.body);
return {'success': true, 'data': data};
} else if (response.statusCode == 401) {
return {'success': false, 'message': 'Session expired. Please login again.'};
} else if (response.statusCode == 403) {
return {'success': false, 'message': 'Access denied. Invalid credentials.'};
} else {
return {'success': false, 'message': 'Server error (${response.statusCode})'};
}
} catch (e) {
print('Error fetching user: $e');
return {'success': false, 'message': 'Network error. Please check your connection.'};
}
}
}