* @link https://www.oxidmodule.com */ declare(strict_types=1); namespace D3\ManufacturerInformation\Migrations; use Doctrine\DBAL\Schema\Schema; use Doctrine\DBAL\Types\TextType; use Doctrine\Migrations\AbstractMigration; /** * Auto-generated Migration: Please modify to your needs! */ final class Version20241023154223 extends AbstractMigration { public function getDescription(): string { return 'Add the D3 manufacturer longdesc column'; } public function up(Schema $schema): void { $this->connection->getDatabasePlatform()->registerDoctrineTypeMapping('enum', 'string'); $this->d3AddLongdescColumnToOxmanufacturers($schema); } public function down(Schema $schema): void { } /** * @param Schema $schema * @return void * @throws \Doctrine\DBAL\Schema\SchemaException */ public function d3AddLongdescColumnToOxmanufacturers(Schema $schema) { $table = !$schema->hasTable('oxmanufacturers') ? $schema->createTable('oxmanufacturers') : $schema->getTable('oxmanufacturers'); // Beschreibung if (!$table->hasColumn('D3DESCRIPTION')) { $table->addColumn('D3DESCRIPTION', (new TextType())->getName()) ->setLength($this->connection->getDatabasePlatform()::LENGTH_LIMIT_TEXT) ->setNotnull(true); } } }