addSql('CREATE SEQUENCE building_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE cylinder_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE floor_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE place_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE plane_surface_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE point_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE poly_surface_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE polyhedron_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE site_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE three_dobject_file_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE TABLE building (id INT NOT NULL, site_id INT NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_E16F61D4F6BD1646 ON building (site_id)'); $this->addSql('CREATE TABLE corridor (id INT NOT NULL, floor_id INT NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_D6DEE755854679E2 ON corridor (floor_id)'); $this->addSql('CREATE TABLE cylinder (id INT NOT NULL, cylinderbase_id INT NOT NULL, room_id INT DEFAULT NULL, height DOUBLE PRECISION NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE UNIQUE INDEX UNIQ_9B045BEA373F1E49 ON cylinder (cylinderbase_id)'); $this->addSql('CREATE INDEX IDX_9B045BEA54177093 ON cylinder (room_id)'); $this->addSql('CREATE TABLE floor (id INT NOT NULL, building_id INT NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_BE45D62E4D2A7E12 ON floor (building_id)'); $this->addSql('CREATE TABLE place (id INT NOT NULL, type VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE TABLE place_place (place_source INT NOT NULL, place_target INT NOT NULL, PRIMARY KEY(place_source, place_target))'); $this->addSql('CREATE INDEX IDX_DD6B48EEFD44781A ON place_place (place_source)'); $this->addSql('CREATE INDEX IDX_DD6B48EEE4A12895 ON place_place (place_target)'); $this->addSql('CREATE TABLE plane_surface (id INT NOT NULL, polyhedron_id INT DEFAULT NULL, poly_surface_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_7D730225A0EC5603 ON plane_surface (polyhedron_id)'); $this->addSql('CREATE INDEX IDX_7D730225E4B18EF4 ON plane_surface (poly_surface_id)'); $this->addSql('CREATE TABLE plane_surface_point (plane_surface_id INT NOT NULL, point_id INT NOT NULL, PRIMARY KEY(plane_surface_id, point_id))'); $this->addSql('CREATE INDEX IDX_359F2C2CA3FD0342 ON plane_surface_point (plane_surface_id)'); $this->addSql('CREATE INDEX IDX_359F2C2CC028CEA2 ON plane_surface_point (point_id)'); $this->addSql('CREATE TABLE point (id INT NOT NULL, x DOUBLE PRECISION NOT NULL, y DOUBLE PRECISION NOT NULL, z DOUBLE PRECISION NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE TABLE poly_surface (id INT NOT NULL, surface_representation_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_A643146FDFB7DB2B ON poly_surface (surface_representation_id)'); $this->addSql('CREATE TABLE polyhedron (id INT NOT NULL, room_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_768611C054177093 ON polyhedron (room_id)'); $this->addSql('CREATE TABLE room (id INT NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE TABLE site (id INT NOT NULL, zero_latitude DOUBLE PRECISION NOT NULL, zero_longitude DOUBLE PRECISION NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE TABLE three_dobject_file (id INT NOT NULL, room_id INT DEFAULT NULL, filename VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_6E8C161954177093 ON three_dobject_file (room_id)'); $this->addSql('ALTER TABLE building ADD CONSTRAINT FK_E16F61D4F6BD1646 FOREIGN KEY (site_id) REFERENCES site (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE corridor ADD CONSTRAINT FK_D6DEE755854679E2 FOREIGN KEY (floor_id) REFERENCES floor (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE corridor ADD CONSTRAINT FK_D6DEE755BF396750 FOREIGN KEY (id) REFERENCES place (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE cylinder ADD CONSTRAINT FK_9B045BEA373F1E49 FOREIGN KEY (cylinderbase_id) REFERENCES plane_surface (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE cylinder ADD CONSTRAINT FK_9B045BEA54177093 FOREIGN KEY (room_id) REFERENCES room (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE floor ADD CONSTRAINT FK_BE45D62E4D2A7E12 FOREIGN KEY (building_id) REFERENCES building (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE place_place ADD CONSTRAINT FK_DD6B48EEFD44781A FOREIGN KEY (place_source) REFERENCES place (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE place_place ADD CONSTRAINT FK_DD6B48EEE4A12895 FOREIGN KEY (place_target) REFERENCES place (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE plane_surface ADD CONSTRAINT FK_7D730225A0EC5603 FOREIGN KEY (polyhedron_id) REFERENCES polyhedron (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE plane_surface ADD CONSTRAINT FK_7D730225E4B18EF4 FOREIGN KEY (poly_surface_id) REFERENCES poly_surface (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE plane_surface_point ADD CONSTRAINT FK_359F2C2CA3FD0342 FOREIGN KEY (plane_surface_id) REFERENCES plane_surface (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE plane_surface_point ADD CONSTRAINT FK_359F2C2CC028CEA2 FOREIGN KEY (point_id) REFERENCES point (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE poly_surface ADD CONSTRAINT FK_A643146FDFB7DB2B FOREIGN KEY (surface_representation_id) REFERENCES corridor (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE polyhedron ADD CONSTRAINT FK_768611C054177093 FOREIGN KEY (room_id) REFERENCES room (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE room ADD CONSTRAINT FK_729F519BBF396750 FOREIGN KEY (id) REFERENCES place (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE three_dobject_file ADD CONSTRAINT FK_6E8C161954177093 FOREIGN KEY (room_id) REFERENCES room (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); } public function down(Schema $schema): void { // this down() migration is auto-generated, please modify it to your needs $this->addSql('CREATE SCHEMA public'); $this->addSql('DROP SEQUENCE building_id_seq CASCADE'); $this->addSql('DROP SEQUENCE cylinder_id_seq CASCADE'); $this->addSql('DROP SEQUENCE floor_id_seq CASCADE'); $this->addSql('DROP SEQUENCE place_id_seq CASCADE'); $this->addSql('DROP SEQUENCE plane_surface_id_seq CASCADE'); $this->addSql('DROP SEQUENCE point_id_seq CASCADE'); $this->addSql('DROP SEQUENCE poly_surface_id_seq CASCADE'); $this->addSql('DROP SEQUENCE polyhedron_id_seq CASCADE'); $this->addSql('DROP SEQUENCE site_id_seq CASCADE'); $this->addSql('DROP SEQUENCE three_dobject_file_id_seq CASCADE'); $this->addSql('ALTER TABLE building DROP CONSTRAINT FK_E16F61D4F6BD1646'); $this->addSql('ALTER TABLE corridor DROP CONSTRAINT FK_D6DEE755854679E2'); $this->addSql('ALTER TABLE corridor DROP CONSTRAINT FK_D6DEE755BF396750'); $this->addSql('ALTER TABLE cylinder DROP CONSTRAINT FK_9B045BEA373F1E49'); $this->addSql('ALTER TABLE cylinder DROP CONSTRAINT FK_9B045BEA54177093'); $this->addSql('ALTER TABLE floor DROP CONSTRAINT FK_BE45D62E4D2A7E12'); $this->addSql('ALTER TABLE place_place DROP CONSTRAINT FK_DD6B48EEFD44781A'); $this->addSql('ALTER TABLE place_place DROP CONSTRAINT FK_DD6B48EEE4A12895'); $this->addSql('ALTER TABLE plane_surface DROP CONSTRAINT FK_7D730225A0EC5603'); $this->addSql('ALTER TABLE plane_surface DROP CONSTRAINT FK_7D730225E4B18EF4'); $this->addSql('ALTER TABLE plane_surface_point DROP CONSTRAINT FK_359F2C2CA3FD0342'); $this->addSql('ALTER TABLE plane_surface_point DROP CONSTRAINT FK_359F2C2CC028CEA2'); $this->addSql('ALTER TABLE poly_surface DROP CONSTRAINT FK_A643146FDFB7DB2B'); $this->addSql('ALTER TABLE polyhedron DROP CONSTRAINT FK_768611C054177093'); $this->addSql('ALTER TABLE room DROP CONSTRAINT FK_729F519BBF396750'); $this->addSql('ALTER TABLE three_dobject_file DROP CONSTRAINT FK_6E8C161954177093'); $this->addSql('DROP TABLE building'); $this->addSql('DROP TABLE corridor'); $this->addSql('DROP TABLE cylinder'); $this->addSql('DROP TABLE floor'); $this->addSql('DROP TABLE place'); $this->addSql('DROP TABLE place_place'); $this->addSql('DROP TABLE plane_surface'); $this->addSql('DROP TABLE plane_surface_point'); $this->addSql('DROP TABLE point'); $this->addSql('DROP TABLE poly_surface'); $this->addSql('DROP TABLE polyhedron'); $this->addSql('DROP TABLE room'); $this->addSql('DROP TABLE site'); $this->addSql('DROP TABLE three_dobject_file'); } }