Files
lstV2/database/schema/serverData.ts

37 lines
1.5 KiB
TypeScript

import {boolean, date, jsonb, numeric, pgTable, text, timestamp, uniqueIndex, uuid} from "drizzle-orm/pg-core";
import {createSelectSchema} from "drizzle-zod";
export const serverData = pgTable(
"serverData",
{
server_id: uuid("server_id").defaultRandom().primaryKey(),
sName: text("sName").notNull(),
serverDNS: text("serverDNS"),
plantToken: text("plantToken"),
idAddress: text("idAddress"),
greatPlainsPlantCode: numeric("greatPlainsPlantCode"),
streetAddress: text("streetAddress"),
cityState: text("cityState"),
zipcode: numeric("zipcode"),
contactEmail: text("contactEmail"),
contactPhone: text("contactPhone"),
customerTiAcc: text("customerTiAcc"),
lstServerPort: numeric("lstServerPort"),
active: boolean("active").default(true),
serverLoc: text("serverLoc"),
oldVersion: text("oldVersion"),
lastUpdated: timestamp("lastUpdated").defaultNow(),
shippingHours: text("shippingHours").default('[{"early": "06:30", "late": "23:00"}]'),
tiPostTime: text("tiPostTime").default('[{"from": "24", "to": "24"}]'),
otherSettings: jsonb("otherSettings").default([{specialInstructions: "something for ti", active: false}]),
isUpgrading: boolean("isUpgrading").default(false),
},
(table) => [
// uniqueIndex('emailUniqueIndex').on(sql`lower(${table.email})`),
uniqueIndex("plantToken").on(table.plantToken),
]
);
export const selectRolesSchema = createSelectSchema(serverData);