50 lines
2.4 KiB
SQL
50 lines
2.4 KiB
SQL
CREATE TABLE "ManufacturingStation" (
|
|
"id" TEXT NOT NULL PRIMARY KEY,
|
|
"code" TEXT NOT NULL,
|
|
"name" TEXT NOT NULL,
|
|
"description" TEXT NOT NULL,
|
|
"queueDays" INTEGER NOT NULL DEFAULT 0,
|
|
"isActive" BOOLEAN NOT NULL DEFAULT true,
|
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" DATETIME NOT NULL
|
|
);
|
|
|
|
CREATE TABLE "InventoryItemOperation" (
|
|
"id" TEXT NOT NULL PRIMARY KEY,
|
|
"itemId" TEXT NOT NULL,
|
|
"stationId" TEXT NOT NULL,
|
|
"setupMinutes" INTEGER NOT NULL DEFAULT 0,
|
|
"runMinutesPerUnit" INTEGER NOT NULL DEFAULT 0,
|
|
"moveMinutes" INTEGER NOT NULL DEFAULT 0,
|
|
"notes" TEXT NOT NULL,
|
|
"position" INTEGER NOT NULL DEFAULT 0,
|
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" DATETIME NOT NULL,
|
|
CONSTRAINT "InventoryItemOperation_itemId_fkey" FOREIGN KEY ("itemId") REFERENCES "InventoryItem" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
|
|
CONSTRAINT "InventoryItemOperation_stationId_fkey" FOREIGN KEY ("stationId") REFERENCES "ManufacturingStation" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
|
);
|
|
|
|
CREATE TABLE "WorkOrderOperation" (
|
|
"id" TEXT NOT NULL PRIMARY KEY,
|
|
"workOrderId" TEXT NOT NULL,
|
|
"stationId" TEXT NOT NULL,
|
|
"sequence" INTEGER NOT NULL,
|
|
"setupMinutes" INTEGER NOT NULL DEFAULT 0,
|
|
"runMinutesPerUnit" INTEGER NOT NULL DEFAULT 0,
|
|
"moveMinutes" INTEGER NOT NULL DEFAULT 0,
|
|
"plannedMinutes" INTEGER NOT NULL DEFAULT 0,
|
|
"plannedStart" DATETIME NOT NULL,
|
|
"plannedEnd" DATETIME NOT NULL,
|
|
"notes" TEXT NOT NULL,
|
|
"createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" DATETIME NOT NULL,
|
|
CONSTRAINT "WorkOrderOperation_workOrderId_fkey" FOREIGN KEY ("workOrderId") REFERENCES "WorkOrder" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
|
|
CONSTRAINT "WorkOrderOperation_stationId_fkey" FOREIGN KEY ("stationId") REFERENCES "ManufacturingStation" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
|
|
);
|
|
|
|
CREATE UNIQUE INDEX "ManufacturingStation_code_key" ON "ManufacturingStation"("code");
|
|
CREATE INDEX "InventoryItemOperation_itemId_position_idx" ON "InventoryItemOperation"("itemId", "position");
|
|
CREATE INDEX "InventoryItemOperation_stationId_idx" ON "InventoryItemOperation"("stationId");
|
|
CREATE INDEX "WorkOrderOperation_workOrderId_sequence_idx" ON "WorkOrderOperation"("workOrderId", "sequence");
|
|
CREATE INDEX "WorkOrderOperation_stationId_plannedStart_idx" ON "WorkOrderOperation"("stationId", "plannedStart");
|