import 'package:flutter_riverpod/flutter_riverpod.dart'; import '../models/user_model.dart'; import '../models/deviation.dart'; import 'auth_provider.dart'; import 'time_provider.dart'; // Provider for organisasjonens brukere final organizationUsersProvider = FutureProvider>((ref) async { final user = ref.watch(currentUserProvider); final userData = await ref.watch(userDataProvider.future); if (user == null || userData == null) { return []; } // Sjekk om bruker er admin if (userData.role != UserRole.admin && userData.role != UserRole.systemAdmin) { return []; } final authService = ref.read(authServiceProvider); return authService.getUsersInOrganization(userData.organizationId); }); // Provider for organisasjonens avvik final organizationDeviationsProvider = FutureProvider.family, bool?>((ref, onlyUnacknowledged) async { final user = ref.watch(currentUserProvider); final userData = await ref.watch(userDataProvider.future); if (user == null || userData == null) { return []; } // Sjekk om bruker er admin if (userData.role != UserRole.admin && userData.role != UserRole.systemAdmin) { return []; } final timeService = ref.read(timeServiceProvider); return timeService.getDeviations( organizationId: userData.organizationId, onlyUnacknowledged: onlyUnacknowledged, ); });