Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- use Phinx\Db\Adapter\MysqlAdapter;
- use Phinx\Migration\AbstractMigration;
- class TableApartment extends AbstractMigration
- {
- public function up()
- {
- $table = $this->table('ore_nf_apartment');
- $table->changeColumn(
- 'obj_type_id',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_country',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_region',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_area',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_city',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'city_id',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'visits',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'activity_always',
- 'boolean',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'is_price_poa',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- 'limit' => MysqlAdapter::INT_TINY
- ]
- );
- $table->changeColumn(
- 'price',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- 'length' => MysqlAdapter::INT_BIG
- ]
- );
- $table->changeColumn(
- 'price_to',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- 'length' => MysqlAdapter::INT_BIG
- ]
- );
- $table->changeColumn(
- 'window_to',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'price_type',
- 'boolean',
- [
- 'signed' => false,
- 'default' => '5',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'sorter',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'owner_id',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'parent_id',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'room_type',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'balcony_type',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'wc_type',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'floor_coat',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'floor_coat',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'garage_type',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'repair',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'object_state',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'building_type',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'plot_type',
- 'integer',
- [
- 'signed' => false,
- 'default' => '0',
- 'null' => false
- ]
- );
- //Удаляю старые ключи
- $keys = [
- 'type',
- 'price_type',
- 'title_ru',
- 'title_en',
- 'title_de',
- 'title_es',
- 'title_ar',
- 'description_ru',
- 'description_en',
- 'description_de',
- 'description_es',
- 'description_ar',
- 'description_near_ru',
- 'description_near_en',
- 'description_near_de',
- 'description_near_es',
- 'description_near_ar',
- 'address_ru',
- 'address_en',
- 'address_de',
- 'address_es',
- 'address_ar',
- ];
- foreach ($keys as $keyName) {
- $table->removeIndexByName($keyName);
- }
- // Добавляю новые ключи
- $keys = [
- 'halfActiveLocCity' => [
- 'loc_city',
- 'active'
- ],
- 'halfActiveCity' => [
- 'city_id',
- 'active'
- ],
- 'fullActiveLocCity' => [
- 'loc_city',
- 'active',
- 'owner_active'
- ],
- 'fullActiveCity' => [
- 'city_id',
- 'active',
- 'owner_active'
- ],
- 'halfActiveObjTypeLocCity' => [
- 'obj_type_id',
- 'loc_city',
- 'active'
- ],
- 'halfActiveObjTypeCity' => [
- 'obj_type_id',
- 'city_id',
- 'active'
- ],
- 'fullActiveObjTypeLocCity' => [
- 'obj_type_id',
- 'loc_city',
- 'active',
- 'owner_active'
- ],
- 'fullActiveObjTypeCity' => [
- 'obj_type_id',
- 'city_id',
- 'active',
- 'owner_active'
- ],
- 'sorterActive' => [
- 'sorter',
- 'active'
- ],
- ];
- foreach ($keys as $keyName => $keyFields) {
- $table->addIndex(
- $keyFields,
- ['name' => $keyName]
- );
- }
- $table->save();
- }
- public function down()
- {
- $table = $this->table('ore_nf_apartment');
- $table->changeColumn(
- 'obj_type_id',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_country',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_region',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_area',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'loc_city',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'city_id',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'visits',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'activity_always',
- 'boolean',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'is_price_poa',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- 'limit' => MysqlAdapter::INT_TINY
- ]
- );
- $table->changeColumn(
- 'price',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- 'length' => MysqlAdapter::INT_BIG
- ]
- );
- $table->changeColumn(
- 'price_to',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- 'length' => MysqlAdapter::INT_BIG
- ]
- );
- $table->changeColumn(
- 'window_to',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false,
- ]
- );
- $table->changeColumn(
- 'price_type',
- 'boolean',
- [
- 'signed' => true,
- 'default' => '5',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'sorter',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'owner_id',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'parent_id',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'room_type',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'balcony_type',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'wc_type',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'floor_coat',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'floor_coat',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'garage_type',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'repair',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'object_state',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'building_type',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- $table->changeColumn(
- 'plot_type',
- 'integer',
- [
- 'signed' => true,
- 'default' => '0',
- 'null' => false
- ]
- );
- //Восстанавливаю старые ключи
- $table->addIndex(
- ['type'],
- ['name' => 'type']
- );
- $table->addIndex(
- ['price_type'],
- ['name' => 'price_type']
- );
- $fullTextKeys = [
- 'title_ru',
- 'title_en',
- 'title_de',
- 'title_es',
- 'title_ar',
- 'description_ru',
- 'description_en',
- 'description_de',
- 'description_es',
- 'description_ar',
- 'description_near_ru',
- 'description_near_en',
- 'description_near_de',
- 'description_near_es',
- 'description_near_ar',
- 'address_ru',
- 'address_en',
- 'address_de',
- 'address_es',
- 'address_ar',
- ];
- foreach ($fullTextKeys as $keyName) {
- $table->addIndex(
- [$keyName],
- [
- 'name' => $keyName,
- 'type' => 'fulltext'
- ]
- );
- }
- // Удаляю новые ключи
- $keys = [
- 'halfActiveLocCity',
- 'halfActiveCity',
- 'fullActiveLocCity',
- 'fullActiveCity',
- 'halfActiveObjTypeLocCity',
- 'halfActiveObjTypeCity',
- 'fullActiveObjTypeLocCity',
- 'fullActiveObjTypeCity',
- 'sorterActive',
- ];
- foreach ($keys as $keyName) {
- $table->removeIndexByName($keyName);
- }
- $table->save();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement