123456789101112131415161718192021222324252627282930313233343536373839 |
- 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;
- }
- }
|