22 lines
976 B
TypeScript
22 lines
976 B
TypeScript
import { createId } from "@paralleldrive/cuid2";
|
||
import { pgEnum, pgTable, timestamp, varchar } from "drizzle-orm/pg-core";
|
||
import { relations } from "drizzle-orm";
|
||
import { respondents } from "./respondents";
|
||
|
||
const statusEnum = pgEnum("status", ["tertunda", "disetujui", "ditolak", "selesai"]);
|
||
|
||
export const assessments = pgTable("assessments", {
|
||
id: varchar("id", { length: 50 })
|
||
.primaryKey()
|
||
.$defaultFn(() => createId()),
|
||
respondentName: varchar("respondentName", { length: 255 }).notNull(),
|
||
status: statusEnum("status"),
|
||
reviewedBy: varchar("reviewedBy").notNull(),
|
||
validatedBy: varchar("validatedBy").notNull(),
|
||
validatedAt: timestamp("validatedAt", { mode: "date" }),
|
||
createdAt: timestamp("createdAt", { mode: "date" }).defaultNow(),
|
||
respondentId: varchar("respondentId").references(() => respondents.id),
|
||
});
|
||
|
||
// Query Tools in PosgreSQL
|
||
// CREATE TYPE status AS ENUM ('tertunda', 'disetujui', 'ditolak', 'selesai');
|