summaryrefslogtreecommitdiff
path: root/db/migrations/0251_stormy_sabretooth.sql
diff options
context:
space:
mode:
Diffstat (limited to 'db/migrations/0251_stormy_sabretooth.sql')
-rw-r--r--db/migrations/0251_stormy_sabretooth.sql76
1 files changed, 76 insertions, 0 deletions
diff --git a/db/migrations/0251_stormy_sabretooth.sql b/db/migrations/0251_stormy_sabretooth.sql
new file mode 100644
index 00000000..10804b3a
--- /dev/null
+++ b/db/migrations/0251_stormy_sabretooth.sql
@@ -0,0 +1,76 @@
+CREATE TABLE "legal_work_attachments" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "legal_work_id" integer NOT NULL,
+ "file_name" varchar(255) NOT NULL,
+ "original_file_name" varchar(255) NOT NULL,
+ "file_path" varchar(500) NOT NULL,
+ "file_size" integer NOT NULL,
+ "mime_type" varchar(100) NOT NULL,
+ "is_auto_generated" boolean DEFAULT false NOT NULL,
+ "attachment_type" varchar(50) DEFAULT 'request',
+ "created_at" timestamp DEFAULT now() NOT NULL
+);
+--> statement-breakpoint
+CREATE TABLE "legal_work_requests" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "legal_work_id" integer NOT NULL,
+ "review_department" varchar(50) NOT NULL,
+ "inquiry_type" varchar(50),
+ "title" varchar(500) NOT NULL,
+ "request_content" text NOT NULL,
+ "is_public" boolean DEFAULT false,
+ "contract_project_name" varchar(300),
+ "contract_type" varchar(100),
+ "contract_amount" numeric(15, 2),
+ "contract_counterparty" varchar(200),
+ "counterparty_type" varchar(20),
+ "contract_period" varchar(200),
+ "factual_relation" text,
+ "project_number" varchar(100),
+ "shipowner_orderer" varchar(200),
+ "governing_law" varchar(100),
+ "project_type" varchar(100),
+ "created_at" timestamp DEFAULT now() NOT NULL,
+ "updated_at" timestamp DEFAULT now() NOT NULL
+);
+--> statement-breakpoint
+CREATE TABLE "legal_work_responses" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "legal_work_id" integer NOT NULL,
+ "response_content" text NOT NULL,
+ "response_reviewer" varchar(100),
+ "response_confirmer" varchar(100),
+ "response_approver" varchar(100),
+ "reviewed_at" timestamp,
+ "confirmed_at" timestamp,
+ "approved_at" timestamp,
+ "is_public" boolean DEFAULT false NOT NULL,
+ "is_re_revision" boolean DEFAULT false NOT NULL,
+ "parent_response_id" integer,
+ "created_at" timestamp DEFAULT now() NOT NULL,
+ "updated_at" timestamp DEFAULT now() NOT NULL
+);
+--> statement-breakpoint
+CREATE TABLE "legal_works" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "category" varchar(50) NOT NULL,
+ "status" varchar(100) NOT NULL,
+ "company_id" integer,
+ "vendor_code" varchar(50) NOT NULL,
+ "vendor_name" varchar(200) NOT NULL,
+ "is_urgent" boolean DEFAULT false NOT NULL,
+ "request_date" date,
+ "consultation_date" date,
+ "expected_answer_date" date,
+ "legal_completion_date" date,
+ "reviewer" varchar(100),
+ "legal_responder" varchar(100),
+ "has_attachment" boolean DEFAULT false NOT NULL,
+ "created_at" timestamp DEFAULT now() NOT NULL,
+ "updated_at" timestamp DEFAULT now() NOT NULL
+);
+--> statement-breakpoint
+ALTER TABLE "legal_work_attachments" ADD CONSTRAINT "legal_work_attachments_legal_work_id_legal_works_id_fk" FOREIGN KEY ("legal_work_id") REFERENCES "public"."legal_works"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
+ALTER TABLE "legal_work_requests" ADD CONSTRAINT "legal_work_requests_legal_work_id_legal_works_id_fk" FOREIGN KEY ("legal_work_id") REFERENCES "public"."legal_works"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
+ALTER TABLE "legal_work_responses" ADD CONSTRAINT "legal_work_responses_legal_work_id_legal_works_id_fk" FOREIGN KEY ("legal_work_id") REFERENCES "public"."legal_works"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
+ALTER TABLE "legal_works" ADD CONSTRAINT "legal_works_company_id_vendors_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."vendors"("id") ON DELETE set null ON UPDATE no action; \ No newline at end of file