From f97358bd4ef7ff4e5294e9de3795a669aeb9b6ff Mon Sep 17 00:00:00 2001 From: sermandm Date: Tue, 8 Apr 2025 09:48:58 +0200 Subject: [PATCH] migration propre --- .idea/dataSources.xml | 57 +--------------------- config/packages/security.yaml | 4 +- migrations/Version20241205162005.php | 50 -------------------- migrations/Version20241212153452.php | 31 ------------ migrations/Version20250408072726.php | 71 ++++++++++++++++++++++++++++ 5 files changed, 75 insertions(+), 138 deletions(-) delete mode 100644 migrations/Version20241205162005.php delete mode 100644 migrations/Version20241212153452.php create mode 100644 migrations/Version20250408072726.php diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml index db83d2d..697c202 100644 --- a/.idea/dataSources.xml +++ b/.idea/dataSources.xml @@ -1,64 +1,11 @@ -<<<<<<< HEAD - + postgresql true org.postgresql.Driver - jdbc:postgresql://172.20.96.1:5432/HegreEtConfort -======= -<<<<<<< HEAD - - postgresql - true - org.postgresql.Driver - jdbc:postgresql://172.20.96.1:5432/HegreEtConfort -======= -<<<<<<< HEAD -<<<<<<< HEAD - -======= -<<<<<<< HEAD - - postgresql - true - org.postgresql.Driver - jdbc:postgresql://172.20.96.1:5432/ - $ProjectFileDir$ - - - mariadb - true - org.mariadb.jdbc.Driver - jdbc:mariadb://127.0.0.1:3306/hegreconfort -======= - - postgresql - true - org.postgresql.Driver - jdbc:postgresql://172.20.96.1:5432/chauffageproj - $ProjectFileDir$ - - ->>>>>>> 6532d4d88b86c321a212cdc0ca43b2e4770db117 - postgresql - true - org.postgresql.Driver - jdbc:postgresql://172.20.96.1:5432/chauffageproj ->>>>>>> ee236ff74aaac1882a825817d5ce8f692d3bdd0f -======= - - mariadb - true - org.mariadb.jdbc.Driver - jdbc:mariadb://localhost:3306/HegreConfort - - - ->>>>>>> cc65343635c8771e56e2a3304b42ec32f4f91b97 ->>>>>>> d7375d330251cab10a2296bbb292fcdb7cd6e847 ->>>>>>> 05b64fc2b1e17491a87ea32353e6987b0e97bf50 + jdbc:postgresql://localhost:5433/HegreEtConfort $ProjectFileDir$ diff --git a/config/packages/security.yaml b/config/packages/security.yaml index fbfb8ed..c750caa 100644 --- a/config/packages/security.yaml +++ b/config/packages/security.yaml @@ -26,8 +26,8 @@ security: # Easy way to control access for large sections of your site # Note: Only the *first* access control that matches will be used access_control: - # - { path: ^/admin, roles: ROLE_ADMIN } - # - { path: ^/profile, roles: ROLE_USER } + - { path: ^/admin, roles: ROLE_ADMIN } + - { path: ^/profile, roles: ROLE_USER } when@test: security: diff --git a/migrations/Version20241205162005.php b/migrations/Version20241205162005.php deleted file mode 100644 index 9f8bff3..0000000 --- a/migrations/Version20241205162005.php +++ /dev/null @@ -1,50 +0,0 @@ -addSql('CREATE SEQUENCE fault_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE intervention_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE skill_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE stock_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE user_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE vehicle_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('ALTER TABLE "user" ADD roles JSON NOT NULL'); - $this->addSql('ALTER TABLE "user" ALTER email TYPE VARCHAR(180)'); - $this->addSql('ALTER TABLE "user" RENAME COLUMN type TO password'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_EMAIL ON "user" (email)'); - } - - 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 fault_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE intervention_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE skill_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE stock_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE user_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE vehicle_id_seq CASCADE'); - $this->addSql('DROP INDEX UNIQ_IDENTIFIER_EMAIL'); - $this->addSql('ALTER TABLE "user" DROP roles'); - $this->addSql('ALTER TABLE "user" ALTER email TYPE VARCHAR(255)'); - $this->addSql('ALTER TABLE "user" RENAME COLUMN password TO type'); - } -} diff --git a/migrations/Version20241212153452.php b/migrations/Version20241212153452.php deleted file mode 100644 index 13cf6d3..0000000 --- a/migrations/Version20241212153452.php +++ /dev/null @@ -1,31 +0,0 @@ -addSql('CREATE SCHEMA public'); - } -} diff --git a/migrations/Version20250408072726.php b/migrations/Version20250408072726.php new file mode 100644 index 0000000..3a88c85 --- /dev/null +++ b/migrations/Version20250408072726.php @@ -0,0 +1,71 @@ +addSql('CREATE SEQUENCE fault_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE intervention_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE skill_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE stock_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE user_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE vehicle_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE TABLE fault (id INT NOT NULL, wording VARCHAR(255) NOT NULL, description VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE intervention (id INT NOT NULL, wording VARCHAR(255) NOT NULL, timestamp TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, description VARCHAR(255) NOT NULL, address VARCHAR(255) NOT NULL, status VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE skill (id INT NOT NULL, wording VARCHAR(255) NOT NULL, description VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE stock (id INT NOT NULL, wording VARCHAR(255) NOT NULL, description VARCHAR(255) NOT NULL, quantity VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE "user" (id INT NOT NULL, email VARCHAR(180) NOT NULL, first_name VARCHAR(255) NOT NULL, last_name VARCHAR(255) NOT NULL, birth_date DATE NOT NULL, phone VARCHAR(255) NOT NULL, roles JSON NOT NULL, password VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_EMAIL ON "user" (email)'); + $this->addSql('CREATE TABLE vehicle (id INT NOT NULL, license_plate VARCHAR(255) NOT NULL, brand VARCHAR(255) NOT NULL, model VARCHAR(255) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE messenger_messages (id BIGSERIAL NOT NULL, body TEXT NOT NULL, headers TEXT NOT NULL, queue_name VARCHAR(190) NOT NULL, created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, available_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, delivered_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_75EA56E0FB7336F0 ON messenger_messages (queue_name)'); + $this->addSql('CREATE INDEX IDX_75EA56E0E3BD61CE ON messenger_messages (available_at)'); + $this->addSql('CREATE INDEX IDX_75EA56E016BA31DB ON messenger_messages (delivered_at)'); + $this->addSql('COMMENT ON COLUMN messenger_messages.created_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('COMMENT ON COLUMN messenger_messages.available_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('COMMENT ON COLUMN messenger_messages.delivered_at IS \'(DC2Type:datetime_immutable)\''); + $this->addSql('CREATE OR REPLACE FUNCTION notify_messenger_messages() RETURNS TRIGGER AS $$ + BEGIN + PERFORM pg_notify(\'messenger_messages\', NEW.queue_name::text); + RETURN NEW; + END; + $$ LANGUAGE plpgsql;'); + $this->addSql('DROP TRIGGER IF EXISTS notify_trigger ON messenger_messages;'); + $this->addSql('CREATE TRIGGER notify_trigger AFTER INSERT OR UPDATE ON messenger_messages FOR EACH ROW EXECUTE PROCEDURE notify_messenger_messages();'); + } + + 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 fault_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE intervention_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE skill_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE stock_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE user_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE vehicle_id_seq CASCADE'); + $this->addSql('DROP TABLE fault'); + $this->addSql('DROP TABLE intervention'); + $this->addSql('DROP TABLE skill'); + $this->addSql('DROP TABLE stock'); + $this->addSql('DROP TABLE "user"'); + $this->addSql('DROP TABLE vehicle'); + $this->addSql('DROP TABLE messenger_messages'); + } +}