scadenze_dao.dart 948 B

12345678910111213141516171819202122232425262728293031323334
  1. import 'package:drift/drift.dart';
  2. import '../database.dart';
  3. import '../tables/scadenze.dart';
  4. class ScadenzeDao {
  5. final AppDatabase db;
  6. ScadenzeDao(this.db);
  7. Future<List<Scadenza>> getScadenzeCliente(int idCliente) {
  8. return (db.select(db.scadenze)..where((t) => t.idCliente.equals(idCliente))).get();
  9. }
  10. Future<List<Scadenza>> getScadenzePerAgente(int idAgente) {
  11. return (db.select(db.scadenze)
  12. ..where((t) => t.idAgente.equals(idAgente) & (t.flgSoppressa.equals(0) | t.flgSoppressa.isNull()))
  13. ).get();
  14. }
  15. Future<void> markAllAsDeleted() {
  16. return (db.update(db.scadenze)).write(ScadenzeCompanion(stato: const Value('X')));
  17. }
  18. Future<void> removeDeleted() {
  19. return (db.delete(db.scadenze)..where((t) => t.stato.equals('X'))).go();
  20. }
  21. Future<int> insertScadenza(Scadenza s) {
  22. return db.into(db.scadenze).insert(s);
  23. }
  24. Future<void> clearAll() {
  25. return db.delete(db.scadenze).go();
  26. }
  27. }