<?php

use Phinx\Db\Adapter\MysqlAdapter;

class CreateValues extends Phinx\Migration\AbstractMigration
{
    public function change()
    {
        $this->table('values', [
                'id' => false,
                'primary_key' => ['currency_id', 'date_time', 'base_id'],
                'engine' => 'InnoDB',
                'encoding' => 'utf8mb4',
                'collation' => 'utf8mb4_general_ci',
                'comment' => '',
                'row_format' => 'DYNAMIC',
            ])
            ->addColumn('currency_id', 'integer', [
                'null' => false,
                'limit' => '10',
                'signed' => false,
            ])
            ->addColumn('date_time', 'datetime', [
                'null' => false,
                'after' => 'currency_id',
            ])
            ->addColumn('value', 'double', [
                'null' => false,
                'after' => 'date_time',
            ])
            ->addColumn('base_id', 'integer', [
                'null' => false,
                'limit' => '10',
                'signed' => false,
                'after' => 'value',
            ])
            /*->addIndex(['currency_id'], [
                'name' => 'currency_id',
                'unique' => false,
            ])
            ->addIndex(['base_id'], [
                'name' => 'base_id',
                'unique' => false,
            ])*/
            ->addForeignKey(['currency_id'], 'currencies', ['id'], [
              'delete' => 'CASCADE',
              'update' => 'CASCADE'
            ])
            ->addForeignKey(['base_id'], 'currencies', ['id'], [
              'delete' => 'CASCADE',
              'update' => 'CASCADE'
            ])
            ->create();
        /*$this->table('currencies', [
                'id' => false,
                'primary_key' => ['id'],
                'engine' => 'InnoDB',
                'encoding' => 'utf8mb4',
                'collation' => 'utf8mb4_general_ci',
                'comment' => '',
                'row_format' => 'DYNAMIC',
            ])
            ->addColumn('id', 'integer', [
                'null' => false,
                'limit' => '10',
                'signed' => false,
                'identity' => 'enable',
            ])
            ->addColumn('code', 'string', [
                'null' => false,
                'limit' => 5,
                'collation' => 'utf8mb4_general_ci',
                'encoding' => 'utf8mb4',
                'after' => 'id',
            ])
            ->addColumn('name', 'string', [
                'null' => false,
                'limit' => 100,
                'collation' => 'utf8mb4_general_ci',
                'encoding' => 'utf8mb4',
                'after' => 'code',
            ])
            ->create();*/
    }
}
