diff --git a/migrations/Version20260330174355.php b/migrations/Version20260330174355.php new file mode 100644 index 0000000..492718a --- /dev/null +++ b/migrations/Version20260330174355.php @@ -0,0 +1,57 @@ +addSql('CREATE TABLE game (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, status VARCHAR(20) NOT NULL, started_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, ended_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL, user_id INT DEFAULT NULL, main_actor_id INT NOT NULL, PRIMARY KEY (id))'); + $this->addSql('CREATE INDEX IDX_232B318CA76ED395 ON game (user_id)'); + $this->addSql('CREATE INDEX IDX_232B318CC9F8E33F ON game (main_actor_id)'); + $this->addSql('CREATE TABLE game_row (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, position INT NOT NULL, row_order INT NOT NULL, game_id INT NOT NULL, actor_id INT NOT NULL, PRIMARY KEY (id))'); + $this->addSql('CREATE INDEX IDX_9F6AE51EE48FD905 ON game_row (game_id)'); + $this->addSql('CREATE INDEX IDX_9F6AE51E10DAF24A ON game_row (actor_id)'); + $this->addSql('ALTER TABLE game ADD CONSTRAINT FK_232B318CA76ED395 FOREIGN KEY (user_id) REFERENCES "user" (id) NOT DEFERRABLE'); + $this->addSql('ALTER TABLE game ADD CONSTRAINT FK_232B318CC9F8E33F FOREIGN KEY (main_actor_id) REFERENCES actor (id) NOT DEFERRABLE'); + $this->addSql('ALTER TABLE game_row ADD CONSTRAINT FK_9F6AE51EE48FD905 FOREIGN KEY (game_id) REFERENCES game (id) NOT DEFERRABLE'); + $this->addSql('ALTER TABLE game_row ADD CONSTRAINT FK_9F6AE51E10DAF24A FOREIGN KEY (actor_id) REFERENCES actor (id) NOT DEFERRABLE'); + $this->addSql('COMMENT ON COLUMN import.created_at IS \'\''); + $this->addSql('COMMENT ON COLUMN import.completed_at IS \'\''); + $this->addSql('ALTER TABLE notification ALTER is_read DROP DEFAULT'); + $this->addSql('COMMENT ON COLUMN notification.created_at IS \'\''); + $this->addSql('ALTER INDEX idx_a6b68b33a76ed395 RENAME TO IDX_FF9C0937A76ED395'); + $this->addSql('ALTER INDEX idx_a6b68b338f93b6fc RENAME TO IDX_FF9C09378F93B6FC'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE game DROP CONSTRAINT FK_232B318CA76ED395'); + $this->addSql('ALTER TABLE game DROP CONSTRAINT FK_232B318CC9F8E33F'); + $this->addSql('ALTER TABLE game_row DROP CONSTRAINT FK_9F6AE51EE48FD905'); + $this->addSql('ALTER TABLE game_row DROP CONSTRAINT FK_9F6AE51E10DAF24A'); + $this->addSql('DROP TABLE game'); + $this->addSql('DROP TABLE game_row'); + $this->addSql('COMMENT ON COLUMN import.created_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('COMMENT ON COLUMN import.completed_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('ALTER TABLE notification ALTER is_read SET DEFAULT false'); + $this->addSql('COMMENT ON COLUMN notification.created_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('ALTER INDEX idx_ff9c09378f93b6fc RENAME TO idx_a6b68b338f93b6fc'); + $this->addSql('ALTER INDEX idx_ff9c0937a76ed395 RENAME TO idx_a6b68b33a76ed395'); + } +}