28 lines
1.1 KiB
TypeScript
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"),
|
|
});
|