| 1 | CREATE TYPE "public"."timesheet_report_recipient_status" AS ENUM('pending', 'approved', 'disputed');--> statement-breakpoint |
| 2 | CREATE TABLE "expense_categories" ( |
| 3 | "id" text PRIMARY KEY |
| 4 | "organization_id" text NOT NULL |
| 5 | "name" text NOT NULL |
| 6 | "color" text, |
| 7 | "is_archived" boolean DEFAULT |
| 8 | "sort_order" integer DEFAULT |
| 9 | "created_at" timestamp DEFAULT |
| 10 | "updated_at" timestamp DEFAULT |
| 11 | ); |
| 12 | --> statement-breakpoint |
| 13 | CREATE TABLE "expenses" ( |
| 14 | "id" text PRIMARY KEY |
| 15 | "project_id" text NOT NULL |
| 16 | "member_id" text NOT NULL |
| 17 | "category_id" text NOT NULL |
| 18 | "milestone_id" text, |
| 19 | "title" text NOT NULL |
| 20 | "description" text, |
| 21 | "amount_cents" integer NOT NULL |
| 22 | "currency" text DEFAULT |
| 23 | "date" timestamp NOT NULL |
| 24 | "billable" boolean DEFAULT |
| 25 | "status" "status" DEFAULT |
| 26 | "reject_reason" text, |
| 27 | "receipt_media_id" text, |
| 28 | "invoice_id" text, |
| 29 | "created_at" timestamp DEFAULT |
| 30 | "updated_at" timestamp DEFAULT |
| 31 | ); |
| 32 | --> statement-breakpoint |
| 33 | ALTER TABLE "timesheet_reports" ALTER COLUMN |
| 34 | ALTER TABLE "timesheet_report_recipients" ADD COLUMN |
| 35 | ALTER TABLE "timesheet_report_recipients" ADD COLUMN |
| 36 | ALTER TABLE "timesheet_report_recipients" ADD COLUMN |
| 37 | ALTER TABLE "expense_categories" ADD |
| 38 | ALTER TABLE "expenses" ADD |
| 39 | ALTER TABLE "expenses" ADD |
| 40 | ALTER TABLE "expenses" ADD |
| 41 | ALTER TABLE "expenses" ADD |
| 42 | ALTER TABLE "expenses" ADD |
| 43 | ALTER TABLE "expenses" ADD |
| 44 | CREATE INDEX "expenses_project_id_status_idx" ON |
| 45 | CREATE INDEX "expenses_member_id_idx" ON |
| 46 | CREATE INDEX "timesheet_report_recipients_report_id_idx" ON |