diff --git a/packages/db/prisma/schema.prisma b/packages/db/prisma/schema.prisma index 160787a..8c3bc05 100644 --- a/packages/db/prisma/schema.prisma +++ b/packages/db/prisma/schema.prisma @@ -145,6 +145,12 @@ model CaseTemplate { description String? isActive Boolean @default(true) fields Json // TemplateField[] + + /// Muster des Aktenzeichens, siehe docs/13-entscheidungen.md. Die Abteilung + /// fuehrt gewachsene Praefixe wie "AKT-PA"; der Nummernkreis laeuft je + /// Praefix und Jahr, damit zwei Fallarten sich nicht in die Quere kommen. + numberPrefix String @default("AfiS") + numberPadding Int @default(4) createdAt DateTime @default(now()) createdById String? @@ -209,11 +215,14 @@ enum CaseStatus { SEALED } -/// Kollisionsfreie Vergabe des Aktenzeichens. Gelesen mit SELECT ... FOR UPDATE -/// in derselben Transaktion wie das Anlegen des Falls. +/// Kollisionsfreie Vergabe des Aktenzeichens, ein Nummernkreis je Praefix und +/// Jahr. Hochgezaehlt in derselben Transaktion wie das Anlegen des Falls. model CaseCounter { - year Int @id - lastNumber Int @default(0) + prefix String + year Int + lastNumber Int @default(0) + + @@id([prefix, year]) } model CaseSection {