@@ -5,8 +5,7 @@ discard block |
||
| 5 | 5 | /** |
| 6 | 6 | * Table class |
| 7 | 7 | */ |
| 8 | -trait Formatter |
|
| 9 | -{ |
|
| 8 | +trait Formatter { |
|
| 10 | 9 | |
| 11 | 10 | /** |
| 12 | 11 | * @var array column enclosing literal |
@@ -41,15 +40,13 @@ discard block |
||
| 41 | 40 | * @author Tarun Mukherjee (https://github.com/tmukherjee13) |
| 42 | 41 | */ |
| 43 | 42 | |
| 44 | - public function getTableName($table) |
|
| 45 | - { |
|
| 43 | + public function getTableName($table) { |
|
| 46 | 44 | return '{{%' . str_replace($this->db->tablePrefix, '', $table->name) . '}}'; |
| 47 | 45 | } |
| 48 | 46 | |
| 49 | 47 | |
| 50 | 48 | |
| 51 | - public function prepareInsert($rows, $columns) |
|
| 52 | - { |
|
| 49 | + public function prepareInsert($rows, $columns) { |
|
| 53 | 50 | |
| 54 | 51 | |
| 55 | 52 | return '$this->batchInsert("{{%test}}", ' . $rows . ', ' . $columns . ');'; |
@@ -60,8 +57,7 @@ discard block |
||
| 60 | 57 | * @param string $data the column string|$trim the literal to trim |
| 61 | 58 | * @return string |
| 62 | 59 | */ |
| 63 | - public function prepareColumns($data, $trim = ',') |
|
| 64 | - { |
|
| 60 | + public function prepareColumns($data, $trim = ',') { |
|
| 65 | 61 | return self::columnFormat($data, $trim); |
| 66 | 62 | } |
| 67 | 63 | |
@@ -70,8 +66,7 @@ discard block |
||
| 70 | 66 | * @param array $data the data array |
| 71 | 67 | * @return string |
| 72 | 68 | */ |
| 73 | - public function prepareData($data = []) |
|
| 74 | - { |
|
| 69 | + public function prepareData($data = []) { |
|
| 75 | 70 | self::$rows = ''; |
| 76 | 71 | foreach ($data as $row) { |
| 77 | 72 | $rows = ''; |
@@ -91,8 +86,7 @@ discard block |
||
| 91 | 86 | * @param string $data the column string|$trim the literal to trim |
| 92 | 87 | * @return string |
| 93 | 88 | */ |
| 94 | - public function dataFormat($data, $trim = ',') |
|
| 95 | - { |
|
| 89 | + public function dataFormat($data, $trim = ',') { |
|
| 96 | 90 | if (null !== $trim) { |
| 97 | 91 | $data = rtrim($data, $trim); |
| 98 | 92 | } |
@@ -104,8 +98,7 @@ discard block |
||
| 104 | 98 | * @param string $data the column string|$trim the literal to trim |
| 105 | 99 | * @return string |
| 106 | 100 | */ |
| 107 | - public function columnFormat($data, $trim = ',') |
|
| 108 | - { |
|
| 101 | + public function columnFormat($data, $trim = ',') { |
|
| 109 | 102 | if (null !== $trim) { |
| 110 | 103 | $data = rtrim($data, $trim); |
| 111 | 104 | } |
@@ -122,8 +115,7 @@ discard block |
||
| 122 | 115 | * @author Tarun Mukherjee (https://github.com/tmukherjee13) |
| 123 | 116 | */ |
| 124 | 117 | |
| 125 | - public function getColType($col) |
|
| 126 | - { |
|
| 118 | + public function getColType($col) { |
|
| 127 | 119 | |
| 128 | 120 | if ($col->isPrimaryKey && $col->autoIncrement) { |
| 129 | 121 | return 'pk'; |
@@ -135,11 +127,14 @@ discard block |
||
| 135 | 127 | } |
| 136 | 128 | if ($col->defaultValue != null && 'timestamp' != $col->dbType) { |
| 137 | 129 | $result .= " DEFAULT '{$col->defaultValue}'"; |
| 138 | - } elseif ($col->defaultValue == 'CURRENT_TIMESTAMP' && 'timestamp' == $col->dbType) { |
|
| 130 | + } |
|
| 131 | + elseif ($col->defaultValue == 'CURRENT_TIMESTAMP' && 'timestamp' == $col->dbType) { |
|
| 139 | 132 | $result .= " DEFAULT {$col->defaultValue}"; |
| 140 | - } elseif ($col->defaultValue != null && 'timestamp' == $col->dbType) { |
|
| 133 | + } |
|
| 134 | + elseif ($col->defaultValue != null && 'timestamp' == $col->dbType) { |
|
| 141 | 135 | $result .= " DEFAULT '{$col->defaultValue}'"; |
| 142 | - } elseif ($col->allowNull) { |
|
| 136 | + } |
|
| 137 | + elseif ($col->allowNull) { |
|
| 143 | 138 | $result .= ' DEFAULT NULL'; |
| 144 | 139 | } |
| 145 | 140 | return $result; |
@@ -167,19 +162,22 @@ discard block |
||
| 167 | 162 | * @author Tarun Mukherjee (https://github.com/tmukherjee13) |
| 168 | 163 | */ |
| 169 | 164 | |
| 170 | - public function formatCol($col) |
|
| 171 | - { |
|
| 165 | + public function formatCol($col) { |
|
| 172 | 166 | $decorator = []; |
| 173 | 167 | if ($col->isPrimaryKey && $col->autoIncrement) { |
| 174 | 168 | $decorator[] = 'primaryKey'; |
| 175 | - } elseif (in_array($col->type, self::$colTypes)) { |
|
| 169 | + } |
|
| 170 | + elseif (in_array($col->type, self::$colTypes)) { |
|
| 176 | 171 | $decorator[] = "{$this->modifyColType($col->dbType)}"; |
| 177 | - } elseif ($col->type == 'decimal') { |
|
| 172 | + } |
|
| 173 | + elseif ($col->type == 'decimal') { |
|
| 178 | 174 | $decorator[] = "{$col->dbType}"; |
| 179 | - } else { |
|
| 175 | + } |
|
| 176 | + else { |
|
| 180 | 177 | if (!empty($col->size) && $col->size == 1 && $col->type != 'char') { |
| 181 | 178 | $column = "boolean"; |
| 182 | - } else { |
|
| 179 | + } |
|
| 180 | + else { |
|
| 183 | 181 | $column = "{$col->type}"; |
| 184 | 182 | if (!empty($col->size)) { |
| 185 | 183 | $column .= "({$col->size})"; |
@@ -10,8 +10,7 @@ discard block |
||
| 10 | 10 | use yii\helpers\Console; |
| 11 | 11 | use yii\helpers\FileHelper; |
| 12 | 12 | |
| 13 | -class MigrationController extends MigrateController |
|
| 14 | -{ |
|
| 13 | +class MigrationController extends MigrateController { |
|
| 15 | 14 | use \tmukherjee13\migration\console\components\Formatter; |
| 16 | 15 | |
| 17 | 16 | /** |
@@ -70,16 +69,14 @@ discard block |
||
| 70 | 69 | /** |
| 71 | 70 | * @inheritdoc |
| 72 | 71 | */ |
| 73 | - public function options($actionID) |
|
| 74 | - { |
|
| 72 | + public function options($actionID) { |
|
| 75 | 73 | return array_merge(parent::options($actionID), ['migrationTable', 'db']); |
| 76 | 74 | } |
| 77 | 75 | |
| 78 | 76 | /** |
| 79 | 77 | * @inheritdoc |
| 80 | 78 | */ |
| 81 | - public function beforeAction($action) |
|
| 82 | - { |
|
| 79 | + public function beforeAction($action) { |
|
| 83 | 80 | |
| 84 | 81 | if (parent::beforeAction($action)) { |
| 85 | 82 | if (is_string($this->db)) { |
@@ -113,8 +110,7 @@ discard block |
||
| 113 | 110 | * Collects the foreign key column details for the given table. |
| 114 | 111 | * @param TableSchema $table the table metadata |
| 115 | 112 | */ |
| 116 | - protected function findConstraints($table) |
|
| 117 | - { |
|
| 113 | + protected function findConstraints($table) { |
|
| 118 | 114 | $sql = <<<SQL |
| 119 | 115 | SELECT |
| 120 | 116 | kcu.constraint_name, |
@@ -182,20 +178,19 @@ discard block |
||
| 182 | 178 | * @param TableSchema $table the table metadata |
| 183 | 179 | * @return string $sql the result of 'SHOW CREATE TABLE' |
| 184 | 180 | */ |
| 185 | - protected function getCreateTableSql($table) |
|
| 186 | - { |
|
| 181 | + protected function getCreateTableSql($table) { |
|
| 187 | 182 | $row = $this->db->createCommand('SHOW CREATE TABLE ' . $this->quoteTableName($table->fullName))->queryOne(); |
| 188 | 183 | if (isset($row['Create Table'])) { |
| 189 | 184 | $sql = $row['Create Table']; |
| 190 | - } else { |
|
| 185 | + } |
|
| 186 | + else { |
|
| 191 | 187 | $row = array_values($row); |
| 192 | 188 | $sql = $row[1]; |
| 193 | 189 | } |
| 194 | 190 | return $sql; |
| 195 | 191 | } |
| 196 | 192 | |
| 197 | - public function quoteTableName($name) |
|
| 198 | - { |
|
| 193 | + public function quoteTableName($name) { |
|
| 199 | 194 | return strpos($name, '`') !== false ? $name : "`$name`"; |
| 200 | 195 | } |
| 201 | 196 | |
@@ -205,8 +200,7 @@ discard block |
||
| 205 | 200 | * @param int $limit |
| 206 | 201 | * @return int |
| 207 | 202 | */ |
| 208 | - public function actionUpData($limit = 0) |
|
| 209 | - { |
|
| 203 | + public function actionUpData($limit = 0) { |
|
| 210 | 204 | $this->migrationPath .= DIRECTORY_SEPARATOR . $this->dataMigrationFolder; |
| 211 | 205 | return parent::actionUp($limit); |
| 212 | 206 | } |
@@ -219,8 +213,7 @@ discard block |
||
| 219 | 213 | * @author Tarun Mukherjee (https://github.com/tmukherjee13) |
| 220 | 214 | */ |
| 221 | 215 | |
| 222 | - public function actionTable(array $tables) |
|
| 223 | - { |
|
| 216 | + public function actionTable(array $tables) { |
|
| 224 | 217 | |
| 225 | 218 | if ($this->confirm('Create the migration ' . "?")) { |
| 226 | 219 | |
@@ -298,8 +291,7 @@ discard block |
||
| 298 | 291 | * @param array $tables the list of tables |
| 299 | 292 | * @return integer|null |
| 300 | 293 | */ |
| 301 | - public function actionData(array $tables) |
|
| 302 | - { |
|
| 294 | + public function actionData(array $tables) { |
|
| 303 | 295 | |
| 304 | 296 | if ($this->confirm('Create the migration ' . "?", true)) { |
| 305 | 297 | foreach ($tables as $key => $args) { |
@@ -341,7 +333,8 @@ discard block |
||
| 341 | 333 | |
| 342 | 334 | if (empty($prepared_data)) { |
| 343 | 335 | $this->stdout("\nTable '{$table->name}' doesn't contain any data.\n\n", Console::FG_RED); |
| 344 | - } else { |
|
| 336 | + } |
|
| 337 | + else { |
|
| 345 | 338 | $pcolumns = $this->prepareColumns($pcolumns); |
| 346 | 339 | $prows = $this->prepareData($prepared_data); |
| 347 | 340 | |
@@ -364,8 +357,7 @@ discard block |
||
| 364 | 357 | * @param string $args the schema name |
| 365 | 358 | * @return integer |
| 366 | 359 | */ |
| 367 | - public function actionSchema($args) |
|
| 368 | - { |
|
| 360 | + public function actionSchema($args) { |
|
| 369 | 361 | |
| 370 | 362 | $schema = $args; |
| 371 | 363 | $this->class = 'dump_database_' . $schema; |
@@ -393,18 +385,15 @@ discard block |
||
| 393 | 385 | |
| 394 | 386 | } |
| 395 | 387 | |
| 396 | - public function getFileName() |
|
| 397 | - { |
|
| 388 | + public function getFileName() { |
|
| 398 | 389 | return 'm' . gmdate('ymd_His') . '_' . $this->class; |
| 399 | 390 | } |
| 400 | 391 | |
| 401 | - public function setFileName() |
|
| 402 | - { |
|
| 392 | + public function setFileName() { |
|
| 403 | 393 | $this->fileName = $this->getFileName(); |
| 404 | 394 | } |
| 405 | 395 | |
| 406 | - public function prepareFile($data) |
|
| 407 | - { |
|
| 396 | + public function prepareFile($data) { |
|
| 408 | 397 | $file = $this->migrationPath . DIRECTORY_SEPARATOR . $this->getFileName() . '.php'; |
| 409 | 398 | try { |
| 410 | 399 | |
@@ -424,8 +413,7 @@ discard block |
||
| 424 | 413 | /** |
| 425 | 414 | * @inheritdoc |
| 426 | 415 | */ |
| 427 | - protected function getMigrationHistory($limit) |
|
| 428 | - { |
|
| 416 | + protected function getMigrationHistory($limit) { |
|
| 429 | 417 | if ($this->db->schema->getTableSchema($this->migrationTable, true) === null) { |
| 430 | 418 | $this->createMigrationHistoryTable(); |
| 431 | 419 | } |
@@ -445,8 +433,7 @@ discard block |
||
| 445 | 433 | /** |
| 446 | 434 | * @inheritdoc |
| 447 | 435 | */ |
| 448 | - protected function addMigrationHistory($version) |
|
| 449 | - { |
|
| 436 | + protected function addMigrationHistory($version) { |
|
| 450 | 437 | $command = $this->db->createCommand(); |
| 451 | 438 | $command->insert($this->migrationTable, [ |
| 452 | 439 | 'version' => $version, |
@@ -457,8 +444,7 @@ discard block |
||
| 457 | 444 | /** |
| 458 | 445 | * @inheritdoc |
| 459 | 446 | */ |
| 460 | - protected function removeMigrationHistory($version) |
|
| 461 | - { |
|
| 447 | + protected function removeMigrationHistory($version) { |
|
| 462 | 448 | $command = $this->db->createCommand(); |
| 463 | 449 | $command->delete($this->migrationTable, [ |
| 464 | 450 | 'version' => $version, |
@@ -468,8 +454,7 @@ discard block |
||
| 468 | 454 | /** |
| 469 | 455 | * @inheritdoc |
| 470 | 456 | */ |
| 471 | - protected function parseFields() |
|
| 472 | - { |
|
| 457 | + protected function parseFields() { |
|
| 473 | 458 | $fields = []; |
| 474 | 459 | |
| 475 | 460 | foreach ($this->fields as $column => $schema) { |