sche.prisma und anmeldung
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- Added the required column `zugewiesenId` to the `Anmeldung` table without a default value. This is not possible if the table is not empty.
|
||||
|
||||
*/
|
||||
-- RedefineTables
|
||||
PRAGMA defer_foreign_keys=ON;
|
||||
PRAGMA foreign_keys=OFF;
|
||||
CREATE TABLE "new_Anmeldung" (
|
||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||
"anrede" TEXT NOT NULL,
|
||||
"vorname" TEXT NOT NULL,
|
||||
"nachname" TEXT NOT NULL,
|
||||
"geburtsdatum" TEXT NOT NULL,
|
||||
"strasse" TEXT NOT NULL,
|
||||
"hausnummer" TEXT NOT NULL,
|
||||
"ort" TEXT NOT NULL,
|
||||
"plz" TEXT NOT NULL,
|
||||
"telefon" TEXT NOT NULL,
|
||||
"email" TEXT NOT NULL,
|
||||
"noteDeutsch" INTEGER NOT NULL,
|
||||
"noteMathe" INTEGER NOT NULL,
|
||||
"sozialverhalten" TEXT NOT NULL,
|
||||
"schulart" TEXT NOT NULL,
|
||||
"motivation" TEXT NOT NULL,
|
||||
"praktikumId" INTEGER NOT NULL,
|
||||
"wunsch1Id" INTEGER NOT NULL,
|
||||
"wunsch2Id" INTEGER NOT NULL,
|
||||
"wunsch3Id" INTEGER NOT NULL,
|
||||
"status" TEXT NOT NULL DEFAULT 'OFFEN',
|
||||
"zugewiesenId" INTEGER NOT NULL,
|
||||
"timestamp" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT "Anmeldung_wunsch1Id_fkey" FOREIGN KEY ("wunsch1Id") REFERENCES "Dienststelle" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "Anmeldung_wunsch2Id_fkey" FOREIGN KEY ("wunsch2Id") REFERENCES "Dienststelle" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "Anmeldung_wunsch3Id_fkey" FOREIGN KEY ("wunsch3Id") REFERENCES "Dienststelle" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "Anmeldung_zugewiesenId_fkey" FOREIGN KEY ("zugewiesenId") REFERENCES "Dienststelle" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
||||
);
|
||||
INSERT INTO "new_Anmeldung" ("anrede", "email", "geburtsdatum", "hausnummer", "id", "motivation", "nachname", "noteDeutsch", "noteMathe", "ort", "plz", "praktikumId", "schulart", "sozialverhalten", "strasse", "telefon", "timestamp", "vorname", "wunsch1Id", "wunsch2Id", "wunsch3Id") SELECT "anrede", "email", "geburtsdatum", "hausnummer", "id", "motivation", "nachname", "noteDeutsch", "noteMathe", "ort", "plz", "praktikumId", "schulart", "sozialverhalten", "strasse", "telefon", "timestamp", "vorname", "wunsch1Id", "wunsch2Id", "wunsch3Id" FROM "Anmeldung";
|
||||
DROP TABLE "Anmeldung";
|
||||
ALTER TABLE "new_Anmeldung" RENAME TO "Anmeldung";
|
||||
CREATE UNIQUE INDEX "Anmeldung_email_key" ON "Anmeldung"("email");
|
||||
PRAGMA foreign_keys=ON;
|
||||
PRAGMA defer_foreign_keys=OFF;
|
||||
@@ -0,0 +1,38 @@
|
||||
-- RedefineTables
|
||||
PRAGMA defer_foreign_keys=ON;
|
||||
PRAGMA foreign_keys=OFF;
|
||||
CREATE TABLE "new_Anmeldung" (
|
||||
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
||||
"anrede" TEXT NOT NULL,
|
||||
"vorname" TEXT NOT NULL,
|
||||
"nachname" TEXT NOT NULL,
|
||||
"geburtsdatum" TEXT NOT NULL,
|
||||
"strasse" TEXT NOT NULL,
|
||||
"hausnummer" TEXT NOT NULL,
|
||||
"ort" TEXT NOT NULL,
|
||||
"plz" TEXT NOT NULL,
|
||||
"telefon" TEXT NOT NULL,
|
||||
"email" TEXT NOT NULL,
|
||||
"noteDeutsch" INTEGER NOT NULL,
|
||||
"noteMathe" INTEGER NOT NULL,
|
||||
"sozialverhalten" TEXT NOT NULL,
|
||||
"schulart" TEXT NOT NULL,
|
||||
"motivation" TEXT NOT NULL,
|
||||
"praktikumId" INTEGER NOT NULL,
|
||||
"wunsch1Id" INTEGER NOT NULL,
|
||||
"wunsch2Id" INTEGER NOT NULL,
|
||||
"wunsch3Id" INTEGER NOT NULL,
|
||||
"status" TEXT NOT NULL DEFAULT 'OFFEN',
|
||||
"zugewiesenId" INTEGER,
|
||||
"timestamp" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT "Anmeldung_wunsch1Id_fkey" FOREIGN KEY ("wunsch1Id") REFERENCES "Dienststelle" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "Anmeldung_wunsch2Id_fkey" FOREIGN KEY ("wunsch2Id") REFERENCES "Dienststelle" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "Anmeldung_wunsch3Id_fkey" FOREIGN KEY ("wunsch3Id") REFERENCES "Dienststelle" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
||||
CONSTRAINT "Anmeldung_zugewiesenId_fkey" FOREIGN KEY ("zugewiesenId") REFERENCES "Dienststelle" ("id") ON DELETE SET NULL ON UPDATE CASCADE
|
||||
);
|
||||
INSERT INTO "new_Anmeldung" ("anrede", "email", "geburtsdatum", "hausnummer", "id", "motivation", "nachname", "noteDeutsch", "noteMathe", "ort", "plz", "praktikumId", "schulart", "sozialverhalten", "status", "strasse", "telefon", "timestamp", "vorname", "wunsch1Id", "wunsch2Id", "wunsch3Id", "zugewiesenId") SELECT "anrede", "email", "geburtsdatum", "hausnummer", "id", "motivation", "nachname", "noteDeutsch", "noteMathe", "ort", "plz", "praktikumId", "schulart", "sozialverhalten", "status", "strasse", "telefon", "timestamp", "vorname", "wunsch1Id", "wunsch2Id", "wunsch3Id", "zugewiesenId" FROM "Anmeldung";
|
||||
DROP TABLE "Anmeldung";
|
||||
ALTER TABLE "new_Anmeldung" RENAME TO "Anmeldung";
|
||||
CREATE UNIQUE INDEX "Anmeldung_email_key" ON "Anmeldung"("email");
|
||||
PRAGMA foreign_keys=ON;
|
||||
PRAGMA defer_foreign_keys=OFF;
|
||||
BIN
prisma/praktika.db-journal
Normal file
BIN
prisma/praktika.db-journal
Normal file
Binary file not shown.
@@ -21,6 +21,7 @@ model Dienststelle {
|
||||
anmeldungenWunsch1 Anmeldung[] @relation("Wunsch1")
|
||||
anmeldungenWunsch2 Anmeldung[] @relation("Wunsch2")
|
||||
anmeldungenWunsch3 Anmeldung[] @relation("Wunsch3")
|
||||
zugewiesene Anmeldung[] @relation("Zugewiesen")
|
||||
}
|
||||
|
||||
model Praktikumszeitraum {
|
||||
@@ -30,6 +31,12 @@ model Praktikumszeitraum {
|
||||
endDatum DateTime
|
||||
}
|
||||
|
||||
enum Status {
|
||||
OFFEN
|
||||
ANGENOMMEN
|
||||
ABGELEHNT
|
||||
}
|
||||
|
||||
model Anmeldung {
|
||||
id Int @id @default(autoincrement())
|
||||
anrede String
|
||||
@@ -50,13 +57,15 @@ model Anmeldung {
|
||||
|
||||
praktikumId Int
|
||||
|
||||
wunsch1Id Int
|
||||
wunsch2Id Int
|
||||
wunsch3Id Int
|
||||
|
||||
wunsch1 Dienststelle @relation("Wunsch1", fields: [wunsch1Id], references: [id])
|
||||
wunsch2 Dienststelle @relation("Wunsch2", fields: [wunsch2Id], references: [id])
|
||||
wunsch3 Dienststelle @relation("Wunsch3", fields: [wunsch3Id], references: [id])
|
||||
wunsch1 Dienststelle @relation("Wunsch1", fields: [wunsch1Id], references: [id])
|
||||
wunsch1Id Int
|
||||
wunsch2 Dienststelle @relation("Wunsch2", fields: [wunsch2Id], references: [id])
|
||||
wunsch2Id Int
|
||||
wunsch3 Dienststelle @relation("Wunsch3", fields: [wunsch3Id], references: [id])
|
||||
wunsch3Id Int
|
||||
status Status @default(OFFEN)
|
||||
zugewiesenId Int?
|
||||
zugewiesen Dienststelle? @relation("Zugewiesen", fields: [zugewiesenId], references: [id])
|
||||
|
||||
timestamp DateTime @default(now())
|
||||
|
||||
|
||||
@@ -6,7 +6,9 @@ import path from 'path';
|
||||
|
||||
const prisma = new PrismaClient();
|
||||
|
||||
function checkAuth(cookies: any) {
|
||||
import type { Cookies } from '@sveltejs/kit';
|
||||
|
||||
function checkAuth(cookies: Cookies) {
|
||||
return cookies.get('admin_session') === 'true';
|
||||
}
|
||||
|
||||
@@ -44,7 +46,10 @@ export const DELETE: RequestHandler = async ({ cookies, url }) => {
|
||||
try {
|
||||
await fs.unlink(filePath);
|
||||
} catch (err) {
|
||||
console.warn(`Datei konnte nicht gelöscht werden: ${filePath}`, err.message);
|
||||
console.warn(
|
||||
`Datei konnte nicht gelöscht werden: ${filePath}`,
|
||||
err instanceof Error ? err.message : String(err)
|
||||
);
|
||||
// Fehler ignorieren, Datei evtl. manuell entfernt
|
||||
}
|
||||
}
|
||||
@@ -61,4 +66,5 @@ export const DELETE: RequestHandler = async ({ cookies, url }) => {
|
||||
console.error('Fehler beim Löschen der Anmeldung:', error);
|
||||
return json({ error: 'Löschen fehlgeschlagen' }, { status: 500 });
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -54,7 +54,8 @@ export async function POST({ request }) {
|
||||
wunsch3Id: parseInt(get('wunsch3Id')),
|
||||
pdfs: {
|
||||
create: gespeichertePfade.map((pfad) => ({ pfad }))
|
||||
}
|
||||
},
|
||||
zugewiesenId: null
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user