feat(archiv): Uebersicht, Volltextsuche und Druckansicht
Der Einstieg am Schreibtisch und das Gedaechtnis der Anwendung. Die Uebersicht
sortiert nach Dringlichkeit — ueberfaellig zuerst, und das ist das Einzige in
Warnfarbe; alles andere auf der Seite ist Auskunft.
Das Archiv sucht ueber Titel, Notizen, erfasste Werte und Kommentare in einer
SQL-Anweisung: `Schrittergebnis.wert` ist ein Json, und nur `("wert")::text`
trifft den Trigramm-Index aus #006. Vor allem aber gehoert die Fundstelle zum
Treffer — ein Treffer ohne sichtbaren Grund ist fuer den Suchenden wertlos.
Die Druckansicht ist ein eigenes Lesemodell und kein Schalter an
`laufZumAbarbeiten`: dort entsteht beim Fuellen der Befehle ein Passwort, und auf
einem Blatt, das jemand abheftet, darf keines stehen. Vom Mitarbeiter holt sie
nur Name, UPN und Abteilung — nicht alles und dann gefiltert.
Der unabhaengige Review fand zwei Blocker, beide im Dashboard: „ueberfaellig“
verglich mit dem Augenblick statt mit dem Tagesbeginn, und der Schnellstart
zaehlte Laeufe fremder Kunden mit. Was „ueberfaellig“ heisst, steht seitdem in
`src/lib/fristen.ts` — eine Regel fuer Lesemodell und Anzeige.
Closes #15
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
e7a2e2d5c7
commit
8146e33f48
@@ -190,6 +190,26 @@ const SEITEN: readonly Seite[] = [
|
||||
await tab.waitForURL(/\/t\/LZ-/);
|
||||
},
|
||||
},
|
||||
{ name: "archiv", pfad: "/archiv?suche=Inventar" },
|
||||
{
|
||||
/*
|
||||
* Die Druckansicht braucht einen Lauf, und welcher das ist, weiss nur die
|
||||
* Datenbank. Also den Weg gehen, den auch ein Mensch geht: von der Laufliste
|
||||
* aus zum Lauf und von dort auf „Drucken“.
|
||||
*/
|
||||
name: "druckansicht",
|
||||
pfad: "/laeufe",
|
||||
hell: true,
|
||||
vorbereiten: async (tab) => {
|
||||
await tab
|
||||
.getByRole("link", { name: /NB-001/ })
|
||||
.first()
|
||||
.click();
|
||||
await tab.waitForURL(/\/laeufe\/[^/]+$/);
|
||||
await tab.getByRole("link", { name: "Drucken" }).click();
|
||||
await tab.waitForURL(/\/drucken\/lauf\//);
|
||||
},
|
||||
},
|
||||
{ name: "etikett-62x29", pfad: "/drucken/etiketten?layout=etikett", hell: true },
|
||||
{ name: "etiketten-a4", pfad: "/drucken/etiketten?layout=bogen", hell: true },
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user