/******************************************************************* PHP Class : /Controller/Gel/UmumController Description : Jurnal Umum Created By : Siau Pheng (siaupheng@3fonia.com). Created Date : May 22th, 2010. Last Modified : September 10th, 2026. (c) 3FONIA Software; WWW.3FONIA.COM. *******************************************************************/ var GELUmumJS = { PHP: '', KODE: '', index(q) { $('#butTambah').click(() => this.tx_tambah()); $('#butUbah').click(() => this.tx_ubah());$('#butHapus').click(() => this.tx_hapus()); $('#butSimpan').click(() => this.tx_simpan()); $('#butBatal').click(() => this.tx_batal()); this.data_query('master', 'view', ((typeof(q)!=='undefined') ? q : '')); }, tx_brow() { var _isi = new String('
 
'); this.winBTX = FoniaJS.showWindow('BTX', 'Daftar Transaksi', _isi, 'xl', '', () => { $('#winBTX') .find('#Cari_TX').keydown((e) => { var key = e.keyCode || e.which || 0; if (key==13 && e.target.value!='') this.data_query('brow-tx'); }).end() .find('#butSearch').click(() => this.data_query('brow-tx')).end() .find('#butAll').click(() => { $('#winBTX').find('#Cari_TX').val(''); this.data_query('brow-tx'); }); this.data_query('brow-tx'); FoniaJS.setFocus('#Cari_TX'); }); }, tx_select(acell) { FoniaJS.closeWindow(this.winBTX); $('#Kode_Jurnal').val(acell[0]); this.data_query('master', 'view'); }, tx_tambah() { this.data_query('master', 'add'); }, tx_ubah() { if (!$('#Kode_Jurnal').val()){ FoniaJS.showError("Silakan masukkan Kode Jurnal !"); return; } FoniaJS.showAuth(() => this.data_query('master', 'edit'), this, 'EDIT '+$('#Kode_Jurnal').val()); }, tx_hapus() { if (!$('#Kode_Jurnal').val()){ FoniaJS.showError("Silakan masukkan Kode Jurnal !"); return; } FoniaJS.showConfirm('Konfirmasi', 'Yakin akan hapus '+$('#Kode_Jurnal').val()+' ?', () => { FoniaJS.showAuth(() => { new Request({ url: this.PHP + '/proses_hapus', sendParam: ['Kode_Jurnal'], onSuccess: (adata) => { if (adata.status==true){ $('#Kode_Jurnal').val(''); this.data_query('master', 'view'); FoniaJS.showInfo('Proses hapus data sukses!'); }else{ FoniaJS.showInfo('Ada masalah dalam proses hapus data!'); } } }).send(); }, this, 'DELETE '+$('#Kode_Jurnal').val()); }, 'danger'); }, tx_simpan() { if ($('#Total_Item').val()==0){ FoniaJS.showError("Belum ada Item Jurnal!"); return false; } if ($('#Total_Jumlah').val()!=0){ FoniaJS.showError("Jurnal Debit dan Kredit belum seimbang!"); return false; } if (!this.cek_awal()) return false; this.data_query('master', 'save'); }, tx_batal() { FoniaJS.showConfirm('Konfirmasi', 'Yakin akan membatalkan ?', () => { this.data_query('master', 'cancel'); $('#Kode_Jurnal').val(''); }, 'danger'); }, cek_awal() { /*if (GEL_Kunci($('Tanggal').get('value'))) { FoniaJS.showErrorLocale('SHIAS.lock_periode', 2000); return false; }*/ if ($('#Kode_Ref').val()==''){ FoniaJS.showError("Silakan masukkan Kode Referensi!"); FoniaJS.setFocus("#Kode_Ref"); return false; } return true; }, rek_brow() { if (!this.cek_awal()) return false; var _isi = new String('
 
'); this.winBRek = FoniaJS.showWindow('BRek', 'Daftar Rekening', _isi, 'lg', '', () => { $('#winBRek') .find('#Cari_Rek').keydown((e) => { var key = e.keyCode || e.which || 0; if (key==13 && e.target.value!='') this.data_query('brow-rek'); }).end() .find('#butSearch').click(() => this.data_query('brow-rek')).end() .find('#butAll').click(() => { $('#winBRek').find('#Cari_Rek').val(''); this.data_query('brow-rek'); }); this.data_query('brow-rek'); FoniaJS.setFocus('#Cari_Rek'); }); }, rek_select(acell) { FoniaJS.closeWindow(this.winBRek); this.detail_rek('insert', 0, acell[0], 'D'); }, detail_rek(mode, ID, Kode_Rek, DK) { new Request({ url: this.PHP + '/form_rek', sendParam: ['mode','mode_detail='+mode,'Kode_Jurnal','ID='+ID,'Kode_Rek='+Kode_Rek,'DK='+DK], onSuccess: (a) => { this.winDetail = FoniaJS.showWindow('Detail', 'Detail Jurnal', a.html, 'lg', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], () => { FoniaJS.AutoComplete('#Nama_Rek', this.PHP + '/auto_rek', ['Kode_Jurnal'], {'selectFunc': this.Rek_Comp}); $('#winDetail') .find('#butWSimpan').click(() => this.detail_simpan()).end() .find('#Jumlah').keyup((e) => { if (e.which==13 && FoniaJS.StrToFloat($('#Jumlah').val())>0) this.detail_simpan(); }); if (mode == 'insert' && Kode_Rek == 0) { FoniaJS.setFocus('#Nama_Rek'); } else { FoniaJS.setFocus('#Jumlah'); } }); } }).send(); }, detail_tambah() { if (!this.cek_awal()) return false; this.detail_rek('insert', 0, 0, 'D'); }, detail_ubah(acell) { this.detail_rek('update', acell[0], acell[1], acell[3]); }, detail_hapus(acell) { FoniaJS.showConfirm('Konfirmasi', 'Hapus item "'+acell[1]+' - '+acell[2]+'" ?', () => { new Request_JSF({ url: this.PHP + '/table_detail', sendParam: ['mode','mode_detail=delete','Kode_Jurnal','ID='+acell[0]] }).send(); }, 'danger'); }, detail_simpan() { if (parseInt($('#Kode_Rek').val())==0) { FoniaJS.showError('Silakan masukkan Rekening Jurnal !'); return; } var _mdetail = $('#mode_detail').val(); new Request_JSF({ url: this.PHP + '/table_detail', sendParam: ['mode','mode_detail','Kode_Jurnal','Kode_Rek','DK','Jumlah','ID'], onSuccess: () => { if (_mdetail=='insert') { this.detail_tambah(); } else FoniaJS.closeWindow(this.winDetail); } }).send(); }, data_query(tipe, mode, kd_tx) { if (tipe=="master"){ var sparam = ['mode='+mode,'Kode_Jurnal'+((typeof(kd_tx)!=='undefined')?'='+kd_tx:'')]; if ((mode ?? '')=='save') sparam = ['mode=save','Kode_Jurnal','Tanggal','CabID','Kode_Ref','Catatan='+encodeURIComponent($('#Catatan').val())]; new Request({ url: this.PHP + '/form_master', sendParam: sparam, onSuccess: (ajson) => { $('#divTXMaster').html(ajson.html); $('#butBrow').click(() => this.tx_brow()); $('#Kode_Jurnal').keyup((e) => { if ((e.which || e.keyCode) == 13) { if (($("#Kode_Jurnal")) && ($("#Kode_Jurnal").val() !== '')) this.data_query('master'); } }); this.data_query('tabel-detail'); if ($.inArray($("#mode").val(),['add','edit']) !== -1) { $('#butBrow').prop('disabled', true).removeClass('btn-info').addClass('btn-secondary'); $('#butTambah').addClass('d-none'); $('#butUbah').addClass('d-none'); $('#butHapus').addClass('d-none'); $('#butSimpan').removeClass('d-none'); $('#butBatal').removeClass('d-none'); FoniaJS.setFocus('#Kode_Ref'); } else { $('#butBrow').prop('disabled', false).removeClass('btn-secondary').addClass('btn-info'); $('#butTambah').removeClass('d-none'); $('#butUbah').removeClass('d-none'); $('#butHapus').removeClass('d-none'); $('#butSimpan').addClass('d-none'); $('#butBatal').addClass('d-none'); } if (ajson.error) { FoniaJS.showError(ajson.error); FoniaJS.setFocus('#Kode_Jurnal'); } /*if (GEL_Kunci($('Tanggal').val())) { $("butEdit").disabled = true; $("butDel").disabled = true; }*/ } }).send(); } else if (tipe=="tabel-detail"){ new Request_JSF({ url: this.PHP + '/table_detail', sendParam: ['mode','Kode_Jurnal'] }).send(); } else if (tipe=="brow-tx"){ new Request_JSF({ url: this.PHP + '/brow_tx', sendParam: ['Cari_TX'], onSuccess: () => FoniaJS.setFocus('#Cari_TX') }).send(); } else if (tipe=="brow-rek"){ new Request_JSF({ url: this.PHP + '/brow_rek', sendParam: ['Cari_Rek'], onSuccess: () => FoniaJS.setFocus('#Cari_Rek') }).send(); } }, Rek_Comp(item) { $('#Kode_Rek').val(item.value); FoniaJS.setFocus('#Jumlah'); } };