createTable('Modulo', [ 'id' => $this->string(50), 'nombre' => $this->string(100), 'creado' => $this->timestamp() . ' with time zone', 'modificado' => $this->timestamp() . ' with time zone', 'eliminado' => $this->timestamp() . ' with time zone' ]); $this->addPrimaryKey('pk_Modulo', 'Modulo', 'id'); $this->createTable('Permiso', [ 'id' => $this->string(50), 'idModulo' => $this->string(50), 'nombre' => $this->string(100), 'descripcion' => $this->string(100), 'creado' => $this->timestamp() . ' with time zone', 'modificado' => $this->timestamp() . ' with time zone', 'eliminado' => $this->timestamp() . ' with time zone' ]); $this->addPrimaryKey('pk_Permiso', 'Permiso', 'id'); $this->addForeignKey('fk_Permiso_Modulo', 'Permiso', 'idModulo', 'Modulo', 'id'); $this->createTable('PermisoUsuario', [ 'id' => $this->string(50), 'idUsuario' => $this->string(50), 'idPermiso' => $this->string(50), 'asignado' => $this->timestamp() . ' with time zone', 'modificado' => $this->timestamp() . ' with time zone', 'eliminado' => $this->timestamp() . ' with time zone' ]); $this->addPrimaryKey('pk_PermisoUsuario', 'PermisoUsuario', 'id'); $this->addForeignKey('fk_PermisoUsuario_Usuario', 'PermisoUsuario', 'idUsuario', 'Usuario', 'id'); $this->addForeignKey('fk_PermisoUsuario_Permiso', 'PermisoUsuario', 'idPermiso', 'Permiso', 'id'); $this->createTable('ColeccionPermiso', [ 'id' => $this->string(50), 'clave' => $this->string(50), "nombre" => $this->string(100), "descripcion" => $this->string(100), "creado" => $this->timestamp() . ' with time zone', "modificado" => $this->timestamp() . ' with time zone', "eliminado" => $this->timestamp() . ' with time zone' ]); $this->addPrimaryKey('pk_coleccion_permiso', 'ColeccionPermiso', 'id'); $this->createTable('ColeccionPermisoPermiso', [ 'idColeccion' => $this->string(50), 'idPermiso' => $this->string(50), "creado" => $this->timestamp() . ' with time zone', "modificado" => $this->timestamp() . ' with time zone', "eliminado" => $this->timestamp() . ' with time zone' ]); $this->addPrimaryKey('pk_coleccion_permiso_permiso', 'ColeccionPermisoPermiso', ['idColeccion', 'idPermiso']); $this->addForeignKey('fk_coleccion_permiso_permiso_coleccion', 'ColeccionPermisoPermiso', 'idColeccion', 'ColeccionPermiso', 'id'); $this->addForeignKey('fk_coleccion_permiso_permiso_permiso', 'ColeccionPermisoPermiso', 'idPermiso', 'Permiso', 'id'); } public function safeDown() { $this->dropForeignKey("fk_coleccion_permiso_permiso_coleccion", "ColeccionPermisoPermiso"); $this->dropForeignKey("fk_coleccion_permiso_permiso_permiso", "ColeccionPermisoPermiso"); $this->dropPrimaryKey("pk_coleccion_permiso_permiso", "ColeccionPermisoPermiso"); $this->dropTable("ColeccionPermisoPermiso"); $this->dropPrimaryKey("pk_coleccion_permiso", "ColeccionPermiso"); $this->dropTable("ColeccionPermiso"); $this->dropForeignKey('fk_PermisoUsuario_Permiso', 'PermisoUsuario'); $this->dropForeignKey('fk_PermisoUsuario_Usuario', 'PermisoUsuario'); $this->dropForeignKey('fk_Permiso_Modulo', 'Permiso'); $this->dropTable('PermisoUsuario'); $this->dropTable('Permiso'); $this->dropTable('Modulo'); } }