From 0753a3bc8a9128c2c46ac9d8b4bea0c0fd439cdb Mon Sep 17 00:00:00 2001 From: Nick Szaunig Date: Wed, 19 Aug 2026 08:06:09 +0200 Subject: [PATCH] SQL and Seed into App --- .../migration.sql | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 prisma/migrations/20260819050000_fix_schema_migration_drift/migration.sql diff --git a/prisma/migrations/20260819050000_fix_schema_migration_drift/migration.sql b/prisma/migrations/20260819050000_fix_schema_migration_drift/migration.sql new file mode 100644 index 0000000..2b8f4dc --- /dev/null +++ b/prisma/migrations/20260819050000_fix_schema_migration_drift/migration.sql @@ -0,0 +1,33 @@ +-- Schema/Migrations-Drift beheben: diese Felder stehen in schema.prisma, +-- wurden aber nie in einer Migration angelegt (vermutlich per "db push" +-- lokal getestet statt per "migrate dev" committet). Gefunden per +-- Abgleich aller Modelle in schema.prisma gegen CREATE TABLE/ADD COLUMN in +-- prisma/migrations/*/migration.sql — kein weiterer Drift mehr offen. + +-- customers.lastTotpStep (TOTP-Replay-Schutz, siehe schema.prisma-Kommentar) +ALTER TABLE "customers" ADD COLUMN "lastTotpStep" INTEGER; + +-- stock_notifications.locale (Sprachwahl fuer die Benachrichtigungs-Mail) +ALTER TABLE "stock_notifications" ADD COLUMN "locale" TEXT NOT NULL DEFAULT 'de'; + +-- orders.locale (Sprachwahl fuer asynchron versendete Bestell-E-Mails) +ALTER TABLE "orders" ADD COLUMN "locale" TEXT NOT NULL DEFAULT 'de'; + +-- orders.giftMessage (optionale persoenliche Nachricht bei Geschenkbestellungen) +ALTER TABLE "orders" ADD COLUMN "giftMessage" TEXT; + +-- discount_codes.minQuantity (Mengenschwelle fuer automatische Mengenrabatte) +ALTER TABLE "discount_codes" ADD COLUMN "minQuantity" INTEGER; + +-- site_content: komplette Tabelle fehlte — admin-editierbare Website-Inhalte +-- (Firmendaten, Homepage-/Rechtstexte-Overlay ueber die statischen +-- i18n-Dictionaries, siehe lib/content-registry.ts) waeren ohne diese +-- Tabelle bei jedem Seitenaufruf mit P2021 fehlgeschlagen. +CREATE TABLE "site_content" ( + "key" TEXT NOT NULL, + "valueDe" TEXT NOT NULL, + "valueEn" TEXT, + "updatedAt" TIMESTAMP(3) NOT NULL, + + CONSTRAINT "site_content_pkey" PRIMARY KEY ("key") +);