Files
accounting_dev_v2/application/migrations/20260901001900_seed_fx_accounts.php
2026-09-11 16:03:00 +07:00

8 lines
1.2 KiB
PHP

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Migration_Seed_fx_accounts extends CI_Migration
{
public function up(){foreach(array(array('realized_fx_gain','4193','Laba Selisih Kurs Terealisasi','revenue'),array('realized_fx_loss','6194','Rugi Selisih Kurs Terealisasi','expense'),array('unrealized_fx_gain','4194','Laba Selisih Kurs Belum Terealisasi','revenue'),array('unrealized_fx_loss','6195','Rugi Selisih Kurs Belum Terealisasi','expense'))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'=>'laba_rugi','is_active'=>1,'is_header'=>0,'allow_posting'=>1,'company_id'=>1));$id=$this->db->insert_id();}else$id=$a->id;if(!$this->db->where('mapping_key',$d[0])->count_all_results('system_account_mappings'))$this->db->insert('system_account_mappings',array('mapping_key'=>$d[0],'account_id'=>$id,'description'=>$d[2],'is_active'=>1,'created_at'=>date('Y-m-d H:i:s'),'company_id'=>1));}}
public function down(){throw new RuntimeException('Gunakan backup untuk rollback FX mapping.');}
}