Files
Materialschein/server/prisma/schema.prisma
T
Fidelis Huber 36d5246187
Build and Deploy / version (push) Successful in 1s
Build and Deploy / build (push) Successful in 14s
Build and Deploy / deploy (push) Successful in 2s
Löschfunktion für abgeschlossene Projekte + VenDoc-CSV-Export
Abgeschlossene Materialscheine können jetzt gelöscht werden (serverseitig
auf Status=Abgeschlossen beschränkt, mit Bestätigungsdialog). Neues Feld
Auftrags-Nr. am Projekt für die Zuordnung zum VenDoc-Auftrag. Neuer CSV-Export
(Semikolon, Komma-Dezimal, UTF-8 BOM) als Positionstabelle für den Import ins
ERP.
2026-09-11 08:08:19 +02:00

59 lines
1.4 KiB
Plaintext

generator client {
provider = "prisma-client-js"
binaryTargets = ["native", "linux-musl-openssl-3.0.x"]
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
enum ProjektStatus {
Aktiv
Abgeschlossen
}
model Projekt {
id String @id @default(cuid())
titel String
auftraggeber String?
auftragsNr String?
datum DateTime? @db.Date
monteur String?
notiz String?
status ProjektStatus @default(Aktiv)
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
material Material[]
@@map("projekte")
}
model Material {
id String @id @default(cuid())
projektId String
projekt Projekt @relation(fields: [projektId], references: [id], onDelete: Cascade)
bezeichnung String
artNr String?
menge Decimal @db.Decimal(10, 2)
einheit String
notiz String?
erstelltVon String?
createdAt DateTime @default(now())
@@index([projektId])
@@map("material")
}
// Lokales Konto als Fallback, falls Microsoft-Login nicht verfügbar ist.
// passwordHash ist ein bcrypt-Hash, das Klartext-Passwort wird nie gespeichert.
model User {
id String @id @default(cuid())
username String @unique
passwordHash String
name String?
createdAt DateTime @default(now())
@@map("users")
}