amati/apps/backend/src/drizzle/schema/answers.ts

30 lines
973 B
TypeScript

import { createId } from "@paralleldrive/cuid2";
import { relations } from "drizzle-orm";
import {
boolean,
pgTable,
text,
timestamp,
varchar,
} from "drizzle-orm/pg-core";
import { options } from "./options";
import { assessments } from "./assessments";
import { questions } from "./questions";
export const answers = pgTable("answers", {
id: varchar("id", { length: 50 })
.primaryKey()
.$defaultFn(() => createId()),
questionId: varchar("questionId", { length: 50 })
.references(() => questions.id),
optionId: varchar("optionId", { length: 50 })
.references(() => options.id),
assessmentId: varchar("assessmentId", { length: 50 })
.references(() => assessments.id),
isFlagged: boolean("isFlagged").default(false),
filename: varchar("filename"),
validationInformation: text("validationInformation").notNull(),
createdAt: timestamp("createdAt", { mode: "date" }).defaultNow(),
updatedAt: timestamp("updatedAt", { mode: "date" }).defaultNow(),
});