parametri_dao.dart 724 B

1234567891011121314151617181920212223242526
  1. import '../database.dart';
  2. class ParametriDao {
  3. final AppDatabase db;
  4. ParametriDao(this.db);
  5. Future<Parametro?> findByNome(String nome) {
  6. return (db.select(db.parametri)..where((t) => t.nome.equals(nome)))
  7. .getSingleOrNull();
  8. }
  9. Future<String?> read(String nome) async {
  10. final p = await findByNome(nome);
  11. return p?.valore;
  12. }
  13. Future<void> set(String nome, String valore) async {
  14. final existing = await findByNome(nome);
  15. if (existing != null) {
  16. await (db.update(db.parametri)..where((t) => t.nome.equals(nome)))
  17. .write(Parametro(valore: valore, nome: nome));
  18. } else {
  19. await db.into(db.parametri).insert(Parametro(nome: nome, valore: valore));
  20. }
  21. }
  22. }