81 lines
5.0 KiB
SQL
81 lines
5.0 KiB
SQL
PRAGMA foreign_keys=OFF;--> statement-breakpoint
|
|
CREATE TABLE `__new_rooms` (
|
|
`id` text PRIMARY KEY NOT NULL,
|
|
`name` text NOT NULL,
|
|
`type` text DEFAULT 'meeting_room' NOT NULL,
|
|
`sq_ft` integer,
|
|
`internal_price_per_hour_gbp` real,
|
|
`external_price_per_hour_gbp` real,
|
|
`internal_price_per_day_gbp` real,
|
|
`external_price_per_day_gbp` real,
|
|
`internal_price_per_half_day_gbp` real,
|
|
`external_price_per_half_day_gbp` real,
|
|
`max_attendees` integer,
|
|
`workstations` integer,
|
|
`price_per_month_gbp` real,
|
|
`created_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`updated_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`archived_at` integer
|
|
);
|
|
--> statement-breakpoint
|
|
INSERT INTO `__new_rooms`("id", "name", "type", "sq_ft", "internal_price_per_hour_gbp", "external_price_per_hour_gbp", "internal_price_per_day_gbp", "external_price_per_day_gbp", "internal_price_per_half_day_gbp", "external_price_per_half_day_gbp", "max_attendees", "workstations", "price_per_month_gbp", "created_at", "updated_at", "archived_at") SELECT "id", "name", "type", "sq_ft", "internal_price_per_hour_cents" / 100.0, "external_price_per_hour_cents" / 100.0, "internal_price_per_day_cents" / 100.0, "external_price_per_day_cents" / 100.0, "internal_price_per_half_day_cents" / 100.0, "external_price_per_half_day_cents" / 100.0, "max_attendees", "workstations", "price_per_month_cents" / 100.0, "created_at", "updated_at", "archived_at" FROM `rooms`;--> statement-breakpoint
|
|
DROP TABLE `rooms`;--> statement-breakpoint
|
|
ALTER TABLE `__new_rooms` RENAME TO `rooms`;--> statement-breakpoint
|
|
PRAGMA foreign_keys=ON;--> statement-breakpoint
|
|
CREATE TABLE `__new_services` (
|
|
`id` text PRIMARY KEY NOT NULL,
|
|
`name` text NOT NULL,
|
|
`category` text,
|
|
`unit` text DEFAULT 'each' NOT NULL,
|
|
`price_gbp` real DEFAULT 0 NOT NULL,
|
|
`description` text,
|
|
`created_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`updated_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`archived_at` integer
|
|
);
|
|
--> statement-breakpoint
|
|
INSERT INTO `__new_services`("id", "name", "category", "unit", "price_gbp", "description", "created_at", "updated_at", "archived_at") SELECT "id", "name", "category", "unit", "price_cents" / 100.0, "description", "created_at", "updated_at", "archived_at" FROM `services`;--> statement-breakpoint
|
|
DROP TABLE `services`;--> statement-breakpoint
|
|
ALTER TABLE `__new_services` RENAME TO `services`;--> statement-breakpoint
|
|
CREATE TABLE `__new_invoices` (
|
|
`id` text PRIMARY KEY NOT NULL,
|
|
`client_id` text NOT NULL,
|
|
`invoice_number` text NOT NULL,
|
|
`issue_date` text NOT NULL,
|
|
`due_date` text NOT NULL,
|
|
`status` text DEFAULT 'draft' NOT NULL,
|
|
`subtotal_gbp` real DEFAULT 0 NOT NULL,
|
|
`tax_gbp` real DEFAULT 0 NOT NULL,
|
|
`total_gbp` real DEFAULT 0 NOT NULL,
|
|
`notes` text,
|
|
`created_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`updated_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`archived_at` integer,
|
|
FOREIGN KEY (`client_id`) REFERENCES `clients`(`id`) ON UPDATE no action ON DELETE restrict
|
|
);
|
|
--> statement-breakpoint
|
|
INSERT INTO `__new_invoices`("id", "client_id", "invoice_number", "issue_date", "due_date", "status", "subtotal_gbp", "tax_gbp", "total_gbp", "notes", "created_at", "updated_at", "archived_at") SELECT "id", "client_id", "invoice_number", "issue_date", "due_date", "status", "subtotal_cents" / 100.0, "tax_cents" / 100.0, "total_cents" / 100.0, "notes", "created_at", "updated_at", "archived_at" FROM `invoices`;--> statement-breakpoint
|
|
DROP TABLE `invoices`;--> statement-breakpoint
|
|
ALTER TABLE `__new_invoices` RENAME TO `invoices`;--> statement-breakpoint
|
|
CREATE UNIQUE INDEX `invoices_invoice_number_unique` ON `invoices` (`invoice_number`);--> statement-breakpoint
|
|
CREATE INDEX `invoices_client_id_idx` ON `invoices` (`client_id`);--> statement-breakpoint
|
|
CREATE TABLE `__new_contracts` (
|
|
`id` text PRIMARY KEY NOT NULL,
|
|
`client_id` text NOT NULL,
|
|
`title` text NOT NULL,
|
|
`start_date` text NOT NULL,
|
|
`end_date` text,
|
|
`status` text DEFAULT 'draft' NOT NULL,
|
|
`value_gbp` real DEFAULT 0 NOT NULL,
|
|
`notes` text,
|
|
`created_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`updated_at` integer DEFAULT (cast(unixepoch('subsecond') * 1000 as integer)) NOT NULL,
|
|
`archived_at` integer,
|
|
FOREIGN KEY (`client_id`) REFERENCES `clients`(`id`) ON UPDATE no action ON DELETE restrict
|
|
);
|
|
--> statement-breakpoint
|
|
INSERT INTO `__new_contracts`("id", "client_id", "title", "start_date", "end_date", "status", "value_gbp", "notes", "created_at", "updated_at", "archived_at") SELECT "id", "client_id", "title", "start_date", "end_date", "status", "value_cents" / 100.0, "notes", "created_at", "updated_at", "archived_at" FROM `contracts`;--> statement-breakpoint
|
|
DROP TABLE `contracts`;--> statement-breakpoint
|
|
ALTER TABLE `__new_contracts` RENAME TO `contracts`;--> statement-breakpoint
|
|
CREATE INDEX `contracts_client_id_idx` ON `contracts` (`client_id`);
|