first commit
This commit is contained in:
@@ -0,0 +1,130 @@
|
||||
/*******************************************************************
|
||||
|
||||
PHP Class : /Controller/Inv/OpnamebarangController
|
||||
Description : Transaksi Penyesuaian Stok Per Barang
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : October 22nd, 2014.
|
||||
Last Modified : October 11th, 2026, 2026.
|
||||
|
||||
(c) 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
var OpnameBarangJS = {
|
||||
PHP: '',
|
||||
KODE: '',
|
||||
html5QrcodeScanner: null,
|
||||
|
||||
index: function(){
|
||||
$('#butSimpan').click(() => this.proses_save());
|
||||
$('#butBrow').click(() => this.produk_brow());
|
||||
if (FoniaJS.WEB_MOBILE){
|
||||
//html5QrcodeScanner = new Html5QrcodeScanner('qr-reader', { fps: 10, qrbox: 250, rememberLastUsedCamera: true, supportedScanTypes: [Html5QrcodeScanType.SCAN_TYPE_CAMERA] });
|
||||
html5QrcodeScanner = new Html5Qrcode('qr-reader');
|
||||
html5QrcodeScanner.start({ facingMode: 'environment' }, { fps: 10, qrbox: 250 }, OpnameBarangJS.ScanSukses);
|
||||
} else {
|
||||
FoniaJS.AutoComplete('#Nama_Produk', this.PHP + '/auto_produk', [], {'selectFunc': this.Produk_Comp});
|
||||
FoniaJS.setFocus('#Nama_Produk');
|
||||
}
|
||||
},
|
||||
|
||||
proses_save: function(){
|
||||
if ($('#InvID').val()==0) {
|
||||
FoniaJS.showError('Silakan masukkan Nama Produk!');
|
||||
return;
|
||||
}
|
||||
new Request({
|
||||
url: this.PHP + '/proses_simpan',
|
||||
sendParam: ['InvID','SatuanID','VarianID','Stok_Fisik','Harga_Beli','PPN'],
|
||||
onSuccess: (ajson) => {
|
||||
if (ajson.status === true){
|
||||
FoniaJS.showInfo('Sukses simpan penyesuaian Stok !');
|
||||
$('#InvID, #SatuanID, #VarianID, #Harga_Beli #PPN').val(0);
|
||||
$('#Nama_Produk, #Kode_Barang, #Nama_Barang, #Nama_Satuan').val('');
|
||||
$('#Stok_Sistem, #Stok_Fisik').val('0.00');
|
||||
if (FoniaJS.WEB_MOBILE){
|
||||
this.html5QrcodeScanner.resume();
|
||||
} else FoniaJS.setFocus('Nama_Produk');
|
||||
}
|
||||
}
|
||||
}).send();
|
||||
},
|
||||
|
||||
ScanSukses: function(decodedText, decodedResult){
|
||||
new Request({
|
||||
url: OpnameBarangJS.PHP + '/scan_produk',
|
||||
sendParam: ['Cari_Produk='+decodedText],
|
||||
onSuccess: (ajson) => {
|
||||
$('#InvID').val(ajson.InvID);
|
||||
$('#SatuanID').val(ajson.SatuanID);
|
||||
$('#VarianID').val(ajson.VarianID);
|
||||
$('#Harga_Beli').val(ajson.Harga_Beli);
|
||||
$('#Kode_Barang').val(ajson.Kode_Barang);
|
||||
$('#Nama_Barang').val(ajson.Nama_Barang);
|
||||
$('#Nama_Satuan').val(ajson.Nama_Satuan);
|
||||
$('#Stok_Sistem').val(ajson.Stok_Sistem);
|
||||
$('#PPN').val(ajson.PPN);
|
||||
FoniaJS.setFocus('#Stok_Fisik');
|
||||
}
|
||||
}).send();
|
||||
this.html5QrcodeScanner.pause();
|
||||
},
|
||||
|
||||
produk_brow: function(){
|
||||
var _isi = new String('<div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Produk" placeholder="Kunci Pencarian" type="text"><button class="btn btn-info shadow-none" type="button" id="butSearch">Cari</button><button class="btn btn-secondary shadow-none" type="button" id="butAll">Semua</button></div></div></div><div id="divBrowProduk"> </div>');
|
||||
this.winBProduk = FoniaJS.showWindow('BProduk', 'Daftar Barang', _isi, 'xl', '', () => {
|
||||
$('#winBProduk')
|
||||
.find('#Cari_Produk').keydown((e) => {
|
||||
var key = e.keyCode || e.which || 0;
|
||||
if (key==13 && e.target.value!='') this.data_query('brow-produk');
|
||||
}).end()
|
||||
.find('#butSearch').click(() => this.data_query('brow-produk')).end()
|
||||
.find('#butAll').click(() => {
|
||||
$('#winBProduk').find('#Cari_Produk').val('');
|
||||
this.data_query('brow-produk');
|
||||
});
|
||||
this.data_query('brow-produk');
|
||||
});
|
||||
},
|
||||
|
||||
produk_select: function(acell){
|
||||
FoniaJS.closeWindow(this.winBProduk);
|
||||
$('#InvID').val(acell[0]);
|
||||
$('#SatuanID').val(acell[1]);
|
||||
$('#VarianID').val(acell[2]);
|
||||
$('#Harga_Beli').val(acell[7]);
|
||||
$('#Kode_Barang').val(acell[3]+' / '+acell[4]);
|
||||
$('#Nama_Barang').val(acell[5]);
|
||||
$('#Nama_Satuan').val(acell[6]);
|
||||
$('#Stok_Sistem').val(acell[8]);
|
||||
$('#PPN').val(acell[9]);
|
||||
FoniaJS.setFocus('#Stok_Fisik');
|
||||
},
|
||||
|
||||
data_query: function(tipe){
|
||||
if (tipe=="brow-produk"){
|
||||
new Request.JSONF({
|
||||
url: this.PHP + '/brow_produk',
|
||||
sendParam: ['Cari_Produk'],
|
||||
onSuccess: () => FoniaJS.setFocus('#Cari_Produk')
|
||||
}).send();
|
||||
}
|
||||
},
|
||||
|
||||
Produk_Comp: function(item){
|
||||
// Cari by SKU + Barcode
|
||||
// Satuan : Varian : SKU + Barcode : Harga_Pokok : Satuan : PPN : Stok
|
||||
var adata = item.data.split(':');
|
||||
$('#InvID').val(item.value);
|
||||
$('#SatuanID').val(adata[0]);
|
||||
$('#VarianID').val(adata[1]);
|
||||
$('#Harga_Beli').val(adata[3]);
|
||||
$('#Kode_Barang').val(adata[2]);
|
||||
$('#Nama_Barang').val(item.text);
|
||||
$('#Nama_Satuan').val(adata[4]);
|
||||
$('#Stok_Sistem').val(adata[6]);
|
||||
$('#PPN').val(adata[5]);
|
||||
FoniaJS.setFocus('#Stok_Fisik');
|
||||
}
|
||||
|
||||
};
|
||||
Reference in New Issue
Block a user