25 lines
1.5 KiB
PHP
25 lines
1.5 KiB
PHP
<?php
|
|
defined('BASEPATH') OR exit('No direct script access allowed');
|
|
|
|
class Migration_Simplify_supplier_invoice_status extends CI_Migration
|
|
{
|
|
public function up()
|
|
{
|
|
if(!$this->db->table_exists('supplier_invoices'))return;
|
|
$this->db->query("ALTER TABLE supplier_invoices MODIFY status ENUM('draft','submitted','approved','verified','posted','partial','paid','cancelled','reversed') NOT NULL DEFAULT 'verified'");
|
|
$this->db->query("UPDATE supplier_invoices SET status='verified' WHERE status IN('draft','submitted','approved')");
|
|
$this->db->query("UPDATE supplier_invoices SET status='partial' WHERE status='posted' AND balance>0");
|
|
$this->db->query("UPDATE supplier_invoices SET status='paid',balance=0 WHERE status='posted' AND balance<=0");
|
|
$this->db->query("ALTER TABLE supplier_invoices MODIFY status ENUM('verified','partial','paid','cancelled','reversed') NOT NULL DEFAULT 'verified'");
|
|
}
|
|
|
|
public function down()
|
|
{
|
|
if(!$this->db->table_exists('supplier_invoices'))return;
|
|
$this->db->query("ALTER TABLE supplier_invoices MODIFY status ENUM('draft','submitted','approved','verified','posted','partial','paid','cancelled','reversed') NOT NULL DEFAULT 'draft'");
|
|
$this->db->query("UPDATE supplier_invoices SET status='approved' WHERE status='verified'");
|
|
$this->db->query("UPDATE supplier_invoices SET status='posted' WHERE status='partial' AND paid_amount<=0");
|
|
$this->db->query("ALTER TABLE supplier_invoices MODIFY status ENUM('draft','submitted','approved','posted','partial','paid','cancelled','reversed') NOT NULL DEFAULT 'draft'");
|
|
}
|
|
}
|