fix(aufgaben): Ideen aus Aufgabenliste und Inbox heraushalten
Der Fehler fiel erst in den aufgenommenen Bildern auf: Ideen standen mitten in der Aufgabenliste, obwohl der ganze Sinn der getrennten Ideenseite ist, dass sie das nicht tun. Ohne Termin hätten sie dort entweder unsichtbar unten gestanden oder mit erfundenem Termin oben. Der Filter kennt jetzt ohneIdeen; ein ausdrücklich gewählter Typ gewinnt, wer nach Ideen filtert, sieht sie also weiterhin. Die Startseite filterte Ideen bisher von Hand nach dem Laden — das erledigt jetzt dieselbe Abfrage wie überall sonst. Ein E2E-Test hält den Fall fest. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
7c8fe10f35
commit
144457b9f0
@@ -38,6 +38,12 @@ export type AufgabenFilter = {
|
||||
nurInbox?: boolean | undefined
|
||||
/** Nur was noch Arbeit bedeutet. */
|
||||
nurOffen?: boolean | undefined
|
||||
/**
|
||||
* Ideen heraushalten. Sie haben ihre eigene Ansicht und sollen sich nicht
|
||||
* in die Aufgabenliste drängen — sie hätten dort keinen Termin und stünden
|
||||
* entweder unsichtbar unten oder mit erfundenem Termin oben.
|
||||
*/
|
||||
ohneIdeen?: boolean | undefined
|
||||
/** Freitext über Titel und Notiz. */
|
||||
suche?: string | undefined
|
||||
}
|
||||
@@ -49,7 +55,11 @@ function alsWhere(filter: AufgabenFilter): Prisma.AufgabeWhereInput {
|
||||
else if (filter.bereichId) where.bereichId = filter.bereichId
|
||||
|
||||
if (filter.projektId) where.projektId = filter.projektId
|
||||
|
||||
// Ein ausdrücklich gewählter Typ gewinnt: wer nach Ideen filtert, will sie
|
||||
// auch sehen.
|
||||
if (filter.typ) where.typ = filter.typ
|
||||
else if (filter.ohneIdeen) where.typ = { not: 'IDEE' }
|
||||
|
||||
if (filter.status) where.status = filter.status
|
||||
else if (filter.nurOffen) where.status = { in: ['OFFEN', 'GEPLANT', 'WARTET'] }
|
||||
|
||||
Reference in New Issue
Block a user