setTableName(self::TABLE_NAME); $this->registerFilterParams([ 'status' => 'au.status LIKE', 'belegnr' => 'au.belegnr %LIKE%', 'belegnr_equals' => 'au.belegnr LIKE', 'belegnr_startswith' => 'au.belegnr LIKE%', 'belegnr_endswith' => 'au.belegnr %LIKE', 'kundennummer' => 'au.kundennummer %LIKE%', 'kundennummer_equals' => 'au.kundennummer LIKE', 'kundennummer_startswith' => 'au.kundennummer LIKE%', 'kundennummer_endswith' => 'au.kundennummer %LIKE', 'internet' => 'au.internet %LIKE%', 'internet_equals' => 'au.internet LIKE', 'internet_startswith' => 'au.internet LIKE%', 'internet_endswith' => 'au.internet %LIKE', 'datum' => 'au.datum =', 'datum_gt' => 'au.datum >', 'datum_gte' => 'au.datum >=', 'datum_lt' => 'au.datum <', 'datum_lte' => 'au.datum <=', 'angebot' => 'au.angebot LIKE', 'angebotid' => 'au.angebotid =', 'projekt' => 'au.projekt =', ]); $this->registerSortingParams([ 'belegnr' => 'au.belegnr', 'datum' => 'au.datum', ]); $this->registerIncludes([ 'positionen' => [ 'key' => 'positionen', 'resource' => DocumentSalesOrderPositionResource::class, 'filter' => [ [ 'property' => 'auftrag', 'value' => ':id', ], ], 'sort' => [ 'sort' => 'ASC', ], ], 'protokoll' => [ 'key' => 'protokoll', 'resource' => DocumentSalesOrderProtocolResource::class, 'columns' => [ 'auproto.id', 'auproto.zeit', 'auproto.bearbeiter', 'auproto.grund', ], 'filter' => [ [ 'property' => 'auftrag', 'value' => ':id', ], ], 'sort' => [ 'zeit' => 'ASC', ], ], ]); } /** * @return SelectQuery */ protected function selectOneQuery() { return $this->selectAllQuery()->where('au.id = :id'); } /** * @return SelectQuery */ protected function selectAllQuery() { return $this->db->select() ->cols([ 'au.id', 'au.firma', 'au.projekt', // Index 'au.status', // Index 'au.belegnr', // Index 'au.kundennummer', 'au.lieferantenauftrag', 'au.lieferant', 'au.aktion', 'au.angebot', 'au.ihrebestellnummer', 'au.internet', // Index 'au.internebezeichnung', 'au.datum', 'au.lieferdatum', 'au.lieferdatumkw', 'au.tatsaechlicheslieferdatum', 'au.reservationdate', 'au.abweichendebezeichnung', 'au.adresse', // Index 'au.typ', 'au.name', 'au.titel', 'au.ansprechpartnerid', 'au.ansprechpartner', 'au.abteilung', 'au.unterabteilung', 'au.adresszusatz', 'au.strasse', 'au.plz', 'au.ort', 'au.land', 'au.bundesstaat', 'au.telefon', 'au.telefax', 'au.email', 'au.anschreiben', //'au.betreff', //'au.vertrieb', //'au.vertriebid', // Index //'au.deckungsbeitragcalc', //'au.deckungsbeitrag', 'au.gesamtsumme', 'au.erloes_netto', 'au.umsatz_netto', //'au.provision', //'au.provision_summe', //'au.keinsteuersatz', 'au.lager_ok', 'au.porto_ok', 'au.ust_ok', 'au.check_ok', 'au.vorkasse_ok', 'au.nachnahme_ok', 'au.reserviert_ok', 'au.partnerid', 'au.folgebestaetigung', 'au.zahlungsmail', 'au.liefertermin_ok', 'au.teillieferung_moeglich', 'au.kreditlimit_ok', 'au.kreditlimit_freigabe', 'au.liefersperre_ok', 'au.teillieferungvon', // Index 'au.teillieferungnummer', 'au.autofreigabe', 'au.freigabe', 'au.nachbesserung', 'au.abgeschlossen', 'au.nachlieferung', 'au.versandart', 'au.lieferbedingung', 'au.autoversand', 'au.keinporto', 'au.art', 'au.fastlane', 'au.lieferungtrotzsperre', 'au.keinestornomail', 'au.keinetrackingmail', 'au.zahlungsmailcounter', 'au.zahlungsweise', 'au.zahlungszieltage', 'au.zahlungszieltageskonto', 'au.zahlungszielskonto', 'au.skontobetrag', 'au.skontoberechnet', //'au.bank_inhaber', //'au.bank_institut', //'au.bank_blz', //'au.bank_konto', //'au.kreditkarte_typ', //'au.kreditkarte_inhaber', //'au.kreditkarte_nummer', //'au.kreditkarte_pruefnummer', //'au.kreditkarte_monat', //'au.kreditkarte_jahr', 'au.abweichendelieferadresse', 'au.liefername', 'au.liefertitel', 'au.lieferansprechpartner', 'au.lieferabteilung', 'au.lieferunterabteilung', 'au.lieferadresszusatz', 'au.lieferstrasse', 'au.lieferort', 'au.lieferplz', 'au.lieferland', 'au.lieferbundesstaat', 'au.lieferemail', 'au.lieferid', 'au.liefergln', 'au.versendet', 'au.versendet_am', 'au.versendet_per', 'au.versendet_durch', //'au.inbearbeitung', //'au.logdatei', 'au.angebotid', //'au.rechnungid', //'au.anfrageid', //'au.gruppe', // Index //'au.usereditid', // Index //'au.useredittimestamp', //'au.realrabatt', //'au.rabatt', //'au.rabatt1', //'au.rabatt2', //'au.rabatt3', //'au.rabatt4', //'au.rabatt5', //'au.steuersatz_normal', //'au.steuersatz_zwischen', //'au.steuersatz_ermaessigt', //'au.steuersatz_starkermaessigt', //'au.steuersatz_dienstleistung', //'au.schreibschutz', //'au.pdfarchiviert', //'au.pdfarchiviertversion', //'au.ohne_briefpapier', //'au.projektfiliale', //'au.zuarchivieren', //'au.angelegtam', //'au.partnerausgezahlt', //'au.partnerausgezahltam', //'au.kennen', //'au.rma', //'au.transaktionsnummer', // Index //'au.vorabbezahltmarkieren', //'au.einzugsdatum', //'au.auftragseingangper', //'au.systemfreitext', //'au.saldo', //'au.saldogeprueft', //'au.rabatteportofestschreiben', //'au.deliverythresholdvatid', //'au.lieferantennummer', //'au.lieferantkdrnummer', // Index //'au.webid', //'au.cronjobkommissionierung', //'au.standardlager', //'au.kommissionskonsignationslager', //'au.extsoll', 'au.gln', 'au.bearbeiterid', 'au.bearbeiter', 'au.ohne_artikeltext', 'au.ustid', 'au.ust_befreit', 'au.ust_inner', 'au.anzeigesteuer', 'au.waehrung', 'au.sprache', 'au.kurs', 'au.kostenstelle', 'au.freitext', 'au.internebemerkung', 'au.bodyzusatz', 'au.shop', 'au.shopextid', 'au.shopextstatus', //'au.stornogrund', //'au.stornosonstiges', //'au.stornorueckzahlung', //'au.stornobetrag', //'au.stornobankinhaber', //'au.stornobankkonto', //'au.stornobankblz', //'au.stornobankbank', //'au.stornogutschrift', //'au.stornogutschriftbeleg', //'au.stornowareerhalten', //'au.stornomanuellebearbeitung', //'au.stornokommentar', //'au.stornobezahlt', //'au.stornobezahltam', //'au.stornobezahltvon', //'au.stornoabgeschlossen', //'au.stornorueckzahlungper', //'au.stornowareerhaltenretour', //'au.transaktionsnummer', //'au.packstation_inhaber', //'au.packstation_station', //'au.packstation_ident', //'au.packstation_plz', //'au.packstation_ort', ])->from(self::TABLE_NAME . ' AS au'); } /** * @return SelectQuery */ protected function selectIdsQuery() { return $this->selectAllQuery()->where('s.id IN (:ids)'); } /** * @return false */ protected function insertQuery() { return false; } /** * @return false */ protected function updateQuery() { return false; } /** * @return false */ protected function deleteQuery() { return false; } }