Files
accounting_dev_v2/application/migrations/20260831001100_seed_receivable_control_accounts.php
T
2026-09-11 16:03:00 +07:00

16 lines
1.4 KiB
PHP

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Migration_Seed_receivable_control_accounts extends CI_Migration
{
public function up()
{
$defs=array(
array('stage5_tax_payable','2191','Utang Pajak Penjualan','liability','sales_tax_payable','Pajak keluaran invoice'),
array('stage5_customer_advance','2192','Uang Muka Pelanggan','liability','customer_advances','Kewajiban uang muka pelanggan'),
array('stage5_bad_debt','6191','Beban Kerugian Piutang','expense','bad_debt_expense','Beban write-off piutang')
);
foreach($defs as $d){$a=$this->db->get_where('accounts',array('kode_akun'=>$d[1]))->row();if(!$a){$this->db->insert('accounts',array('kode_akun'=>$d[1],'nama_akun'=>$d[2],'tipe'=>$d[3],'posisi'=>$d[3]==='expense'?'debit':'kredit','kategori'=>$d[3]==='expense'?'laba_rugi':'neraca','is_active'=>1,'is_header'=>0,'allow_posting'=>1));$id=$this->db->insert_id();}else$id=$a->id;if(!$this->db->where('mapping_key',$d[4])->count_all_results('system_account_mappings'))$this->db->insert('system_account_mappings',array('mapping_key'=>$d[4],'account_id'=>$id,'description'=>$d[5],'is_active'=>1,'created_at'=>date('Y-m-d H:i:s')));}
}
public function down(){foreach(array('sales_tax_payable','customer_advances','bad_debt_expense') as $k)$this->db->where('mapping_key',$k)->delete('system_account_mappings');}
}