import 'dart:async'; import 'package:flutter/material.dart'; import '../../viewmodels/viewmodels.dart'; class PedidoSync { static final PedidoSync _instance = PedidoSync._internal(); Timer? _syncTimer; factory PedidoSync() { return _instance; } PedidoSync._internal(); void startSync(PedidoViewModel pedidoViewModel) { if (_syncTimer != null && _syncTimer!.isActive) return; _syncTimer = Timer.periodic(Duration(seconds: 5), (timer) async { bool hasMoreToSync = await pedidoViewModel.sincronizarPedidos(); print('Pedido Sincronizado'); // if (!hasMoreToSync) { // timer.cancel(); // _syncTimer = null; // print('Sincronización completa, no hay más pedidos por sincronizar.'); // } }); } void stopSync() { _syncTimer?.cancel(); _syncTimer = null; } bool isSyncing() { return _syncTimer != null && _syncTimer!.isActive; } }