Files
leistungsbilanz-ts/src/db/schema/project-devices.ts
T
2026-07-23 20:00:48 +02:00

28 lines
1.1 KiB
TypeScript

import { integer, real, sqliteTable, text } from "drizzle-orm/sqlite-core";
import { projects } from "./projects.js";
export const projectDevices = sqliteTable("project_devices", {
id: text("id").primaryKey(),
projectId: text("project_id")
.notNull()
.references(() => projects.id, { onDelete: "cascade" }),
name: text("name").notNull(),
displayName: text("display_name").notNull(),
phaseType: text("phase_type").notNull().default("single_phase"),
connectionKind: text("connection_kind"),
costGroup: text("cost_group"),
category: text("category"),
quantity: integer("quantity").notNull(),
powerPerUnit: real("power_per_unit").notNull().default(0),
simultaneityFactor: real("simultaneity_factor").notNull().default(1),
cosPhi: real("cos_phi"),
remark: text("remark"),
// Transitional mirror columns retained until a dedicated schema cleanup migration removes them.
installedPowerPerUnitKw: real("installed_power_per_unit_kw").notNull(),
demandFactor: real("demand_factor").notNull(),
voltageV: real("voltage_v"),
phaseCount: integer("phase_count"),
powerFactor: real("power_factor"),
note: text("note"),
});