added Station Add, Delete Update

This commit is contained in:
PxlLoewe
2025-02-16 17:53:55 +01:00
parent 883c47bdce
commit ac492b934f
20 changed files with 615 additions and 33 deletions

View File

@@ -1,2 +1,6 @@
export { prisma } from './prisma/client'; // exports instance of prisma
export * from './generated/client'; // exports generated types from prisma
import * as zodTypes from './generated/zod';
export const zod = zodTypes;

View File

@@ -5,16 +5,18 @@
"main": "generated/client/index.js",
"types": "generated/client/index.d.ts",
"scripts": {
"db:generate": "npx prisma generate",
"db:generate": "npx prisma generate && npx prisma generate zod",
"db:migrate": "npx prisma migrate dev",
"db:deploy": "npx prisma migrate deploy"
},
"exports": {
".": "./index.ts"
".": "./index.ts",
"./zod": "./zod.ts"
},
"author": "",
"license": "ISC",
"dependencies": {
"@prisma/client": "^6.2.1"
"@prisma/client": "^6.2.1",
"zod-prisma-types": "^3.2.4"
}
}

View File

@@ -0,0 +1,32 @@
-- CreateEnum
CREATE TYPE "BosUse" AS ENUM ('PRIMARY', 'SECONDARY', 'DUAL_USE');
-- CreateEnum
CREATE TYPE "Country" AS ENUM ('DE', 'AT', 'CH');
-- CreateTable
CREATE TABLE "Station" (
"id" SERIAL NOT NULL,
"bosUse" "BosUse" NOT NULL,
"bosCallsign" TEXT NOT NULL,
"bosCallsignShort" TEXT NOT NULL,
"bosRadioArea" TEXT NOT NULL,
"country" "Country" NOT NULL,
"operator" TEXT NOT NULL,
"aircraft" TEXT NOT NULL,
"aircraftRegistration" TEXT NOT NULL,
"aircraftSpeed" INTEGER NOT NULL,
"hasWinch" BOOLEAN NOT NULL,
"is24h" BOOLEAN NOT NULL,
"hasNvg" BOOLEAN NOT NULL,
"locationState" TEXT NOT NULL,
"locationStateShort" TEXT NOT NULL,
"hasRope" BOOLEAN NOT NULL,
"fir" TEXT NOT NULL,
"latitude" DOUBLE PRECISION NOT NULL,
"longitude" DOUBLE PRECISION NOT NULL,
"atcCallsign" TEXT NOT NULL,
"hideRangeRings" BOOLEAN NOT NULL,
CONSTRAINT "Station_pkey" PRIMARY KEY ("id")
);

View File

@@ -7,7 +7,13 @@
generator client {
provider = "prisma-client-js"
previewFeatures = ["prismaSchemaFolder"]
output = "../../generated/client"
output = "../../generated/client"
}
generator zod {
provider = "zod-prisma-types"
output = "../../generated/zod"
createOptionalDefaultValuesTypes = true
}
datasource db {

View File

@@ -0,0 +1,35 @@
enum BosUse {
PRIMARY
SECONDARY
DUAL_USE
}
enum Country {
DE
AT
CH
}
model Station {
id Int @id @default(autoincrement())
bosUse BosUse
bosCallsign String
bosCallsignShort String
bosRadioArea String
country Country
operator String
aircraft String
aircraftRegistration String
aircraftSpeed Int
hasWinch Boolean
is24h Boolean
hasNvg Boolean
locationState String
locationStateShort String
hasRope Boolean
fir String
latitude Float
longitude Float
atcCallsign String
hideRangeRings Boolean
}

1
packages/database/zod.ts Normal file
View File

@@ -0,0 +1 @@
export * from './generated/zod';