| 1234567891011121314151617181920212223242526272829303132 |
- import 'package:drift/drift.dart';
- import '../database.dart';
- class ClientiAgenteDao {
- final AppDatabase db;
- ClientiAgenteDao(this.db);
- Future<ClientiAgenteData?> findByClienteAgente(int idCliente, int idAgente) {
- return (db.select(db.clientiAgente)
- ..where((t) => t.idCliente.equals(idCliente) & t.idAgente.equals(idAgente))
- ).getSingleOrNull();
- }
- Future<void> activateCustomer(int idCliente, int idAgente) async {
- final existing = await findByClienteAgente(idCliente, idAgente);
- if (existing != null) {
- await (db.update(db.clientiAgente)..where((t) => t.idClientiAgente.equals(existing.idClientiAgente)))
- .write(ClientiAgenteCompanion(attivo: const Value(1)));
- } else {
- await db.into(db.clientiAgente).insert(ClientiAgenteCompanion(
- idCliente: Value(idCliente),
- idAgente: Value(idAgente),
- attivo: const Value(1),
- ));
- }
- }
- Future<void> deactivateAllCustomers(int idAgente) {
- return (db.update(db.clientiAgente)..where((t) => t.idAgente.equals(idAgente)))
- .write(ClientiAgenteCompanion(attivo: const Value(0)));
- }
- }
|