migrations/Version20251006140000.php line 1
<?phpdeclare(strict_types=1);namespace DoctrineMigrations;use Doctrine\DBAL\Schema\Schema;use Doctrine\Migrations\AbstractMigration;/*** Migration pour créer la table conseiller_call_notes** Cette table permet aux conseillers/voyants de prendre et sauvegarder des notes* sur leurs clients lors des consultations téléphoniques.*/final class Version20251006140000 extends AbstractMigration{public function getDescription(): string{return 'Création de la table conseiller_call_notes pour stocker les notes des voyants sur leurs clients';}public function up(Schema $schema): void{// Création de la table conseiller_call_notes$this->addSql(<<<'SQL'CREATE TABLE conseiller_call_notes (id INT UNSIGNED AUTO_INCREMENT NOT NULL COMMENT 'ID unique de la note',id_conseiller INT UNSIGNED NOT NULL COMMENT 'ID du conseiller/voyant',id_client INT UNSIGNED NOT NULL COMMENT 'ID du client',service_id INT UNSIGNED NOT NULL COMMENT 'ID du service',notes TEXT DEFAULT NULL COMMENT 'Notes prises par le voyant sur ce client',created_at DATETIME NOT NULL COMMENT 'Date de création',updated_at DATETIME NOT NULL COMMENT 'Date de dernière mise à jour',PRIMARY KEY(id),INDEX idx_conseiller_client (id_conseiller, id_client),INDEX idx_conseiller (id_conseiller),INDEX idx_client (id_client),INDEX idx_service (service_id),INDEX idx_updated_at (updated_at)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDBCOMMENT = 'Table pour stocker les notes des conseillers sur leurs clients'SQL);// Ajout des contraintes de clés étrangères (optionnel, selon votre schéma existant)// Si vous avez des contraintes FK sur vos autres tables, décommentez ces lignes :// $this->addSql('ALTER TABLE conseiller_call_notes ADD CONSTRAINT fk_conseiller_notes_client FOREIGN KEY (id_client) REFERENCES client(id_client) ON DELETE CASCADE');// $this->addSql('ALTER TABLE conseiller_call_notes ADD CONSTRAINT fk_conseiller_notes_service FOREIGN KEY (service_id) REFERENCES service(service_id) ON DELETE CASCADE');// Log de la migration$this->addSql("INSERT INTO migration_log (version, description, executed_at) VALUES ('20251006140000', 'Création table conseiller_call_notes', NOW()) ON DUPLICATE KEY UPDATE executed_at = NOW()");}public function down(Schema $schema): void{// Suppression des contraintes de clés étrangères si elles existent// $this->addSql('ALTER TABLE conseiller_call_notes DROP FOREIGN KEY fk_conseiller_notes_client');// $this->addSql('ALTER TABLE conseiller_call_notes DROP FOREIGN KEY fk_conseiller_notes_service');// Suppression de la table$this->addSql('DROP TABLE IF EXISTS conseiller_call_notes');}public function isTransactional(): bool{// Cette migration peut être exécutée dans une transactionreturn true;}}