migrations/Version20251014103000.php line 1

  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\Migrations\AbstractMigration;
  6. /**
  7.  * Migration pour étendre la colonne user_info afin d'accepter des données JSON plus volumineuses.
  8.  */
  9. final class Version20251014103000 extends AbstractMigration
  10. {
  11.     public function getDescription(): string
  12.     {
  13.         return "Augmente la taille de la colonne user_info dans call_detail_records pour stocker l'ensemble des métadonnées d'appel.";
  14.     }
  15.     public function up(Schema $schema): void
  16.     {
  17.         // Étendre la colonne user_info pour accepter du texte libre (JSON complet)
  18.         $this->addSql(<<<'SQL'
  19.             ALTER TABLE call_detail_records
  20.             MODIFY user_info TEXT DEFAULT NULL COMMENT 'info sur l’opérateur (ERREUR DTMF, ...)'
  21.         SQL);
  22.     }
  23.     public function down(Schema $schema): void
  24.     {
  25.         // Revenir au VARCHAR(30) d'origine (risque de perte de données si des valeurs dépassent 30 caractères)
  26.         $this->addSql(<<<'SQL'
  27.             ALTER TABLE call_detail_records
  28.             MODIFY user_info VARCHAR(30) DEFAULT NULL COMMENT 'info sur l’opérateur (ERREUR DTMF, ...)'
  29.         SQL);
  30.     }
  31.     public function isTransactional(): bool
  32.     {
  33.         return true;
  34.     }
  35. }