updateTime method
- int idTime,
- TimeTraining? time
Método para actualizar un tiempo en la base de datos.
Este método actualiza los datos de un tiempo en la tabla timeTraining
utilizando su ID y un objeto TimeTraining
con los nuevos valores.
Sobretodo para actualizar penalizaciones o comentarios.
Parámetros:
idTime
: El ID del tiempo que se actualizará.time
: Un objetoTimeTraining
que contiene los nuevos valores para actualizar.
Retorna:
bool
:true
si la actualización fue exitosa (al menos una fila afectada),false
si ocurrió un error o no se actualizó ninguna fila.
Implementation
Future<bool> updateTime(int idTime, TimeTraining? time) async {
// MAPA CON LOS VALORES A ACTUALIZAR
try {
// REALIZAR EL UPDATE
final result = await supabase
.from('timetraining')
.update({
'idtimetraining': idTime,
'idsession': time?.idSession,
'scramble': time?.scramble,
'timeinseconds': time?.timeInSeconds,
'comments': time?.comments,
'penalty': time?.penalty,
})
.eq('idtimetraining', idTime)
.select();
// DEVUELVE TRUE SI SE ACTUALIZO AL MENOS UNA FILA
return result.isNotEmpty;
} catch (e) {
// RETORNA FALSE Y MUESTRA UN MENSAJE DE ERROR SI FALLA
DatabaseHelper.logger.e(
"Error al actualizar la información del time ${time.toString()}: $e");
return false;
}
}