orders.php: Auftragsliste nach letzter Bearbeitung sortieren [deploy]
All checks were successful
Deploy netdiag / deploy (push) Successful in 13s

- Spalte c.tms in SELECT aufgenommen (Dolibarr-Änderungszeitstempel)
- ORDER BY c.tms DESC statt date_commande DESC — zuletzt bearbeitete
  Aufträge stehen oben, passend zur App-Anzeige "bearb. <Datum>"
- tms-Feld in der API-Antwort ergänzt
- README: Hinweis auf Deploy-Pipeline ergänzt

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Eduard Wisch 2026-05-19 22:05:09 +02:00
parent 5b40c21d90
commit 4aa26962c9
2 changed files with 7 additions and 2 deletions

View file

@ -17,6 +17,9 @@ Messungen und hängt die Protokolle dauerhaft an **Kunde** und **Auftrag**.
## Installation ## Installation
1. Verzeichnis `netdiag/` nach `htdocs/custom/` auf den Dolibarr-Server kopieren. 1. Verzeichnis `netdiag/` nach `htdocs/custom/` auf den Dolibarr-Server kopieren.
Auf dem Produktivsystem übernimmt das die Forgejo-Pipeline
(`.forgejo/workflows/deploy.yml`) — Commit mit `[deploy]` in der Message
synct das Modul automatisch auf den Server.
2. In Dolibarr: **Einrichtung → Module → NetDiag** aktivieren. 2. In Dolibarr: **Einrichtung → Module → NetDiag** aktivieren.
3. Beim Aktivieren werden die Tabellen `llx_netdiag_protocol`, 3. Beim Aktivieren werden die Tabellen `llx_netdiag_protocol`,
`llx_netdiag_device`, `llx_netdiag_measurement` angelegt und ein `llx_netdiag_device`, `llx_netdiag_measurement` angelegt und ein

View file

@ -75,7 +75,7 @@ if ($id > 0) {
} }
// ---- Auftragsliste ---- // ---- Auftragsliste ----
$sql = "SELECT c.rowid, c.ref, c.ref_client, c.date_commande, c.fk_statut, c.note_public,"; $sql = "SELECT c.rowid, c.ref, c.ref_client, c.date_commande, c.tms, c.fk_statut, c.note_public,";
$sql .= " s.rowid as socid, s.nom as socname, s.address, s.zip, s.town,"; $sql .= " s.rowid as socid, s.nom as socname, s.address, s.zip, s.town,";
$sql .= " (SELECT COUNT(*) FROM ".$prefix."netdiag_protocol p WHERE p.fk_commande = c.rowid) as protocolcount"; $sql .= " (SELECT COUNT(*) FROM ".$prefix."netdiag_protocol p WHERE p.fk_commande = c.rowid) as protocolcount";
$sql .= " FROM ".$prefix."commande as c"; $sql .= " FROM ".$prefix."commande as c";
@ -88,7 +88,8 @@ if ($onlyopen) {
if ($q !== '') { if ($q !== '') {
$sql .= " AND (".natural_search(array('c.ref', 'c.ref_client', 's.nom', 's.town'), $q, 0, 1).")"; $sql .= " AND (".natural_search(array('c.ref', 'c.ref_client', 's.nom', 's.town'), $q, 0, 1).")";
} }
$sql .= " ORDER BY c.date_commande DESC, c.rowid DESC"; // Zuletzt bearbeitete zuerst — c.tms wird von Dolibarr bei jeder Änderung gesetzt
$sql .= " ORDER BY c.tms DESC, c.rowid DESC";
$sql .= $db->plimit($limit, 0); $sql .= $db->plimit($limit, 0);
$resql = $db->query($sql); $resql = $db->query($sql);
@ -102,6 +103,7 @@ while ($obj = $db->fetch_object($resql)) {
'ref' => $obj->ref, 'ref' => $obj->ref,
'refClient' => $obj->ref_client, 'refClient' => $obj->ref_client,
'date' => $db->jdate($obj->date_commande), 'date' => $db->jdate($obj->date_commande),
'tms' => $db->jdate($obj->tms),
'status' => (int) $obj->fk_statut, 'status' => (int) $obj->fk_statut,
'open' => ((int) $obj->fk_statut >= 0 && (int) $obj->fk_statut < 3), 'open' => ((int) $obj->fk_statut >= 0 && (int) $obj->fk_statut < 3),
'note' => $obj->note_public, 'note' => $obj->note_public,