<?php 

use Phalcon\Db\Column;
use Phalcon\Db\Index;
use Phalcon\Db\Reference;
use Phalcon\Mvc\Model\Migration;

/**
 * Class JenjangMigration_108
 */
class JenjangMigration_108 extends Migration
{
    /**
     * Define the table structure
     *
     * @return void
     */
    public function morph()
    {
        
    }

    /**
     * Run the migrations
     *
     * @return void
     */
    public function up()
    {
		self::$connection->execute('
			create table jaga.jenjang(
				id serial not null,
				nama_jenjang varchar(10) not null,
				primary key(id)
			);

			insert into jaga.jenjang(nama_jenjang) values
			(\'SD\'), (\'SMP\'), (\'SMA\'), (\'SMK\'), (\'MAS\'), (\'MAN\'), (\'KB\'), (\'POS\'), (\'TK\'), (\'BKB\'), (\'PAUD\'),(\'RA\'),(\'PKBM\'),(\'SPS\'),(\'SKB\'),(\'SMPLB\'),(\'Satap\'),(\'Pondo\'),(\'TPA\'),(\'SMAg.\'),(\'SMPTK\'),(\'SDLB\'),(\'Kursu\'),(\'SPK T\'),(\'TKLB\'),(\'SLB\'),(\'SMLB\');


			create table jaga.sekolah_old as select * from jaga.sekolah;
			ALTER TABLE jaga.sekolah_old
				ALTER COLUMN id SET NOT NULL;

			ALTER TABLE jaga.sekolah_old
				ALTER COLUMN produk_id SET NOT NULL;
				
			ALTER TABLE jaga.sekolah_old
				ALTER COLUMN no_urut_internal SET NOT NULL;
				
			ALTER TABLE jaga.sekolah_old
				ADD PRIMARY KEY (id);

			ALTER TABLE jaga.sekolah
				ADD COLUMN jenjang_id integer;
			ALTER TABLE jaga.sekolah
				ADD FOREIGN KEY (jenjang_id)
				REFERENCES jaga.jenjang (id) MATCH SIMPLE
				ON UPDATE CASCADE
				ON DELETE NO ACTION;

			update jaga.sekolah set jenjang_id=1 where lower(nama) like \'sd%\';
			update jaga.sekolah set jenjang_id=2 where lower(nama) like \'smp%\';
			update jaga.sekolah set jenjang_id=3 where lower(nama) like \'sma%\';
			update jaga.sekolah set jenjang_id=4 where lower(nama) like \'smk%\';
			update jaga.sekolah set jenjang_id=5 where lower(nama) like \'mas%\';
			update jaga.sekolah set jenjang_id=6 where lower(nama) like \'man%\';
			update jaga.sekolah set jenjang_id=7 where lower(nama) like \'kb%\';
			update jaga.sekolah set jenjang_id=8 where lower(nama) like \'pos%\';
			update jaga.sekolah set jenjang_id=9 where lower(nama) like \'tk%\';
			update jaga.sekolah set jenjang_id=10 where lower(bentuk) = \'ra\';
			update jaga.sekolah set jenjang_id = 11 where lower(bentuk) = lower(\'PKBM\');
			update jaga.sekolah set jenjang_id = 12 where lower(bentuk) = lower(\'SPS\');
			update jaga.sekolah set jenjang_id = 13 where lower(bentuk) = lower(\'SKB\');
			update jaga.sekolah set jenjang_id = 14 where lower(bentuk) = lower(\'SMPLB\');
			update jaga.sekolah set jenjang_id = 15 where lower(bentuk) = lower(\'Satap\');
			update jaga.sekolah set jenjang_id = 16 where lower(bentuk) = lower(\'Pondo\');
			update jaga.sekolah set jenjang_id = 17 where lower(bentuk) = lower(\'TPA\');
			update jaga.sekolah set jenjang_id = 18 where lower(bentuk) = lower(\'SMAg.\');
			update jaga.sekolah set jenjang_id = 19 where lower(bentuk) = lower(\'SMPTK\');
			update jaga.sekolah set jenjang_id = 20 where lower(bentuk) = lower(\'SDLB\');
			update jaga.sekolah set jenjang_id = 21 where lower(bentuk) = lower(\'Kursu\');
			update jaga.sekolah set jenjang_id = 22 where lower(bentuk) = lower(\'SPK T\');
			update jaga.sekolah set jenjang_id = 23 where lower(bentuk) = lower(\'TKLB\');
			update jaga.sekolah set jenjang_id = 24 where lower(bentuk) = lower(\'SLB\');
			update jaga.sekolah set jenjang_id = 25 where lower(bentuk) = lower(\'SMLB\');
		');
    }

    /**
     * Reverse the migrations
     *
     * @return void
     */
    public function down()
    {

    }

}
