checkAndSyncPending method

Future<void> checkAndSyncPending()

Implementation

Future<void> checkAndSyncPending() async {
  var connectivity = await Connectivity().checkConnectivity();
  if (connectivity == ConnectivityResult.none) return;

  final pendientes = await _dbHelper.getPendingEspecieExpediente();
  for (var item in pendientes) {
    final data = jsonDecode(item['data']);
    bool success = await _saveToApi(data);
    if (success) {
      await _dbHelper.deletePendingEspecieExpediente(item['id']);
      await _sendNotification(
          'Sincronización Exitosa', 'Especie sincronizada correctamente.');
    } else {
      // Si deseas mantener el registro para reintentos posteriores, comenta esta línea
      await _dbHelper.deletePendingEspecieExpediente(item['id']);
      await _sendNotification(
          'Falló la sincronización', 'No se pudo sincronizar una especie.');
    }
  }
}