migrations/Version20251124180712.php line 1

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use App\DBAL\Types\UserGroupType;
  5. use Doctrine\DBAL\Schema\Schema;
  6. use Doctrine\Migrations\AbstractMigration;
  7. /**
  8.  * Auto-generated Migration: Please modify to your needs!
  9.  */
  10. final class Version20251124180712 extends AbstractMigration
  11. {
  12.     /** @var array<string,int> */
  13.     private $groupIds = [
  14.         UserGroupType::SALES_ASSOCIATES => 2,
  15.         UserGroupType::CASE_MANAGERS => 3,
  16.         UserGroupType::LEAD_AGENTS => 4,
  17.         UserGroupType::PROCESSORS => 6,
  18.         UserGroupType::TAX_PREPARERS => 8,
  19.         UserGroupType::DIALERS => 10,
  20.         UserGroupType::FINANCIALS => 11,
  21.         UserGroupType::SERVICE_SALES => 13,
  22.         UserGroupType::COLLECTORS => 14,
  23.         UserGroupType::HUMAN_RESOURCES => 15,
  24.         UserGroupType::RESOLUTION_SPECIALIST => 16,
  25.     ];
  26.     public function getDescription(): string
  27.     {
  28.         return '';
  29.     }
  30.     public function up(Schema $schema): void
  31.     {
  32.         // this up() migration is auto-generated, please modify it to your needs
  33.         $this->addSql('ALTER TABLE user_group ADD permissions LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\'');
  34.         foreach ($this->groupIds as $type => $id) {
  35.             $this->addSql(
  36.                 'UPDATE user_group SET permissions = :permissions WHERE id = :id',
  37.                 [
  38.                     'id' => $id,
  39.                     'permissions' => serialize([$type]),
  40.                 ]
  41.             );
  42.         }
  43.     }
  44.     public function down(Schema $schema): void
  45.     {
  46.         // this down() migration is auto-generated, please modify it to your needs
  47.         $this->addSql('ALTER TABLE user_group DROP permissions');
  48.     }
  49. }