78 lines
2.5 KiB
SQL
78 lines
2.5 KiB
SQL
-- CreateTable
|
|
CREATE TABLE "Report" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"employeeId" INTEGER NOT NULL,
|
|
"createdDate" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedDate" DATETIME NOT NULL,
|
|
"shift" TEXT NOT NULL,
|
|
"areaId" INTEGER NOT NULL,
|
|
"dredgerLocationId" INTEGER NOT NULL,
|
|
"dredgerLineLength" INTEGER NOT NULL,
|
|
"reclamationLocationId" INTEGER NOT NULL,
|
|
"shoreConnection" INTEGER NOT NULL,
|
|
"reclamationHeight" JSONB NOT NULL,
|
|
"pipelineLength" JSONB NOT NULL,
|
|
"stats" JSONB NOT NULL,
|
|
"timeSheet" JSONB NOT NULL,
|
|
"stoppages" JSONB NOT NULL,
|
|
"notes" TEXT,
|
|
CONSTRAINT "Report_employeeId_fkey" FOREIGN KEY ("employeeId") REFERENCES "Employee" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
|
CONSTRAINT "Report_areaId_fkey" FOREIGN KEY ("areaId") REFERENCES "Area" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
|
CONSTRAINT "Report_dredgerLocationId_fkey" FOREIGN KEY ("dredgerLocationId") REFERENCES "DredgerLocation" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
|
|
CONSTRAINT "Report_reclamationLocationId_fkey" FOREIGN KEY ("reclamationLocationId") REFERENCES "ReclamationLocation" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Area" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"name" TEXT NOT NULL
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "DredgerLocation" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"name" TEXT NOT NULL,
|
|
"class" TEXT NOT NULL
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "ReclamationLocation" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"name" TEXT NOT NULL
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Employee" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"name" TEXT NOT NULL,
|
|
"authLevel" INTEGER NOT NULL,
|
|
"username" TEXT NOT NULL,
|
|
"password" TEXT NOT NULL
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Foreman" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"name" TEXT NOT NULL
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "Equipment" (
|
|
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
"category" TEXT NOT NULL,
|
|
"model" TEXT NOT NULL,
|
|
"number" INTEGER NOT NULL
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Area_name_key" ON "Area"("name");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "DredgerLocation_name_key" ON "DredgerLocation"("name");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "ReclamationLocation_name_key" ON "ReclamationLocation"("name");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "Employee_username_key" ON "Employee"("username");
|