39 lines
1.0 KiB
PHP
39 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Database\Migrations;
|
|
|
|
use CodeIgniter\Database\Migration;
|
|
|
|
class AddPostedAtToJobPositions extends Migration
|
|
{
|
|
public function up()
|
|
{
|
|
if (!$this->db->tableExists('job_positions')) {
|
|
return;
|
|
}
|
|
|
|
if (!$this->db->fieldExists('posted_at', 'job_positions')) {
|
|
$this->forge->addColumn('job_positions', [
|
|
'posted_at' => [
|
|
'type' => 'DATETIME',
|
|
'null' => true,
|
|
'after' => 'posted_by',
|
|
],
|
|
]);
|
|
}
|
|
|
|
$this->db->table('job_positions')
|
|
->whereIn('status', ['open', 'closed', 'filled'])
|
|
->where('posted_at', null)
|
|
->set('posted_at', 'COALESCE(created_at, updated_at)', false)
|
|
->update();
|
|
}
|
|
|
|
public function down()
|
|
{
|
|
if ($this->db->tableExists('job_positions') && $this->db->fieldExists('posted_at', 'job_positions')) {
|
|
$this->forge->dropColumn('job_positions', 'posted_at');
|
|
}
|
|
}
|
|
}
|