saveUms method

Future<void> saveUms(
  1. Map<String, dynamic> ums,
  2. BuildContext context
)

Implementation

Future<void> saveUms(Map<String, dynamic> ums, BuildContext context) async {
  try {
    await _dbHelper.insertUmsBatch([ums]);
    final ok = await _saveUmsToApi(ums);

    if (!ok) {
      await _dbHelper.insertPendingUpdateUms(jsonEncode(ums));
      await _sendNotification('Guardado local', 'UMS guardada sin conexión');
      _showMessage(
          context, 'UMS guardada localmente. Sin conexión a internet.');
    } else {
      await _sendNotification('UMS guardada', 'Sincronizada con éxito');
      _showMessage(context, 'UMS guardada exitosamente en la API.');
    }
  } catch (e) {
    await _sendNotification('Error al guardar', e.toString());
    _showMessage(context, 'Error al guardar la UMS: $e');
  }
}