129 lines
5.3 KiB
SQL
129 lines
5.3 KiB
SQL
CREATE TABLE "applications" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"job_id" integer NOT NULL,
|
|
"student_id" integer NOT NULL,
|
|
"resume_id" integer NOT NULL,
|
|
"status" text DEFAULT 'pending' NOT NULL,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "certificates" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"student_id" integer NOT NULL,
|
|
"title" text NOT NULL,
|
|
"description" text NOT NULL,
|
|
"link" text NOT NULL,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "companies" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"name" text NOT NULL,
|
|
"email" text NOT NULL,
|
|
"link" text NOT NULL,
|
|
"description" text NOT NULL,
|
|
"passwordHash" text NOT NULL,
|
|
"imageURL" text NOT NULL,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "grades" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"student_id" integer NOT NULL,
|
|
"sem" integer NOT NULL,
|
|
"sgpi" numeric(4, 2) NOT NULL,
|
|
"isKT" boolean NOT NULL,
|
|
"deadKT" boolean,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "internships" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"student_id" integer NOT NULL,
|
|
"title" text NOT NULL,
|
|
"company" text NOT NULL,
|
|
"description" text NOT NULL,
|
|
"location" text NOT NULL,
|
|
"startDate" timestamp NOT NULL,
|
|
"endDate" timestamp NOT NULL,
|
|
"status" text NOT NULL,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "jobs" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"company_id" integer NOT NULL,
|
|
"title" text NOT NULL,
|
|
"link" text NOT NULL,
|
|
"description" text NOT NULL,
|
|
"location" text NOT NULL,
|
|
"imageURL" text NOT NULL,
|
|
"salary" text NOT NULL,
|
|
"applicationDeadline" timestamp NOT NULL,
|
|
"active" boolean DEFAULT false NOT NULL,
|
|
"minCGPA" numeric(4, 2) DEFAULT '0' NOT NULL,
|
|
"minSSC" numeric(4, 2) DEFAULT '0' NOT NULL,
|
|
"minHSC" numeric(4, 2) DEFAULT '0' NOT NULL,
|
|
"allowDeadKT" boolean DEFAULT true NOT NULL,
|
|
"allowLiveKT" boolean DEFAULT true NOT NULL,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "projects" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"student_id" integer NOT NULL,
|
|
"title" text NOT NULL,
|
|
"description" text NOT NULL,
|
|
"links" text[] DEFAULT ARRAY[]::text[] NOT NULL,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "resumes" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"student_id" integer NOT NULL,
|
|
"title" text NOT NULL,
|
|
"link" text NOT NULL,
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
CREATE TABLE "students" (
|
|
"id" serial PRIMARY KEY NOT NULL,
|
|
"email" text NOT NULL,
|
|
"rollNumber" varchar(12),
|
|
"verified" boolean DEFAULT false NOT NULL,
|
|
"firstName" varchar(255),
|
|
"middleName" varchar(255),
|
|
"lastName" varchar(255),
|
|
"mothersName" varchar(255),
|
|
"phoneNumber" varchar(10),
|
|
"address" text,
|
|
"profilePicture" text,
|
|
"degree" text,
|
|
"branch" text,
|
|
"year" text,
|
|
"skills" text[] DEFAULT ARRAY[]::text[],
|
|
"linkedin" text,
|
|
"github" text,
|
|
"ssc" numeric(4, 2),
|
|
"hsc" numeric(4, 2),
|
|
"createdAt" timestamp DEFAULT now() NOT NULL,
|
|
"updatedAt" timestamp DEFAULT now() NOT NULL
|
|
);
|
|
--> statement-breakpoint
|
|
ALTER TABLE "applications" ADD CONSTRAINT "applications_job_id_jobs_id_fk" FOREIGN KEY ("job_id") REFERENCES "public"."jobs"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "applications" ADD CONSTRAINT "applications_student_id_students_id_fk" FOREIGN KEY ("student_id") REFERENCES "public"."students"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "applications" ADD CONSTRAINT "applications_resume_id_resumes_id_fk" FOREIGN KEY ("resume_id") REFERENCES "public"."resumes"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "certificates" ADD CONSTRAINT "certificates_student_id_students_id_fk" FOREIGN KEY ("student_id") REFERENCES "public"."students"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "grades" ADD CONSTRAINT "grades_student_id_students_id_fk" FOREIGN KEY ("student_id") REFERENCES "public"."students"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "internships" ADD CONSTRAINT "internships_student_id_students_id_fk" FOREIGN KEY ("student_id") REFERENCES "public"."students"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "jobs" ADD CONSTRAINT "jobs_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "projects" ADD CONSTRAINT "projects_student_id_students_id_fk" FOREIGN KEY ("student_id") REFERENCES "public"."students"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
|
|
ALTER TABLE "resumes" ADD CONSTRAINT "resumes_student_id_students_id_fk" FOREIGN KEY ("student_id") REFERENCES "public"."students"("id") ON DELETE no action ON UPDATE no action; |