feat - Service - Providers
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flux/core/blocs/session/session_bloc.dart';
|
||||
import 'package:flux/features/services/data/services_repository.dart';
|
||||
import 'package:flux/features/services/models/service_model.dart';
|
||||
import 'package:get_it/get_it.dart';
|
||||
@@ -54,11 +55,14 @@ class ServicesState extends Equatable {
|
||||
|
||||
class ServicesCubit extends Cubit<ServicesState> {
|
||||
final ServicesRepository _repository = GetIt.I<ServicesRepository>();
|
||||
final SessionBloc _sessionBloc;
|
||||
|
||||
ServicesCubit() : super(const ServicesState());
|
||||
ServicesCubit(this._sessionBloc) : super(const ServicesState());
|
||||
|
||||
// Carica tutto il pacchetto
|
||||
Future<void> loadServices({bool refresh = false}) async {
|
||||
// Se non è un refresh e abbiamo già dati, non disturbare Supabase
|
||||
if (!refresh && state.allServices.isNotEmpty) return;
|
||||
if (state.isLoading) return;
|
||||
|
||||
// Se facciamo refresh, resettiamo tutto
|
||||
@@ -74,6 +78,7 @@ class ServicesCubit extends Cubit<ServicesState> {
|
||||
|
||||
try {
|
||||
final newServices = await _repository.fetchServices(
|
||||
companyId: _sessionBloc.state.company!.id,
|
||||
offset: currentOffset,
|
||||
searchTerm: state.query,
|
||||
dateRange: state.dateRange,
|
||||
|
||||
Reference in New Issue
Block a user