first app design
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import '../../../core/models/analytics.dart';
|
||||
import '../../../core/models/vehicle.dart';
|
||||
import '../../../core/models/reservation.dart';
|
||||
import '../../../core/models/customer.dart';
|
||||
import '../../../core/services/analytics_service.dart';
|
||||
import '../../../core/services/vehicle_service.dart';
|
||||
import '../../../core/services/reservation_service.dart';
|
||||
import '../../../core/services/customer_service.dart';
|
||||
|
||||
final analyticsServiceProvider = Provider((_) => AnalyticsService());
|
||||
final vehicleServiceProvider = Provider((_) => VehicleService());
|
||||
final reservationServiceProvider = Provider((_) => ReservationService());
|
||||
final customerServiceProvider = Provider((_) => CustomerService());
|
||||
|
||||
final dashboardMetricsProvider = FutureProvider<DashboardMetrics>((ref) async {
|
||||
return ref.read(analyticsServiceProvider).getDashboard();
|
||||
});
|
||||
|
||||
final vehiclesProvider = FutureProvider.family<VehicleListResponse, Map<String, dynamic>>(
|
||||
(ref, params) async {
|
||||
return ref.read(vehicleServiceProvider).getVehicles(
|
||||
page: params['page'] as int? ?? 1,
|
||||
pageSize: params['pageSize'] as int? ?? 20,
|
||||
status: params['status'] as String?,
|
||||
search: params['search'] as String?,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
||||
final vehicleDetailProvider = FutureProvider.family<Vehicle, String>((ref, id) {
|
||||
return ref.read(vehicleServiceProvider).getVehicle(id);
|
||||
});
|
||||
|
||||
final reservationsProvider =
|
||||
FutureProvider.family<ReservationListResponse, Map<String, dynamic>>(
|
||||
(ref, params) async {
|
||||
return ref.read(reservationServiceProvider).getReservations(
|
||||
page: params['page'] as int? ?? 1,
|
||||
pageSize: params['pageSize'] as int? ?? 20,
|
||||
status: params['status'] as String?,
|
||||
search: params['search'] as String?,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
||||
final reservationDetailProvider =
|
||||
FutureProvider.family<Reservation, String>((ref, id) {
|
||||
return ref.read(reservationServiceProvider).getReservation(id);
|
||||
});
|
||||
|
||||
final customersProvider =
|
||||
FutureProvider.family<CustomerListResponse, Map<String, dynamic>>(
|
||||
(ref, params) async {
|
||||
return ref.read(customerServiceProvider).getCustomers(
|
||||
page: params['page'] as int? ?? 1,
|
||||
pageSize: params['pageSize'] as int? ?? 20,
|
||||
search: params['search'] as String?,
|
||||
);
|
||||
},
|
||||
);
|
||||
|
||||
final customerDetailProvider =
|
||||
FutureProvider.family<Customer, String>((ref, id) {
|
||||
return ref.read(customerServiceProvider).getCustomer(id);
|
||||
});
|
||||
Reference in New Issue
Block a user