/******************************************************************* App. Name : INVENTORY AND SALES SYSTEMS Module : /apps/js/promo/total.js Desc. : JS - Pengaturan Promo Total Penjualan Created By : Siau Pheng (siaupheng@3fonia.com). Created Date : September 28th, 2014. Last Modified : December 10th, 2025. (c) 2014 - 2025, 3FONIA Software; WWW.3FONIA.COM. *******************************************************************/ var PromoTotalJS = { PHP: '', KODE: '', loading: function(){ this.data_query('detail'); $('#Cari_Promo').keydown(function(e){ var key = e.keyCode || e.which || 0; if (key==13 && e.target.value!='') this.data_query('detail'); }.bind(this)); $('#butSearch').click(function(e){ this.data_query('detail'); }.bind(this)); $('#butAll').click(function(){ $('#Cari_Promo').val(''); this.data_query('detail'); }.bind(this)); FoniaJS.setFocus('#Cari_Promo'); }, detail_show: function(mode, ID){ new Request({ url: this.PHP, sendParam: ['data=promo-detail','mode_detail='+mode,'PromoID='+ID], onSuccess: function(txt){ this.winDetail = FoniaJS.showWindow('Detail', 'Detail Promo', txt, 'xl', [{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], function(){ $('#winDetail').find('#butWSimpan').click(function(){this.detail_save();}.bind(this)); if ($.inArray($("#mode_detail").val(),['insert','update']) !== -1) { this.update_Items($('#Promo_InvID').val(), $('#Promo_SatuanID').val()); this.oc_PilihP(); } }.bind(this)); }.bind(this) }).send(); }, detail_tambah: function(){ this.detail_show('insert', 0); }, detail_ubah: function(acell){ this.detail_show('update', acell[0]); }, detail_hapus: function(acell){ FoniaJS.showConfirm('Konfirmasi', 'Yakin akan hapus "'+acell[2]+'" ?', function(){ new Request.JSONF({ url: this.PHP, sendParam: ['data=detail','mode_detail=delete','PromoID='+acell[0],'Cari_Promo'], onSuccess: function(){ FoniaJS.showInfo('Proses hapus data sukses!'); }.bind(this) }).send(); }.bind(this), 'danger'); }, detail_save: function(){ new Request.JSONF({ url: this.PHP, sendParam: ['data=detail','mode_detail','PromoID','Nama_Promo','Jual_Min','Jual_Grup','CabID','Tipe_Promo','Promo_Jual','Promo_InvID','Promo_SatuanID','Promo_Qty','Jumlah_Promo','Tgl_Mulai','Tgl_Akhir','Aktif','Cari_Promo'], onSuccess: function(){ FoniaJS.showInfo('Proses simpan data sukses!'); FoniaJS.closeWindow(this.winDetail); }.bind(this) }).send(); }, grup_list: function(){ new Request.JSON({ url: this.PHP, sendParam: ['data=grup-list','Jual_Grup'], onSuccess: function(ajson){ this.winGrup = FoniaJS.showWindow('Grup', 'Daftar Grup Barang', ajson.html, 'lg', [{i:'butWSAll',v:'Cek Semua',c:'info'},{i:'butWCAll',v:'Hapus Semua',c:'info'},{},{i:'butTutup'},{i:'butWSimpan',v:'Simpan',c:'success'}], function(){ $('#winGrup') .find('#butWSAll').click(function(){this.grup_semua();}.bind(this)).end() .find('#butWCAll').click(function(){this.grup_clear();}.bind(this)).end() .find('#butWSimpan').click(function(){this.grup_save();}.bind(this)); }.bind(this)); }.bind(this) }).send(); }, grup_semua: function(){ $('#tabGrupList').find('input:checkbox').prop('checked', true); }, grup_clear: function(){ $('#tabGrupList').find('input:checkbox').prop('checked', false); }, grup_save: function(){ var alist = []; $('#tabGrupList').find('input:checkbox:checked').each(function(){ alist.push($(this).val()); }) $('#Jual_Grup').val(alist.join()); FoniaJS.closeWindow(this.winGrup); }, produk_brow: function(){ var _isi = new String('
 
'); this.winBProduk = FoniaJS.showWindow('BProduk', 'Daftar Barang', _isi, 900, '', function(){ $('#winBProduk').find('#Cari_Produk').keydown(function(e){ var key = e.keyCode || e.which || 0; if (key==13 && e.target.value!='') this.data_query('brow-produk'); }.bind(this)); $('#winBProduk').find('#butSearch').click(function(e){ this.data_query('brow-produk'); }.bind(this)); $('#winBProduk').find('#butAll').click(function(){ $('#winBProduk').find('#Cari_Produk').val(''); this.data_query('brow-produk'); }.bind(this)); this.data_query('brow-produk'); FoniaJS.setFocus('#Cari_Produk'); }.bind(this)); }, produk_select: function(acell){ FoniaJS.closeWindow(this.winBProduk); $('#Promo_InvID').val(acell[0]); $('#Promo_Produk').val(acell[2]); this.update_Items(acell[0], 0); }, data_query: function(tipe, mode){ if (tipe=="detail"){ new Request.JSONF({ url: this.PHP, sendParam: ['data=detail','Cari_Promo'] }).send(); } else if (tipe=="brow-produk"){ new Request.JSONF({ url: this.PHP, sendParam: ['data=brow-produk','Cari_Produk'], onSuccess: function(){ FoniaJS.setFocus('#Cari_Produk'); } }).send(); } }, update_Items: function(InvID, SatuanID){ $('#Promo_SatuanID').empty(); if (InvID==0) return false; new Request.JSON({ url: this.PHP, sendParam: ['data=detail_item','InvID='+InvID], onSuccess: (adata) => { adata.map((val) => { $('#Promo_SatuanID').append(new Option(val['label'],val['value'],false,(val['value']==SatuanID?true:false))) }); $('#Promo_SatuanID').trigger('change'); } }).send(); }, oc_PilihP: function(){ var i = parseInt($('#Tipe_Promo').val()); if (i == 4){ $('.promo1').removeClass('d-none'); $('.promo2').addClass('d-none'); $('#Promo_SatuanID').val(0); $('#Promo_Qty').val(0); $('#Promo_InvID').val(0); $('#Jumlah_Promo').val(0); } else { $('.promo1').addClass('d-none'); $('.promo2').removeClass('d-none'); $('#Promo_Jual').val(0); } } };