Aktenzeichen-Muster je Vorlage, Startskript für die Entwicklung
Richtigstellung zuerst: der vorige Commit trägt die Nachricht "Nichts davon gebaut", enthält aber bereits die Schema-Änderung an CaseTemplate und CaseCounter. Ein abgebrochener Aufruf hatte die Datei schon geschrieben, und das nachfolgende `git add -A` hat sie mitgenommen. Die Nachricht war damit falsch. Hier ist die Änderung vollständig und geprüft. Das Muster des Aktenzeichens gehört zur Vorlage: Präfix und Stellenzahl je Fallart, ein Nummernkreis je Präfix und Jahr. Die Abteilung führt gewachsene Präfixe wie AKT-PA-2026-62843 neben dem AfiS-2026-0042 aus dem Glossar. Die Migration ist von Hand geschrieben, weil der Wechsel des Primärschlüssels auf CaseCounter den bestehenden Zähler erhalten muss: eine zurückgesetzte Nummer wäre ein doppeltes Aktenzeichen. Vorher und nachher geprüft. parseCaseNumber zerlegt von hinten, damit Präfixe mit Bindestrich funktionieren. Ein Test belegt, dass AKT-PA und AfiS getrennte Nummernkreise führen. Dazu start.sh für die lokale Entwicklung, solange der Dockge-Stack nicht läuft: Datenbank hochfahren, Migrationen, Grundzustand, Worker und Web. Mit --ohne-worker für Arbeit ohne Discord und --nur-db für die Datenbank allein.
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
-- Aktenzeichen-Muster je Vorlage, siehe docs/13-entscheidungen.md.
|
||||
--
|
||||
-- Die Abteilung führt gewachsene Präfixe wie "AKT-PA" mit fünfstelliger
|
||||
-- Nummer. Das Muster gehört deshalb zur Vorlage, nicht ins Programm.
|
||||
|
||||
ALTER TABLE "CaseTemplate"
|
||||
ADD COLUMN "numberPrefix" TEXT NOT NULL DEFAULT 'AfiS',
|
||||
ADD COLUMN "numberPadding" INTEGER NOT NULL DEFAULT 4;
|
||||
|
||||
-- Der Nummernkreis läuft ab jetzt je Präfix und Jahr. Bestehende Zähler
|
||||
-- gehören zum bisherigen Präfix "AfiS" und werden nicht zurückgesetzt:
|
||||
-- eine erneut vergebene Nummer wäre ein doppeltes Aktenzeichen.
|
||||
ALTER TABLE "CaseCounter" ADD COLUMN "prefix" TEXT NOT NULL DEFAULT 'AfiS';
|
||||
|
||||
ALTER TABLE "CaseCounter" DROP CONSTRAINT "CaseCounter_pkey";
|
||||
ALTER TABLE "CaseCounter" ADD CONSTRAINT "CaseCounter_pkey" PRIMARY KEY ("prefix", "year");
|
||||
|
||||
-- Der Vorgabewert hat nur die vorhandenen Zeilen umgestellt; neue Zeilen
|
||||
-- nennen ihr Präfix ausdrücklich.
|
||||
ALTER TABLE "CaseCounter" ALTER COLUMN "prefix" DROP DEFAULT;
|
||||
Reference in New Issue
Block a user