| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import 'package:drift/drift.dart';
- import '../database.dart';
- class ListiniDao {
- final AppDatabase db;
- ListiniDao(this.db);
- Future<List<Listino>> list() {
- return (db.select(db.listini)
- ..where(
- (t) =>
- t.codListino.like('OF2').not() &
- t.codListino.like('OF4').not() &
- t.codListino.like('I0').not() &
- t.codListino.like('A0').not(),
- )
- ..orderBy([(t) => OrderingTerm(expression: t.codListino)]))
- .get();
- }
- Future<List<Listino>> listSenzaFiltro() {
- return (db.select(
- db.listini,
- )..orderBy([(t) => OrderingTerm(expression: t.descrizione)])).get();
- }
- Future<Listino?> findByCod(String code) {
- return (db.select(
- db.listini,
- )..where((t) => t.codListino.equals(code))).getSingleOrNull();
- }
- Future<ListinoArticolo?> findListinoArticolo(int idListino, int idArticolo) {
- return (db.select(db.listiniArticolo)..where(
- (t) =>
- t.idListino.equals(idListino) & t.idArticolo.equals(idArticolo),
- ))
- .getSingleOrNull();
- }
- Future<ListinoCliente?> getListinoCliente(
- int idCliente,
- int idArticolo,
- String date,
- ) {
- return (db.select(db.listiniCliente)
- ..where(
- (t) =>
- t.idCliente.equals(idCliente) &
- t.idArticolo.equals(idArticolo) &
- (t.attivo.equals(1)) &
- (t.annullato.equals('N')),
- )
- ..orderBy([
- (t) =>
- OrderingTerm(expression: t.validoDa, mode: OrderingMode.desc),
- ])
- ..limit(1))
- .getSingleOrNull();
- }
- Future<List<Listino>> getListiniPerArticolo(
- int idArticolo,
- String dataOrdine,
- ) {
- return (db.select(db.listini)
- ..join([
- innerJoin(
- db.listiniArticolo,
- db.listiniArticolo.idListino.equalsExp(db.listini.idListino) &
- db.listiniArticolo.idArticolo.equals(idArticolo),
- ),
- ])
- ..where(
- (t) =>
- db.listiniArticolo.attivo.equals(1) &
- db.listiniArticolo.validoDa.isSmallerOrEqualValue(dataOrdine) &
- db.listiniArticolo.validoA.isBiggerOrEqualValue(dataOrdine) &
- t.codListino.isNotNull() &
- t.codListino.like('OF2').not() &
- t.codListino.like('OF4').not() &
- t.codListino.like('I0').not(),
- ))
- .get();
- }
- }
|