first commit
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/gudang.php
|
||||
Desc. : PHP - Tabel Master Lokasi Gudang
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 7th, 2010.
|
||||
Last Modified : March 19th, 2023.
|
||||
|
||||
(c) 2010 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("GudangID", 0);
|
||||
|
||||
if ( $data == "gudang-detail" ) {
|
||||
$atabel = ['GudangID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_gudang WHERE GudangID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Lokasi Gudang", "Kode_Gudang", $atabel['Kode_Gudang'], true, true, "text", "kode lokasi gudang");
|
||||
$form->textbox("Nama Lokasi Gudang", "Nama_Gudang", $atabel['Nama_Gudang'], true, true, "text", "nama lokasi gudang");
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("GudangID", $atabel['GudangID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Gudang_ _Nama_Gudang_ _Aktif_ _mode_ _GudangID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_gudang");
|
||||
$sql->add_param("Kode_Gudang");
|
||||
$sql->add_param("Nama_Gudang");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("GudangID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Gudang"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Gudang,Nama_Gudang) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_gudang".$tsql);
|
||||
$obj->add_field("GudangID", "ID", "hid");
|
||||
$obj->add_field("Kode_Gudang", "Kode Gudang");
|
||||
$obj->add_field("Nama_Gudang", "Nama Lokasi Gudang", "awr");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Gudang", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "GudangJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "GudangJS.detail_hapus");
|
||||
$obj->set_func_navi("GudangJS.data_query('detail')");
|
||||
$obj->set_func_btn("GudangJS.detail_tambah", '<i class="bi-plus-lg me-1"></i>Gudang');
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Lokasi Gudang</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Gudang" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/mobil.php
|
||||
Desc. : PHP - Tabel Master Kendaraan
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : March 4th, 2011.
|
||||
Last Modified : March 20th, 2023.
|
||||
|
||||
(c) 2011 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("MobilID", 0);
|
||||
|
||||
if ( $data == "mobil-detail" ) {
|
||||
$atabel = ['MobilID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_mobil WHERE MobilID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Kendaraan", "Kode_Mobil", $atabel['Kode_Mobil'], true, true, "text", "kode kendaraan");
|
||||
$form->textbox("Nama Kendaraan", "Nama_Mobil", $atabel['Nama_Mobil'], true, true, "text", "nama kendaraan");
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("MobilID", $atabel['MobilID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Mobil_ _Nama_Mobil_ _Aktif_ _mode_ _MobilID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_mobil");
|
||||
$sql->add_param("Kode_Mobil");
|
||||
$sql->add_param("Nama_Mobil");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("MobilID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Mobil"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Mobil,Nama_Mobil) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_mobil".$tsql);
|
||||
$obj->add_field("MobilID", "ID", "hid");
|
||||
$obj->add_field("Kode_Mobil", "Kode Kendaraan");
|
||||
$obj->add_field("Nama_Mobil", "Nama Kendaraan", "awr");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Mobil", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "MobilJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "MobilJS.detail_hapus");
|
||||
$obj->set_func_navi("MobilJS.data_query('detail')");
|
||||
$obj->set_func_btn("MobilJS.detail_tambah", "+ Kendaraan");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Kendaraan</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Mobil" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,121 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/outlet.php
|
||||
Desc. : PHP - Tabel Master Outlet
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 7th, 2010.
|
||||
Last Modified : January 5th, 2025.
|
||||
|
||||
(c) 2010 - 2025, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func/ias.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("OutletID", 0);
|
||||
|
||||
if ( $data == "outlet-detail" ) {
|
||||
$atabel = ['OutletID'=>0,'Grup_OutletID'=>0,'Tipe_OutletID'=>0,'No_NPWP'=>"0000000000000000",'No_NIK'=>"0000000000000000",'No_NITKU'=>"000000",'GG'=>0,'Aktif'=>1,'Prov_LokasiID'=>20,'Kode_Outlet'=>"OUTLET-BARU"];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_outlet WHERE OutletID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Outlet", "Kode_Outlet", $atabel['Kode_Outlet'], false, false, "text");
|
||||
$form->textbox("Nama Outlet", "Nama_Outlet", $atabel['Nama_Outlet'], true, true, "text", "nama outlet");
|
||||
$form->textarea("Alamat Outlet", "Alamat_Outlet", $atabel['Alamat_Outlet'], true, true, 2, "alamat outlet");
|
||||
$form->textbox("Kota Outlet", "Kota_Outlet", $atabel['Kota_Outlet'], true, true, "text", "kota outlet");
|
||||
$form->textbox("Telp Outlet", "Telp_Outlet", $atabel['Telp_Outlet'], true, true, "text", "telp outlet");
|
||||
$form->textbox("Email Outlet", "Email_Outlet", $atabel['Email_Outlet'], true, true, "text", "email outlet");
|
||||
$form->option_db("Provinsi Outlet", "Prov_LokasiID", $atabel['Prov_LokasiID'], true, false, "para_lokasi", ["LokasiID","N_Lokasi"], "Aktif=1 ORDER BY K_Lokasi", [0,' ']);
|
||||
$form->option_db("Grup Outlet", "Grup_OutletID", $atabel['Grup_OutletID'], true, false, "para_outlet_grup", ["Grup_OutletID","Nama_Grup"], "Aktif=1 ORDER BY Nama_Grup", [0,' ']);
|
||||
$form->option_que("Tipe Outlet", "Tipe_OutletID", $atabel['Tipe_OutletID'], true, false, "SELECT *,CONCAT(Kode_Tipe,' ',Nama_Tipe) Kode_Nama FROM para_outlet_tipe WHERE Aktif=1 AND Opsi=0 ORDER BY Kode_Tipe", ["Tipe_OutletID","Kode_Nama"], [0,' ']);
|
||||
$form->datebox("Tanggal Terdaftar", "Tgl_Daftar", $atabel['Tgl_Daftar'], true, true);
|
||||
$form->textbox("NPWP", "No_NPWP", $atabel['No_NPWP'], true, true, "angka", "0000000000000000", 16, "16 digit NPWP, jika tidak ada isi semua dengan nol.");
|
||||
$form->textbox("NITKU", "No_NITKU", $atabel['No_NITKU'], true, true, "angka", "000000", 6, "6 digit NITKU, jika tidak ada isi semua dengan nol.");
|
||||
$form->textbox("NIK", "No_NIK", $atabel['No_NIK'], true, true, "angka", "0000000000000000", 16, "16 digit NIK, jika tidak ada isi semua dengan nol.");
|
||||
$form->textbox("Nama NPWP / NIK", "Nama_NPWP", $atabel['Nama_NPWP'], true, true, "text", "nama npwp / nik");
|
||||
$form->textarea("Alamat NPWP / NIK", "Alamat_NPWP", $atabel['Alamat_NPWP'], true, true, 2, "alamat npwp / nik");
|
||||
$form->switch("FP Gabungan", "GG", $atabel['GG'], true, true, [1,0]);
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("OutletID", $atabel['OutletID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Outlet_ _Nama_Outlet_ _Alamat_Outlet_ _Kota_Outlet_ _Telp_Outlet_ _Prov_LokasiID_ _Email_Outlet_ <hr class="my-2"> _No_NPWP_ _No_NITKU_ _No_NIK_ _Nama_NPWP_ _Alamat_NPWP_ <hr class="my-2"> _Grup_OutletID_ _Tipe_OutletID_ _Tgl_Daftar_ _GG_ _Aktif_ _mode_ _OutletID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_outlet");
|
||||
$sql->add_param("Grup_OutletID");
|
||||
$sql->add_param("Tipe_OutletID");
|
||||
$sql->add_param("Nama_Outlet");
|
||||
$sql->add_param("Alamat_Outlet");
|
||||
$sql->add_param("Kota_Outlet");
|
||||
$sql->add_param("Telp_Outlet");
|
||||
$sql->add_param("Prov_LokasiID");
|
||||
$sql->add_param("Email_Outlet");
|
||||
$sql->add_param("No_NPWP");
|
||||
$sql->add_param("No_NITKU");
|
||||
$sql->add_param("No_NIK");
|
||||
$sql->add_param("Nama_NPWP");
|
||||
$sql->add_param("Alamat_NPWP");
|
||||
$sql->add_param_date("Tgl_Daftar");
|
||||
$sql->add_param("GG");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("OutletID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->add_param("Kode_Outlet", Outlet_Baru());
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Outlet"));
|
||||
$tsql = ($tcari=="") ? "" : "CONCAT(Kode_Outlet,Nama_Outlet,Alamat_Outlet,Kota_Outlet,No_NPWP,No_NIK) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_table("para_outlet", "*", $tsql);
|
||||
$obj->add_field("OutletID", "ID", "hid");
|
||||
$obj->add_field("Kode_Outlet", "Kode", "c");
|
||||
$obj->add_field("Nama_Outlet", "Nama Outlet", "awr");
|
||||
$obj->add_field("Alamat_Outlet", "Alamat", "awr");
|
||||
$obj->add_field("Kota_Outlet", "Kota");
|
||||
$obj->add_field("No_NIK", "NPWP");
|
||||
//$obj->add_field("Telp_Outlet", "No. Telp.");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Outlet", "D");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "OutletJS.detail_ubah");
|
||||
if (user_level(1)) $obj->add_row_btn("trash", "Hapus", "OutletJS.detail_hapus");
|
||||
$obj->set_func_navi("OutletJS.data_query('detail')");
|
||||
$obj->set_func_btn("OutletJS.detail_tambah", '<i class="bi-plus-lg me-1"></i>Outlet');
|
||||
$ajson[] = $obj->db_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Outlet</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Outlet" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/outlet_grup.php
|
||||
Desc. : PHP - Tabel Master Grup Outlet
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 7th, 2010.
|
||||
Last Modified : March 19th, 2023.
|
||||
|
||||
(c) 2010 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("Grup_OutletID", 0);
|
||||
|
||||
if ( $data == "grup-detail" ) {
|
||||
$atabel = ['Grup_OutletID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_outlet_grup WHERE Grup_OutletID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Grup Produk", "Kode_Grup", $atabel['Kode_Grup'], true, true, "text", "kode grup outlet");
|
||||
$form->textbox("Nama Grup Produk", "Nama_Grup", $atabel['Nama_Grup'], true, true, "text", "nama grup outlet");
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("Grup_OutletID", $atabel['Grup_OutletID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Grup_ _Nama_Grup_ _Aktif_ _mode_ _Grup_OutletID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_outlet_grup");
|
||||
$sql->add_param("Kode_Grup");
|
||||
$sql->add_param("Nama_Grup");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("Grup_OutletID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Grup"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Grup,Nama_Grup) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_outlet_grup".$tsql);
|
||||
$obj->add_field("Grup_OutletID", "ID", "hid");
|
||||
$obj->add_field("Kode_Grup", "Kode Grup");
|
||||
$obj->add_field("Nama_Grup", "Nama Grup", "awr");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Grup", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "OutletGrupJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "OutletGrupJS.detail_hapus");
|
||||
$obj->set_func_navi("OutletGrupJS.data_query('detail')");
|
||||
$obj->set_func_btn("OutletGrupJS.detail_tambah", "+ Grup Outlet");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Grup Outlet</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Grup" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,93 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/outlet_tipe.php
|
||||
Desc. : PHP - Tabel Master Tipe Outlet
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : January 21th, 2011.
|
||||
Last Modified : March 19th, 2023.
|
||||
|
||||
(c) 2011 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("Tipe_OutletID", 0);
|
||||
|
||||
if ( $data == "tipe-detail" ) {
|
||||
$atabel = ['Tipe_OutletID'=>0,'Opsi'=>1,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_outlet_tipe WHERE Tipe_OutletID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Tipe", "Kode_Tipe", $atabel['Kode_Tipe'], true, true, "text", "kode tipe");
|
||||
$form->textbox("Nama Tipe", "Nama_Tipe", $atabel['Nama_Tipe'], true, true, "text", "nama tipe outlet");
|
||||
$form->textarea("Keterangan", "Keterangan", $atabel['Keterangan'], true, true, 3, "keterangan tipe outlet");
|
||||
$form->radio("Bisa Dipilih ?", "Opsi", $atabel['Opsi'], true, true, ['1'=>"Ya",'0'=>"Tidak"]);
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("Tipe_OutletID", $atabel['Tipe_OutletID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Tipe_ _Nama_Tipe_ _Keterangan_ _Opsi_ _Aktif_ _mode_ _Tipe_OutletID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_outlet_tipe");
|
||||
$sql->add_param("Kode_Tipe");
|
||||
$sql->add_param("Nama_Tipe");
|
||||
$sql->add_param("Keterangan");
|
||||
$sql->add_param("Opsi");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("Tipe_OutletID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Tipe"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Tipe,Nama_Tipe) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_outlet_tipe".$tsql);
|
||||
$obj->add_field("Tipe_OutletID", "ID", "hid");
|
||||
$obj->add_field("Kode_Tipe", "Kode Tipe");
|
||||
$obj->add_field("Nama_Tipe", "Nama Tipe Outlet", "awr");
|
||||
$obj->add_field("Opsi", "Opsi", "c", "checkbox");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Tipe", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "OutletTipeJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "OutletTipeJS.detail_hapus");
|
||||
$obj->set_func_navi("OutletTipeJS.data_query('detail')");
|
||||
$obj->set_func_btn("OutletTipeJS.detail_tambah", "+ Tipe Outlet");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Tipe Outlet</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Tipe" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,96 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/pegawai.php
|
||||
Desc. : PHP - Tabel Master Pegawai
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 7th, 2010.
|
||||
Last Modified : March 20th, 2023.
|
||||
|
||||
(c) 2010 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("PegID", 0);
|
||||
|
||||
if ( $data == "pegawai-detail" ) {
|
||||
$atabel = ['PegID'=>0,'Jenis_PegID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_pegawai WHERE PegID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Pegawai", "Kode_Pegawai", $atabel['Kode_Pegawai'], true, true, "text", "kode pegawai");
|
||||
$form->textbox("Nama Pegawai", "Nama_Pegawai", $atabel['Nama_Pegawai'], true, true, "text", "nama pegawai");
|
||||
$form->textarea("Alamat Pegawai", "Alamat_Pegawai", $atabel['Alamat_Pegawai'], true, true, 2, "nama pegawai");
|
||||
$form->textbox("Telp Pegawai", "Telp_Pegawai", $atabel['Telp_Pegawai'], true, true, "text", "telp pegawai");
|
||||
$form->option_db("Jenis Pegawai", "Jenis_PegID", $atabel['Jenis_PegID'], true, true, "para_pegawai_jenis", ["Jenis_PegID","Nama_Jenis"], "Aktif=1 ORDER BY Nama_Jenis", [0,' ']);
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("PegID", $atabel['PegID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Pegawai_ _Nama_Pegawai_ _Alamat_Pegawai_ _Telp_Pegawai_ <div class="row"><div class="col-12"><hr class="my-2"></div></div> _Jenis_PegID_ _Aktif_ _mode_ _PegID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_pegawai");
|
||||
$sql->add_param("Jenis_PegID");
|
||||
$sql->add_param("Kode_Pegawai");
|
||||
$sql->add_param("Nama_Pegawai");
|
||||
$sql->add_param("Alamat_Pegawai");
|
||||
$sql->add_param("Telp_Pegawai");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("PegID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Peg"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Pegawai,Nama_Pegawai,Telp_Pegawai) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_pegawai".$tsql);
|
||||
$obj->add_field("PegID", "ID", "hid");
|
||||
$obj->add_field("Kode_Pegawai", "Kode Pegawai");
|
||||
$obj->add_field("Nama_Pegawai", "Nama Pegawai", "awr");
|
||||
$obj->add_field("Alamat_Pegawai", "Alamat", "awr");
|
||||
$obj->add_field("Telp_Pegawai", "No. Telp", "l");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Pegawai", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "PegawaiJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "PegawaiJS.detail_hapus");
|
||||
$obj->set_func_navi("PegawaiJS.data_query('detail')");
|
||||
$obj->set_func_btn("PegawaiJS.detail_tambah", "+ Pegawai");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Pegawai</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Peg" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/pegawai_jenis.php
|
||||
Desc. : PHP - Tabel Master Jenis Pegawai
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : February 8th, 2011.
|
||||
Last Modified : March 20th, 2023.
|
||||
|
||||
(c) 2011 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("Jenis_PegID", 0);
|
||||
|
||||
if ( $data == "jenis-detail" ) {
|
||||
$atabel = ['Jenis_PegID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_pegawai_jenis WHERE Jenis_PegID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Jenis", "Kode_Jenis", $atabel['Kode_Jenis'], true, true, "text", "kode jenis pegawai");
|
||||
$form->textbox("Nama Jenis Pegawai", "Nama_Jenis", $atabel['Nama_Jenis'], true, true, "text", "nama jenis pegawai");
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("Jenis_PegID", $atabel['Jenis_PegID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Jenis_ _Nama_Jenis_ _Aktif_ _mode_ _Jenis_PegID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_pegawai_jenis");
|
||||
$sql->add_param("Kode_Jenis");
|
||||
$sql->add_param("Nama_Jenis");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("Jenis_PegID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Jenis"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Jenis,Nama_Jenis) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_pegawai_jenis".$tsql);
|
||||
$obj->add_field("Jenis_PegID", "ID", "hid");
|
||||
$obj->add_field("Kode_Jenis", "Kode Jenis");
|
||||
$obj->add_field("Nama_Jenis", "Nama Jenis Pegawai", "awr");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Jenis", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "PegawaiJenisJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "PegawaiJenisJS.detail_hapus");
|
||||
$obj->set_func_navi("PegawaiJenisJS.data_query('detail')");
|
||||
$obj->set_func_btn("PegawaiJenisJS.detail_tambah", "+ Jenis Pegawai");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Jenis Pegawai</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Jenis" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,628 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/produk.php
|
||||
Desc. : PHP - Tabel Master Produk
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : May 19th, 2010.
|
||||
Last Modified : January 10th, 2026.
|
||||
|
||||
(c) 2010 - 2026, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
require_once(__DIR__."/../func/ias.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
function Produk_Baru($autosave = false) {
|
||||
global $db;
|
||||
$ino = 1;
|
||||
$db->Query("SELECT MAX(InvID)+1 Nomor FROM inv_produk");
|
||||
if ($db->Next()) $ino = (int)$db->Row("Nomor", 1);
|
||||
if ($autosave) $db->Query("INSERT INTO inv_produk (InvID) VALUES ('".$ino."')");
|
||||
return $ino;
|
||||
}
|
||||
|
||||
function Produk_Backup($id_inv = 0) {
|
||||
global $db;
|
||||
if ($id_inv == 0) return;
|
||||
$db->Query("INSERT IGNORE INTO inv_produk_backup (InvID,UserID,Produk,Kemasan,Harga,Varian,MD5Key) SELECT A.InvID,A.UserID,A.Produk,IFNULL(B.Kemasan,'[]'),IFNULL(C.Harga,'[]'),IFNULL(D.Varian,'[]'),UPPER(MD5(CONCAT(A.Produk,IFNULL(B.Kemasan,'[]'),IFNULL(C.Harga,'[]'),IFNULL(D.Varian,'[]')))) FROM (SELECT InvID,UserID,JSON_ARRAYAGG(JSON_OBJECT('InvID',InvID,'Grup_InvID',Grup_InvID,'Kode_Produk',Kode_Produk,'Nama_Produk',Nama_Produk,'Kode_FP',Kode_FP,'StokID',StokID,'NormalID',NormalID,'Harga_Pokok',Harga_Pokok,'Stok_Min',Stok_Min,'Pajak',Pajak,'Hadiah',Hadiah,'Aktif',Aktif,'UserID',UserID)) Produk FROM inv_produk WHERE InvID='".$id_inv."') A LEFT JOIN (SELECT InvID,JSON_ARRAYAGG(JSON_OBJECT('InvKemasanID',InvKemasanID,'InvID',InvID,'SatuanID',SatuanID,'Qty',Qty,'UserID',UserID)) Kemasan FROM inv_produk_kemasan WHERE InvID='".$id_inv."') B ON (A.InvID=B.InvID) LEFT JOIN (SELECT InvID,JSON_ARRAYAGG(JSON_OBJECT('InvHargaID',InvHargaID,'InvID',InvID,'SatuanID',SatuanID,'Grup_OutletID',Grup_OutletID,'Tanggal',Tanggal,'Harga_Jual',Harga_Jual,'UserID',UserID)) Harga FROM inv_produk_harga WHERE InvID='".$id_inv."') C ON (A.InvID=C.InvID) LEFT JOIN (SELECT InvID,JSON_ARRAYAGG(JSON_OBJECT('InvVarianID',InvVarianID,'InvID',InvID,'RasaID',RasaID,'UserID',UserID)) Varian FROM inv_produk_varian WHERE InvID='".$id_inv."') D ON (A.InvID=D.InvID)");
|
||||
}
|
||||
|
||||
function Produk_Restore($id_inv = 0, $md5_key = "") {
|
||||
global $db;
|
||||
if ($id_inv == 0) return;
|
||||
$_json_produk = []; $_json_kemasan = []; $_json_harga = []; $_json_varian = []; $_userid = 0;
|
||||
$tsql = ($md5_key == "") ? "ORDER BY Tanggal DESC" : "AND MD5Key='".$md5_key."'";
|
||||
$db->Query("SELECT * FROM inv_produk_backup WHERE InvID='".$id_inv."' ".$tsql." LIMIT 1");
|
||||
if ($db->Next()) {
|
||||
$_json_produk = json_decode($db->Row("Produk", "[]"), true);
|
||||
$_json_kemasan = json_decode($db->Row("Kemasan", "[]"), true);
|
||||
$_json_harga = json_decode($db->Row("Harga", "[]"), true);
|
||||
$_json_varian = json_decode($db->Row("Varian", "[]"), true);
|
||||
$_userid = $db->Row("UserID", 0);
|
||||
}
|
||||
if (isset($_json_produk[0]['InvID'])) {
|
||||
$db->Query("DELETE FROM inv_produk_kemasan WHERE InvID='".$id_inv."'");
|
||||
$db->Query("DELETE FROM inv_produk_harga WHERE InvID='".$id_inv."'");
|
||||
$db->Query("DELETE FROM inv_produk_varian WHERE InvID='".$id_inv."'");
|
||||
foreach($_json_produk as $_key => $val) {
|
||||
$db->Query("REPLACE INTO inv_produk (InvID,Grup_InvID,Kode_Produk,Nama_Produk,Kode_FP,StokID,NormalID,Harga_Pokok,Stok_Min,Pajak,Hadiah,Aktif,UserID) VALUES ('".$val['InvID']."','".$val['Grup_InvID']."','".$val['Kode_Produk']."','".$val['Nama_Produk']."','".$val['Kode_FP']."','".$val['StokID']."','".$val['NormalID']."','".$val['Harga_Pokok']."','".$val['Stok_Min']."','".$val['Pajak']."','".$val['Hadiah']."','".$val['Aktif']."','".$_userid."') LIMIT 1");
|
||||
}
|
||||
foreach($_json_kemasan as $_key => $val) {
|
||||
$db->Query("REPLACE INTO inv_produk_kemasan (InvKemasanID,InvID,SatuanID,Qty,UserID) VALUES ('".$val['InvKemasanID']."','".$val['InvID']."','".$val['SatuanID']."','".$val['Qty']."','".$_userid."') LIMIT 1");
|
||||
}
|
||||
foreach($_json_harga as $_key => $val) {
|
||||
$db->Query("REPLACE INTO inv_produk_harga (InvHargaID,InvID,SatuanID,Grup_OutletID,Tanggal,Harga_Jual,UserID) VALUES ('".$val['InvHargaID']."','".$val['InvID']."','".$val['SatuanID']."','".$val['Grup_OutletID']."','".$val['Tanggal']."','".$val['Harga_Jual']."','".$_userid."') LIMIT 1");
|
||||
}
|
||||
foreach($_json_varian as $_key => $val) {
|
||||
$db->Query("REPLACE INTO inv_produk_varian (InvVarianID,InvID,RasaID,UserID) VALUES ('".$val['InvVarianID']."','".$val['InvID']."','".$val['RasaID']."','".$_userid."') LIMIT 1");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$mode_detail = Param::Get("mode_detail");
|
||||
$id_inv = Param::Get("InvID", 0);
|
||||
$id_varian = Param::Get("InvVarianID", 0);
|
||||
$id_kemasan = Param::Get("InvKemasanID", 0);
|
||||
$id_harga = Param::Get("InvHargaID", 0);
|
||||
$md5_key = Param::Get("MD5Key", "");
|
||||
$i_filt = Param::Get("Filter_Produk", 0);
|
||||
|
||||
if ( $data == "detail-produk" ) {
|
||||
$atabel = ['InvID'=>0,'Grup_InvID'=>3,'StokID'=>$_SESSION['__APP_IAS']['DEF_SATUANID'],'NormalID'=>$_SESSION['__APP_IAS']['DEF_SATUANID'],'Pajak'=>1,'Hadiah'=>0,'Aktif'=>1];
|
||||
if ($id_inv > 0) {
|
||||
$db->Query("SELECT * FROM inv_produk WHERE InvID='".$id_inv."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
Produk_Backup($id_inv);
|
||||
} else {
|
||||
$atabel['InvID'] = Produk_Baru(true);
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$tkode = $form->textbox("_", "Kode_Produk", $atabel['Kode_Produk'], true, true, "text", "kode produk");
|
||||
$tnama = $form->textbox("_", "Nama_Produk", $atabel['Nama_Produk'], true, true, "text", "nama produk");
|
||||
$tkode_fp = $form->textbox("_", "Kode_FP", $atabel['Kode_FP'], true, true, "text", "kode produk faktur pajak");
|
||||
$tgrup = $form->option_db("_", "Grup_InvID", $atabel['Grup_InvID'], true, false, "inv_produk_grup", ["Grup_InvID","Nama_Grup"], "Aktif=1 ORDER BY Nama_Grup", [0," "]);
|
||||
$tstok = $form->option_db("_", "StokID", $atabel['StokID'], true, false, "para_satuan", ["SatuanID","Nama_Satuan"], "Aktif=1 ORDER BY Nama_Satuan", [0," "]);
|
||||
$tnormal = $form->option_db("_", "NormalID", $atabel['NormalID'], true, false, "para_satuan", ["SatuanID","Nama_Satuan"], "Aktif=1 ORDER BY Nama_Satuan", [0," "]);
|
||||
$thpp = $form->textbox("_", "Harga_Pokok", $atabel['Harga_Pokok'], true, true, "double", "harga pokok produk");
|
||||
$tsmin = $form->textbox("_", "Stok_Min", $atabel['Stok_Min'], true, true, "double", "stok minimal produk");
|
||||
$tpajak = $form->radio("_", "Pajak", $atabel['Pajak'], true, true, ['1'=>"Ya",'0'=>"Tidak"]);
|
||||
$thadiah = $form->radio("_", "Hadiah", $atabel['Hadiah'], true, true, ['1'=>"Ya",'0'=>"Tidak"]);
|
||||
$taktif = $form->radio("_", "Aktif", $atabel['Aktif'], true, true, ['1'=>"Ya",'0'=>"Tidak"]);
|
||||
|
||||
$ajson['html'] = '
|
||||
<ul class="nav nav-tabs" role="tablist">
|
||||
<li class="nav-item" role="presentation">
|
||||
<button class="nav-link active" id="produk-tab" data-bs-toggle="tab" data-bs-target="#produk" type="button" role="tab" aria-controls="produk" aria-selected="true">Informasi Produk</button>
|
||||
</li>
|
||||
<li class="nav-item" role="presentation">
|
||||
<button class="nav-link" id="varian-tab" data-bs-toggle="tab" data-bs-target="#varian" type="button" role="tab" aria-controls="varian" aria-selected="false">Varian / Rasa</button>
|
||||
</li>
|
||||
<li class="nav-item" role="presentation">
|
||||
<button class="nav-link" id="kemasan-tab" data-bs-toggle="tab" data-bs-target="#kemasan" type="button" role="tab" aria-controls="kemasan" aria-selected="false">Kemasan</button>
|
||||
</li>
|
||||
<li class="nav-item" role="presentation">
|
||||
<button class="nav-link" id="harga-tab" data-bs-toggle="tab" data-bs-target="#harga" type="button" role="tab" aria-controls="harga" aria-selected="false">Harga Jual</button>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab-content border border-top-0 p-3">
|
||||
<div class="tab-pane fade active show" id="produk" role="tabpanel" aria-labelledby="produk-tab">
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Grup_InvID">Grup Produk</label>
|
||||
<div class="col-sm-4 col-lg-5">'.$tgrup.'</div>
|
||||
<div class="col-sm-4 col-lg-5 text-end"><label class="form-label me-3">Produk Aktif ?</label>'.$taktif.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Kode_Produk">Kode Produk</label>
|
||||
<div class="col-sm-4 col-lg-5">'.$tkode.'</div>
|
||||
<label class="col-sm-2 col-lg-2 col-form-label" for="Kode_FP">Kode Produk FP</label>
|
||||
<div class="col-sm-2 col-lg-3">'.$tkode_fp.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Nama_Produk">Nama Produk</label>
|
||||
<div class="col">'.$tnama.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="StokID">Satuan Stok / Normal</label>
|
||||
<div class="col-sm-4 col-lg-5"><div class="input-group">'.$tstok.Form_Info("Ukuran satuan terkecil produk.").'</div></div>
|
||||
<div class="col-sm-4 col-lg-5"><div class="input-group">'.$tnormal.Form_Info("Ukuran satuan yang dipergunakan dalam transaksi normal dan laporan.").'</div></div>
|
||||
</div>
|
||||
<div class="row mb-1"><div class="col"><hr class="my-1"></div></div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Stok_Min">Stok Minimum</label>
|
||||
<div class="col-sm-4 col-lg-5">'.$tsmin.'</div>
|
||||
<div class="col-sm-4 col-lg-5 text-end"><label class="form-label me-3">Pajak ?</label>'.$tpajak.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Harga_Pokok">Harga Pokok</label>
|
||||
<div class="col-sm-4 col-lg-5">'.$thpp.'</div>
|
||||
<div class="col-sm-4 col-lg-5 text-end"><label class="form-label me-3">Hadiah ?</label>'.$thadiah.'</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="varian" role="tabpanel" aria-labelledby="varian-tab">
|
||||
<div class="row"><div class="col" id="divVarian"></div></div>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="kemasan" role="tabpanel" aria-labelledby="kemasan-tab">
|
||||
<div class="row"><div class="col" id="divKemasan"></div></div>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="harga" role="tabpanel" aria-labelledby="harga-tab">
|
||||
<div class="row"><div class="col" id="divHarga"></div></div>
|
||||
</div>
|
||||
</div>
|
||||
<input type="hidden" id="InvID" value="'.$atabel['InvID'].'" />
|
||||
<input type="hidden" id="mode" value="'.$mode.'" />
|
||||
';
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
if ($mode == "cancel") {
|
||||
if (Param::Get("mode_before")=="add") {
|
||||
$db->Query("DELETE FROM inv_produk_kemasan WHERE InvID='".$id_inv."'");
|
||||
$db->Query("DELETE FROM inv_produk_harga WHERE InvID='".$id_inv."'");
|
||||
$db->Query("DELETE FROM inv_produk_varian WHERE InvID='".$id_inv."'");
|
||||
$db->Query("DELETE FROM inv_produk WHERE InvID='".$id_inv."'");
|
||||
} else {
|
||||
Produk_Restore($id_inv);
|
||||
}
|
||||
} else {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("inv_produk");
|
||||
$sql->add_param("Grup_InvID");
|
||||
$sql->add_param("Kode_Produk");
|
||||
$sql->add_param("Nama_Produk");
|
||||
$sql->add_param("Kode_FP");
|
||||
$sql->add_param("StokID");
|
||||
$sql->add_param("NormalID");
|
||||
$sql->add_param("Harga_Pokok");
|
||||
$sql->add_param("Stok_Min");
|
||||
$sql->add_param("Pajak");
|
||||
$sql->add_param("Hadiah");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("InvID");
|
||||
|
||||
if (in_array($mode, ["add","edit"])) {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
$db->Query("DELETE FROM inv_produk_kemasan WHERE InvID='".$id_inv."'");
|
||||
$db->Query("DELETE FROM inv_produk_harga WHERE InvID='".$id_inv."'");
|
||||
$db->Query("DELETE FROM inv_produk_varian WHERE InvID='".$id_inv."'");
|
||||
}
|
||||
if ($mode <> "del") {
|
||||
Produk_Backup($id_inv);
|
||||
}
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "tabel-produk" ) {
|
||||
$tcari = trim(Param::Get("Cari_Produk"));
|
||||
$tsql = ($tcari=="") ? "" : " AND CONCAT(Kode_Produk,Nama_Produk) LIKE '%".$tcari."%'";
|
||||
$tsql .= ($i_filt==0) ? "" : " AND Grup_InvID='".$i_filt."'";
|
||||
if (strlen($tsql)>0) $tsql = " WHERE ".substr($tsql, 4);
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM vi_inv_produk".$tsql);
|
||||
$obj->add_field("InvID", "ID", "hid");
|
||||
$obj->add_field("Kode_Produk", "Kode", "l");
|
||||
$obj->add_field("Nama_Produk", "Nama Produk", "awr");
|
||||
$obj->add_field("Satuan_Stok", "Satuan Stok");
|
||||
$obj->add_field("Harga_Pokok", "Harga Pokok", "r", "rupiah");
|
||||
$obj->add_field("Stok_Min", "Stok Min", "r", "rupiah");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Produk", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "ProdukJS.produk_ubah");
|
||||
if (user_level(2)) $obj->add_row_btn("arrow-counterclockwise", "Restore", "ProdukJS.produk_restore");
|
||||
$obj->add_row_btn("trash", "Hapus", "ProdukJS.produk_hapus");
|
||||
$obj->set_func_navi("ProdukJS.data_query('tabel-produk')");
|
||||
$obj->set_func_btn("ProdukJS.produk_tambah", "+ Produk");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "tabel-varian" ) {
|
||||
if (in_array($mode_detail, ["update","delete"])) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("inv_produk_varian");
|
||||
$sql->add_param("RasaID");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("InvVarianID", $id_varian);
|
||||
|
||||
if ($mode_detail=="update") {
|
||||
if ($id_varian == 0) {
|
||||
$sql->add_param("InvID");
|
||||
$sql->InsertDB();
|
||||
} else {
|
||||
$sql->UpdateDB();
|
||||
}
|
||||
} else if ($mode_detail=="delete") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
}
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT S.*,T.Kode_Rasa,T.Nama_Rasa FROM (SELECT * FROM inv_produk_varian WHERE InvID='".$id_inv."') S LEFT JOIN para_rasa T ON (S.RasaID=T.RasaID)");
|
||||
$obj->add_field("InvVarianID", "ID", "hid");
|
||||
$obj->add_field("Kode_Rasa", "Kode", "l");
|
||||
$obj->add_field("Nama_Rasa", "Varian / Rasa", "awr");
|
||||
$obj->set_field_order("Kode_Rasa", "A");
|
||||
$obj->add_row_form("pencil-square", "Detail", "ProdukJS.varian_form");
|
||||
$obj->add_row_btn("trash", "Hapus", "ProdukJS.varian_del");
|
||||
$obj->set_func_btn("ProdukJS.varian_add", "+ Varian / Rasa");
|
||||
$ajson[] = $obj->json_table("divVarian");
|
||||
|
||||
} else if ( $data == "detail-varian" ) {
|
||||
$arec = ['InvVarianID'=>0,'RasaID'=>0];
|
||||
if ($id_varian > 0) {
|
||||
$db->Query("SELECT * FROM inv_produk_varian WHERE InvVarianID='".$id_varian."' LIMIT 1");
|
||||
if ($db->Next()) $arec = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$trasa = $form->option_que("_", "RasaID", $arec['RasaID'], true, false, "SELECT * FROM para_rasa WHERE Aktif=1 AND RasaID NOT IN (SELECT RasaID FROM inv_produk_varian WHERE InvID='".$id_inv."' AND InvVarianID<>'".$id_varian."') ORDER BY Nama_Rasa", ["RasaID","Nama_Rasa"]);
|
||||
$ajson['html'] = '
|
||||
<div class="card"><div class="card-body">
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="RasaID">Nama Varian / Rasa</label>
|
||||
<div class="col-sm-5">'.$trasa.'</div>
|
||||
<div class="col text-end"><button type="button" class="btn btn-warning shadow-none me-2" id="butBatalVarian">Batal</button><button type="button" class="btn btn-success shadow-none" id="butSimpanVarian">Simpan</button></div>
|
||||
</div>
|
||||
<input type="hidden" id="InvVarianID" value="'.$arec['InvVarianID'].'">
|
||||
</div></div>';
|
||||
|
||||
} else if ( $data == "tabel-kemasan" ) {
|
||||
if (in_array($mode_detail, ["update","delete"])) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("inv_produk_kemasan");
|
||||
$sql->add_param("SatuanID");
|
||||
$sql->add_param("Qty");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("InvKemasanID", $id_kemasan);
|
||||
|
||||
if ($mode_detail=="update") {
|
||||
if ($id_kemasan == 0) {
|
||||
$sql->add_param("InvID");
|
||||
$sql->InsertDB();
|
||||
} else {
|
||||
$sql->UpdateDB();
|
||||
if (Param::Get("SatuanID")<>Param::Get("SatuanLamaID")) {
|
||||
$db->Query("UPDATE inv_produk_harga SET SatuanID='".Param::Get("SatuanID")."' WHERE InvID='".$id_inv."' AND SatuanID='".Param::Get("SatuanLamaID")."'");
|
||||
}
|
||||
}
|
||||
} else if ($mode_detail=="delete") {
|
||||
$sql->DeleteDB();
|
||||
$db->Query("DELETE FROM inv_produk_harga WHERE InvID='".Param::Get("InvID")."' AND SatuanID='".Param::Get("SatuanLamaID")."'");
|
||||
}
|
||||
}
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT S.*,T.Nama_Satuan FROM (SELECT * FROM inv_produk_kemasan WHERE InvID='".$id_inv."') S LEFT JOIN para_satuan T ON (S.SatuanID=T.SatuanID)");
|
||||
$obj->add_field("InvKemasanID", "ID", "hid");
|
||||
$obj->add_field("Nama_Satuan", "Nama Kemasan");
|
||||
$obj->add_field("Qty", "Qty", "r", "rupiah");
|
||||
$obj->set_field_order("Nama_Satuan", "A");
|
||||
$obj->add_row_form("pencil-square", "Detail", "ProdukJS.kemasan_form");
|
||||
$obj->add_row_btn("trash", "Hapus", "ProdukJS.kemasan_del");
|
||||
$obj->set_func_btn("ProdukJS.kemasan_add", "+ Kemasan");
|
||||
$ajson[] = $obj->json_table("divKemasan");
|
||||
|
||||
} else if ( $data == "detail-kemasan" ) {
|
||||
$arec = ['InvKemasanID'=>0,'SatuanID'=>0,'Qty'=>0];
|
||||
if ($id_kemasan > 0) {
|
||||
$db->Query("SELECT * FROM inv_produk_kemasan WHERE InvKemasanID='".$id_kemasan."' LIMIT 1");
|
||||
if ($db->Next()) $arec = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$tsatuan = $form->option_db("_", "SatuanID", $arec['SatuanID'], true, false, "para_satuan", ["SatuanID","Nama_Satuan"], "Aktif=1 ORDER BY Nama_Satuan");
|
||||
$tqty = $form->textbox("_", "Qty", $arec['Qty'], true, true, "number", "qty");
|
||||
$ajson['html'] = '
|
||||
<div class="card"><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="SatuanID">Satuan Kemasan</label>
|
||||
<div class="col-sm-5">'.$tsatuan.'</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Qty">Qty / Kemasan</label>
|
||||
<div class="col-sm-5">'.$tqty.'</div>
|
||||
<div class="col text-end"><button type="button" class="btn btn-warning shadow-none me-2" id="butBatalKemasan">Batal</button><button type="button" class="btn btn-success shadow-none" id="butSimpanKemasan">Simpan</button></div></div>
|
||||
</div>
|
||||
<input type="hidden" id="InvKemasanID" value="'.$arec['InvKemasanID'].'">
|
||||
<input type="hidden" id="SatuanLamaID" value="'.$arec['SatuanID'].'">
|
||||
</div></div>';
|
||||
|
||||
} else if ( $data == "check-kemasan") {
|
||||
$ajson['ada'] = false;
|
||||
$db->Query("SELECT COUNT(*) Jumlah FROM inv_produk_kemasan WHERE InvID='".$id_inv."' AND SatuanID='".Param::Get("SatuanID")."'");
|
||||
if ($db->Next() && $db->Row("Jumlah",0)>0) $ajson['ada'] = true;
|
||||
|
||||
} else if ( $data == "tabel-harga" ) {
|
||||
if (in_array($mode_detail, ["update","delete"])) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("inv_produk_harga");
|
||||
$sql->add_param("SatuanID");
|
||||
$sql->add_param("Grup_OutletID");
|
||||
$sql->add_param_date("Tanggal");
|
||||
$sql->add_param("Harga_Jual");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("InvHargaID", $id_harga);
|
||||
|
||||
if ($mode_detail=="update") {
|
||||
if ($id_harga == 0) {
|
||||
$sql->add_param("InvID");
|
||||
$sql->InsertDB();
|
||||
} else {
|
||||
$sql->UpdateDB();
|
||||
}
|
||||
} else if ($mode_detail=="delete") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
}
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT H.*,S.Nama_Satuan,G.Nama_Grup FROM inv_produk_harga H LEFT JOIN para_satuan S ON (H.SatuanID=S.SatuanID) LEFT JOIN para_outlet_grup G ON (H.Grup_OutletID=G.Grup_OutletID) WHERE H.InvID='".$id_inv."'");
|
||||
$obj->add_field("InvHargaID", "ID", "hid");
|
||||
$obj->add_field("Nama_Satuan", "Nama Kemasan");
|
||||
$obj->add_field("Nama_Grup", "Grup Outlet");
|
||||
$obj->add_field("Tanggal", "Tanggal", "c", "sqltgl", "", "val-tgl");
|
||||
$obj->add_field("Harga_Jual", "Harga Jual", "r", "rupiah");
|
||||
$obj->set_field_order("Nama_Satuan", "A");
|
||||
$obj->add_row_form("pencil-square", "Detail", "ProdukJS.harga_form");
|
||||
$obj->add_row_btn("trash", "Hapus", "ProdukJS.harga_del");
|
||||
$obj->set_func_btn("ProdukJS.harga_add", "+ Harga Jual");
|
||||
$ajson[] = $obj->json_table("divHarga");
|
||||
|
||||
} else if ( $data == "detail-harga" ) {
|
||||
$arec = ['InvHargaID'=>0,'SatuanID'=>0,'Grup_OutletID'=>0,'Tanggal'=>tgl_ymd(),'Harga_Jual'=>0];
|
||||
if ($id_harga > 0) {
|
||||
$db->Query("SELECT * FROM inv_produk_harga WHERE InvHargaID='".$id_harga."' LIMIT 1");
|
||||
if ($db->Next()) $arec = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$tsatuan = $form->option_que("_", "SatuanID", $arec['SatuanID'], true, true, "SELECT * FROM para_satuan WHERE Aktif=1 AND SatuanID IN (SELECT SatuanID FROM inv_produk_kemasan WHERE InvID='".$id_inv."') ORDER BY Nama_Satuan", ["SatuanID","Nama_Satuan"]);
|
||||
$tqty = $form->textbox("_", "Qty", $arec['Qty'], true, true, "number", "qty");
|
||||
$tgrup = $form->option_db("_", "Grup_OutletID", $arec['Grup_OutletID'], true, true, "para_outlet_grup", ["Grup_OutletID","Nama_Grup"], "Aktif=1 ORDER BY Nama_Grup");
|
||||
$ttgl = $form->datebox("_", "Tanggal", $arec['Tanggal'], true, true);
|
||||
$tharga = $form->textbox("_", "Harga_Jual", $arec['Harga_Jual'], true, true, "double", "harga jual");
|
||||
$ajson['html'] = '
|
||||
<div class="card"><div class="card-body">
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="SatuanID">Satuan Kemasan</label>
|
||||
<div class="col-sm-5">'.$tsatuan.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Grup_OutletID">Grup Outlet</label>
|
||||
<div class="col-sm-5">'.$tgrup.'</div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Tanggal">Tanggal Update</label>
|
||||
<div class="col-sm-5">'.$ttgl.'</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col-sm-4 col-lg-2 col-form-label" for="Harga_Jual">Harga Jual</label>
|
||||
<div class="col-sm-5">'.$tharga.'</div>
|
||||
<div class="col text-end"><button type="button" class="btn btn-warning shadow-none me-2" id="butBatalHarga">Batal</button><button type="button" class="btn btn-success shadow-none" id="butSimpanHarga">Simpan</button></div>
|
||||
</div>
|
||||
<input type="hidden" id="InvHargaID" value="'.$arec['InvHargaID'].'">
|
||||
<input type="hidden" id="SatuanLamaID" value="'.$arec['SatuanID'].'">
|
||||
<input type="hidden" id="GrupLamaID" value="'.$arec['Grup_OutletID'].'">
|
||||
<input type="hidden" id="TanggalLama" value="'.$arec['Tanggal'].'">
|
||||
</div></div>';
|
||||
|
||||
} else if ( $data == "check-harga") {
|
||||
$ajson['ada'] = false;
|
||||
$db->Query("SELECT COUNT(*) Jumlah FROM inv_produk_harga WHERE InvID='".$id_inv."' AND SatuanID='".Param::Get("SatuanID")."' AND Grup_OutletID='".Param::Get("Grup_OutletID")."' AND Tanggal='".tgl_sql2str(Param::Get("Tanggal"))."'");
|
||||
if ($db->Next() && $db->Row("Jumlah",0)>0) $ajson['ada'] = true;
|
||||
|
||||
} else if ($data == "detail-filter") {
|
||||
$form = new Form($db);
|
||||
$tfilter = $form->option_db("_", "Fi_Produk", Param::Get("Filter_Produk",0), true, false, "inv_produk_grup", ["Grup_InvID","Nama_Grup"], "Aktif=1 ORDER BY Nama_Grup", [0,"SEMUA GRUP PRODUK"]);
|
||||
echo '
|
||||
<div class="row mb-1"><div class="col text-center">Tampilan Berdasarkan :</div></div>
|
||||
<div class="row mb-1"><div class="col">'.$tfilter.'</div></div>
|
||||
';
|
||||
|
||||
} else if ( $data == "restore-detail" ) {
|
||||
$atabel = ['InvID'=>$id_inv];
|
||||
if ($id_inv > 0) {
|
||||
$db->Query("SELECT * FROM inv_produk WHERE InvID='".$id_inv."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$tnama = $form->textbox("_", "Nama_Produk", $atabel['Nama_Produk'], false, false, "text");
|
||||
$ajson['html'] = '
|
||||
<div class="row mb-1"><div class="col">'.$tnama.'</div></div>
|
||||
<div id="divBrowBackup"> </div>
|
||||
<input type="hidden" id="InvID" value="'.$atabel['InvID'].'">
|
||||
</div></div>';
|
||||
|
||||
} else if ( $data == "restore-tabel" ) {
|
||||
$obj = new Table($db);
|
||||
$obj->set_table("inv_produk_backup", "Tanggal,MD5Key,UserID", "InvID='".$id_inv."'");
|
||||
$obj->add_field("Tanggal", "Waktu Backup", "c nwr", "sqljam", "", "val-tgljam");
|
||||
$obj->add_field("MD5Key", "Kode Backup", "l");
|
||||
$obj->set_field_order("Tanggal", "A");
|
||||
$obj->add_row_form("list", "Detail", "ProdukJS.produk_restore_form");
|
||||
$obj->add_row_btn("arrow-counterclockwise", "Restore", "ProdukJS.produk_restore_select");
|
||||
$obj->set_func_navi("ProdukJS.data_query('restore-tabel')");
|
||||
$ajson[] = $obj->db_table("divBrowBackup");
|
||||
|
||||
} else if ($data == "restore-proses") {
|
||||
Produk_Restore($id_inv, $md5_key);
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "restore-form" ) {
|
||||
$atabel = ['InvID'=>$id_inv, 'Nama_Grup'=>"", 'Nama_Stok'=>"", 'Nama_Normal'=>""];
|
||||
$akemasan = []; $aharga = []; $avarian = [];
|
||||
if ($md5_key <> "") {
|
||||
$db->Query("SELECT * FROM inv_produk_backup WHERE MD5Key='".$md5_key."' LIMIT 1");
|
||||
if ($db->Next()) {
|
||||
$atabel = array_merge($atabel, json_decode($db->Row("Produk", "[]"), true)[0]);
|
||||
$akemasan = json_decode($db->Row("Kemasan", "[]"), true);
|
||||
$aharga = json_decode($db->Row("Harga", "[]"), true);
|
||||
$avarian = json_decode($db->Row("Varian", "[]"), true);
|
||||
}
|
||||
$db->Query("SELECT Nama_Grup FROM inv_produk_grup WHERE Grup_InvID='".$atabel['Grup_InvID']."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = array_merge($atabel, $db->AllRow());
|
||||
$db->Query("SELECT Nama_Satuan Nama_Stok FROM para_satuan WHERE SatuanID='".$atabel['StokID']."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = array_merge($atabel, $db->AllRow());
|
||||
$db->Query("SELECT Nama_Satuan Nama_Normal FROM para_satuan WHERE SatuanID='".$atabel['NormalID']."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = array_merge($atabel, $db->AllRow());
|
||||
$atabel['Status_Pajak'] = ($atabel['Pajak']==1) ? "Ya" : "Tidak";
|
||||
$atabel['Status_Hadiah'] = ($atabel['Hadiah']==1) ? "Ya" : "Tidak";
|
||||
$atabel['Status_Aktif'] = ($atabel['Aktif']==1) ? "Aktif" : "Tidak Aktif";
|
||||
}
|
||||
|
||||
$tgrup = '<input type="text" class="form-control" value="'.$atabel['Nama_Grup'].'" readonly="">';
|
||||
$taktif = '<input type="text" class="form-control" value="'.$atabel['Status_Aktif'].'" readonly="">';
|
||||
$tkode = '<input type="text" class="form-control" value="'.$atabel['Kode_Produk'].'" readonly="">';
|
||||
$tkodefp = '<input type="text" class="form-control" value="'.$atabel['Kode_FP'].'" readonly="">';
|
||||
$tnama = '<input type="text" class="form-control" value="'.$atabel['Nama_Produk'].'" readonly="">';
|
||||
$tstok = '<input type="text" class="form-control" value="'.$atabel['Nama_Stok'].'" readonly="">';
|
||||
$tnormal = '<input type="text" class="form-control" value="'.$atabel['Nama_Normal'].'" readonly="">';
|
||||
$tsmin = '<input type="text" class="form-control text-end" value="'.rupiah($atabel['Stok_Min']).'" readonly="">';
|
||||
$thpp = '<input type="text" class="form-control text-end" value="'.rupiah($atabel['Harga_Pokok']).'" readonly="">';
|
||||
$tpajak = '<input type="text" class="form-control" value="'.$atabel['Status_Pajak'].'" readonly="">';
|
||||
$thadiah = '<input type="text" class="form-control" value="'.$atabel['Status_Hadiah'].'" readonly="">';
|
||||
|
||||
$ajson['html'] = '
|
||||
<div class="card"><div class="card-body">
|
||||
<div class="accordion" id="accorProduk">
|
||||
<!-- start produk -->
|
||||
<div class="accordion-item">
|
||||
<h2 class="accordion-header" id="flush-one"><button class="accordion-button bg-info bg-gradient" style="--bs-bg-opacity: .5;" type="button" data-bs-toggle="collapse" data-bs-target="#flush-coll-one" aria-controls="flush-coll-one" aria-expanded="true">Informasi Produk</button></h2>
|
||||
<div id="flush-coll-one" class="accordion-collapse collapse show" aria-labelledby="flush-head-one" data-bs-parent="#accorProduk">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Grup Produk</span>'.$tgrup.'</div></div>
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Status Produk</span>'.$taktif.'</div></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Kode Produk</span>'.$tkode.'</div></div>
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Kode Produk FP</span>'.$tkodefp.'</div></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="col-sm-12 col-lg-12"><div class="input-group"><span class="input-group-text" style="width:160px;">Nama Produk</span>'.$tnama.'</div></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Satuan Stok</span>'.$tstok.'</div></div>
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Satuan Normal</span>'.$tnormal.'</div></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Stok Minimum</span>'.$tsmin.'</div></div>
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Status Pajak</span>'.$tpajak.'</div></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Harga Pokok</span>'.$thpp.'</div></div>
|
||||
<div class="col-sm-12 col-lg-6"><div class="input-group"><span class="input-group-text" style="width:160px;">Status Hadiah</span>'.$thadiah.'</div></div>
|
||||
</div>
|
||||
</div></div></div>
|
||||
<!-- end produk -->
|
||||
<!-- start varian -->
|
||||
<div class="accordion-item">
|
||||
<h2 class="accordion-header" id="flush-two"><button class="accordion-button bg-warning bg-gradient collapsed" style="--bs-bg-opacity: .5;" type="button" data-bs-toggle="collapse" data-bs-target="#flush-coll-two" aria-controls="flush-coll-two" aria-expanded="false">Varian / Rasa</button></h2>
|
||||
<div id="flush-coll-two" class="accordion-collapse collapse" aria-labelledby="flush-head-two" data-bs-parent="#accorProduk">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col">
|
||||
<table class="table table-striped table-bordered table-hover dataTable no-footer dtr-inline">
|
||||
<thead><tr><th class="l">Kode</th><th class="awr">Varian / Rasa</th></tr></thead>
|
||||
<tbody>';
|
||||
|
||||
if (count($avarian) == 0) {
|
||||
$ajson['html'] .= '<tr><td class="c" colspan="2">belum ada data</td></tr>';
|
||||
}
|
||||
foreach($avarian as $_key => $val) {
|
||||
$db->Query("SELECT * FROM para_rasa WHERE RasaID='".$val['RasaID']."' LIMIT 1");
|
||||
if ($db->Next()) $val = array_merge($val, $db->AllRow());
|
||||
$ajson['html'] .= sprintf('<tr><td class="l">%s</td><td class="awr">%s</td></tr>', $val['Kode_Rasa'], $val['Nama_Rasa']);
|
||||
}
|
||||
|
||||
$ajson['html'] .= '
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div></div></div>
|
||||
<!-- end varian -->
|
||||
<!-- start kemasan -->
|
||||
<div class="accordion-item">
|
||||
<h2 class="accordion-header" id="flush-tri"><button class="accordion-button bg-secondary bg-gradient collapsed" style="--bs-bg-opacity: .5;" type="button" data-bs-toggle="collapse" data-bs-target="#flush-coll-tri" aria-controls="flush-coll-tri" aria-expanded="false">Kemasan</button></h2>
|
||||
<div id="flush-coll-tri" class="accordion-collapse collapse" aria-labelledby="flush-head-tri" data-bs-parent="#accorProduk">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col">
|
||||
<table class="table table-striped table-bordered table-hover dataTable no-footer dtr-inline">
|
||||
<thead><tr><th class="l">Nama Kemasan</th><th class="r">Qty</th></tr></thead>
|
||||
<tbody>';
|
||||
|
||||
if (count($akemasan) == 0) {
|
||||
$ajson['html'] .= '<tr><td class="c" colspan="2">belum ada data</td></tr>';
|
||||
}
|
||||
foreach($akemasan as $_key => $val) {
|
||||
$db->Query("SELECT * FROM para_satuan WHERE SatuanID='".$val['SatuanID']."' LIMIT 1");
|
||||
if ($db->Next()) $val = array_merge($val, $db->AllRow());
|
||||
$ajson['html'] .= sprintf('<tr><td class="l">%s</td><td class="r">%s</td></tr>', $val['Nama_Satuan'], rupiah($val['Qty']));
|
||||
}
|
||||
|
||||
$ajson['html'] .= '
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div></div></div>
|
||||
<!-- end kemasan -->
|
||||
<!-- start harga -->
|
||||
<div class="accordion-item">
|
||||
<h2 class="accordion-header" id="flush-four"><button class="accordion-button bg-success bg-gradient collapsed" style="--bs-bg-opacity: .5;" type="button" data-bs-toggle="collapse" data-bs-target="#flush-coll-four" aria-controls="flush-coll-four" aria-expanded="false">Harga Jual</button></h2>
|
||||
<div id="flush-coll-four" class="accordion-collapse collapse" aria-labelledby="flush-head-four" data-bs-parent="#accorProduk">
|
||||
<div class="accordion-body">
|
||||
<div class="row mb-1">
|
||||
<div class="col">
|
||||
<table class="table table-striped table-bordered table-hover dataTable no-footer dtr-inline">
|
||||
<thead><tr><th class="l">Nama Kemasan</th><th class="l">Grup Outlet</th><th class="c">Tanggal</th><th class="r">Harga Jual</th></tr></thead>
|
||||
<tbody>';
|
||||
|
||||
if (count($aharga) == 0) {
|
||||
$ajson['html'] .= '<tr><td class="c" colspan="4">belum ada data</td></tr>';
|
||||
}
|
||||
foreach($aharga as $_key => $val) {
|
||||
$db->Query("SELECT * FROM para_satuan WHERE SatuanID='".$val['SatuanID']."' LIMIT 1");
|
||||
if ($db->Next()) $val = array_merge($val, $db->AllRow());
|
||||
$db->Query("SELECT * FROM para_outlet_grup WHERE Grup_OutletID='".$val['Grup_OutletID']."' LIMIT 1");
|
||||
if ($db->Next()) $val = array_merge($val, $db->AllRow());
|
||||
$ajson['html'] .= sprintf('<tr><td class="l">%s</td><td class="l">%s</td><td class="c">%s</td><td class="r">%s</td></tr>', $val['Nama_Satuan'], $val['Nama_Grup'], $val['Tanggal'], rupiah($val['Harga_Jual']));
|
||||
}
|
||||
|
||||
$ajson['html'] .= '
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div></div></div>
|
||||
<!-- end harga -->
|
||||
</div>
|
||||
</div></div>';
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Produk</div><div class="card-body"><div class="row mb-1"><div class="col d-flex justify-content-between"><div class="input-group me-3"><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><button class="btn btn-secondary shadow-none" type="button" id="butFilter">Filter</button><input type="hidden" id="Filter_Produk" value="0" /></div></div><div id="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/produk_grup.php
|
||||
Desc. : PHP - Tabel Master Grup Produk
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : February 8th, 2011.
|
||||
Last Modified : March 19th, 2023.
|
||||
|
||||
(c) 2011 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("Grup_InvID", 0);
|
||||
|
||||
if ( $data == "grup-detail" ) {
|
||||
$atabel = ['Grup_InvID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM inv_produk_grup WHERE Grup_InvID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Grup Produk", "Kode_Grup", $atabel['Kode_Grup'], true, true, "text", "kode grup produk");
|
||||
$form->textbox("Nama Grup Produk", "Nama_Grup", $atabel['Nama_Grup'], true, true, "text", "nama grup produk");
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("Grup_InvID", $atabel['Grup_InvID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Grup_ _Nama_Grup_ _Aktif_ _mode_ _Grup_InvID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("inv_produk_grup");
|
||||
$sql->add_param("Kode_Grup");
|
||||
$sql->add_param("Nama_Grup");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("Grup_InvID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Grup"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Grup,Nama_Grup) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM inv_produk_grup".$tsql);
|
||||
$obj->add_field("Grup_InvID", "ID", "hid");
|
||||
$obj->add_field("Kode_Grup", "Kode Grup");
|
||||
$obj->add_field("Nama_Grup", "Nama Grup", "awr");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Grup", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "ProdukGrupJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "ProdukGrupJS.detail_hapus");
|
||||
$obj->set_func_navi("ProdukGrupJS.data_query('detail')");
|
||||
$obj->set_func_btn("ProdukGrupJS.detail_tambah", "+ Grup Produk");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Grup Produk</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Grup" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/rasa.php
|
||||
Desc. : PHP - Tabel Master Rasa Produk
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 7th, 2010.
|
||||
Last Modified : March 19th, 2023.
|
||||
|
||||
(c) 2010 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("RasaID", 0);
|
||||
|
||||
if ( $data == "rasa-detail" ) {
|
||||
$atabel = ['RasaID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_rasa WHERE RasaID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Rasa Produk", "Kode_Rasa", $atabel['Kode_Rasa'], true, true, "text", "kode rasa produk");
|
||||
$form->textbox("Nama Rasa Produk", "Nama_Rasa", $atabel['Nama_Rasa'], true, true, "text", "nama rasa produk");
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("RasaID", $atabel['RasaID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Rasa_ _Nama_Rasa_ _Aktif_ _mode_ _RasaID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_rasa");
|
||||
$sql->add_param("Kode_Rasa");
|
||||
$sql->add_param("Nama_Rasa");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("RasaID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Rasa"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Rasa,Nama_Rasa) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_rasa".$tsql);
|
||||
$obj->add_field("RasaID", "ID", "hid");
|
||||
$obj->add_field("Kode_Rasa", "Kode Rasa");
|
||||
$obj->add_field("Nama_Rasa", "Nama Rasa Produk", "awr");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Rasa", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "RasaJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "RasaJS.detail_hapus");
|
||||
$obj->set_func_navi("RasaJS.data_query('detail')");
|
||||
$obj->set_func_btn("RasaJS.detail_tambah", "+ Rasa Produk");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Rasa Produk</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Rasa" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/satuan.php
|
||||
Desc. : PHP - Tabel Master Satuan Produk
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : May 19th, 2010.
|
||||
Last Modified : March 19th, 2023.
|
||||
|
||||
(c) 2010 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("SatuanID", 0);
|
||||
|
||||
if ( $data == "satuan-detail" ) {
|
||||
$atabel = ['SatuanID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_satuan WHERE SatuanID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Satuan", "Kode_Satuan", $atabel['Kode_Satuan'], true, true, "text", "kode satuan produk");
|
||||
$form->textbox("Nama Satuan Produk", "Nama_Satuan", $atabel['Nama_Satuan'], true, true, "text", "nama satuan produk");
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("SatuanID", $atabel['SatuanID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Satuan_ _Nama_Satuan_ _Aktif_ _mode_ _SatuanID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_satuan");
|
||||
$sql->add_param("Kode_Satuan");
|
||||
$sql->add_param("Nama_Satuan");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("SatuanID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Satuan"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Satuan,Nama_Satuan) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_satuan".$tsql);
|
||||
$obj->add_field("SatuanID", "ID", "hid");
|
||||
$obj->add_field("Kode_Satuan", "Kode");
|
||||
$obj->add_field("Nama_Satuan", "Nama Satuan Produk", "awr");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Satuan", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "SatuanJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "SatuanJS.detail_hapus");
|
||||
$obj->set_func_navi("SatuanJS.data_query('detail')");
|
||||
$obj->set_func_btn("SatuanJS.detail_tambah", "+ Satuan");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Satuan Produk</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Satuan" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
@@ -0,0 +1,99 @@
|
||||
<?php
|
||||
|
||||
/*******************************************************************
|
||||
|
||||
App. Name : Inventory Advanced Systems
|
||||
Module : /apps/php/tab/supplier.php
|
||||
Desc. : PHP - Tabel Master Supplier
|
||||
Created By : Siau Pheng ([email protected]).
|
||||
Created Date : December 7th, 2010.
|
||||
Last Modified : March 19th, 2023.
|
||||
|
||||
(c) 2010 - 2023, 3FONIA Software; WWW.3FONIA.COM.
|
||||
|
||||
*******************************************************************/
|
||||
|
||||
require_once(__DIR__."/../../../../../vendor/autoload.php");
|
||||
|
||||
use siaupheng\fonia3\DB\MySQL;
|
||||
use siaupheng\fonia3\DB\SQL;
|
||||
use siaupheng\fonia3\Web\Param;
|
||||
use siaupheng\fonia3\Web\Table;
|
||||
use siaupheng\fonia3\Web\Form;
|
||||
|
||||
$db = (is_resource($db)) ? $db : new MySQL();
|
||||
$ajson = [];
|
||||
$data = Param::Get("data");
|
||||
$mode = Param::Get("mode");
|
||||
$id_tm = Param::Get("SupID", 0);
|
||||
|
||||
if ( $data == "sup-detail" ) {
|
||||
$atabel = ['SupID'=>0,'Aktif'=>1];
|
||||
if ($id_tm > 0) {
|
||||
$db->Query("SELECT * FROM para_supplier WHERE SupID='".$id_tm."' LIMIT 1");
|
||||
if ($db->Next()) $atabel = $db->AllRow();
|
||||
}
|
||||
|
||||
$form = new Form($db);
|
||||
$form->textbox("Kode Supplier", "Kode_Sup", $atabel['Kode_Sup'], true, true, "text", "kode supplier");
|
||||
$form->textbox("Nama Supplier", "Nama_Sup", $atabel['Nama_Sup'], true, true, "text", "nama supplier");
|
||||
$form->textarea("Alamat Supplier", "Alamat_Sup", $atabel['Alamat_Sup'], true, true, 3, "alamat supplier");
|
||||
$form->textbox("Kota Supplier", "Kota_Sup", $atabel['Kota_Sup'], true, true, "text", "kota supplier");
|
||||
$form->textbox("Telp Supplier", "Telp_Sup", $atabel['Telp_Sup'], true, true, "text", "telp supplier");
|
||||
$form->textbox("NPWP Supplier", "No_NPWP", $atabel['No_NPWP'], true, true, "text", "0000000000000000", 16);
|
||||
$form->textbox("NITKU Supplier", "No_NITKU", $atabel['No_NITKU'], true, true, "text", "000000", 6);
|
||||
$form->switch("Status Aktif", "Aktif", $atabel['Aktif'], true, true, [1,0]);
|
||||
$form->hidden("SupID", $atabel['SupID']);
|
||||
$form->hidden("mode", $mode);
|
||||
$form->show(' _Kode_Sup_ _Nama_Sup_ _Alamat_Sup_ _Kota_Sup_ _Telp_Sup_ _No_NPWP_ _No_NITKU_ _Aktif_ _mode_ _SupID_ ');
|
||||
|
||||
} else if ( $data == "save" ) {
|
||||
$sql = new SQL($db);
|
||||
$sql->set_table("para_supplier");
|
||||
$sql->add_param("Kode_Sup");
|
||||
$sql->add_param("Nama_Sup");
|
||||
$sql->add_param("Alamat_Sup");
|
||||
$sql->add_param("Kota_Sup");
|
||||
$sql->add_param("Telp_Sup");
|
||||
$sql->add_param("No_NPWP");
|
||||
$sql->add_param("No_NITKU");
|
||||
$sql->add_param("Aktif");
|
||||
$sql->add_param_userid();
|
||||
$sql->add_where("SupID");
|
||||
|
||||
if ($mode=="add") {
|
||||
$sql->InsertDB();
|
||||
} else if ($mode=="edit") {
|
||||
$sql->UpdateDB();
|
||||
} else if ($mode=="del") {
|
||||
$sql->DeleteDB();
|
||||
}
|
||||
$ajson['status'] = true;
|
||||
|
||||
} else if ( $data == "detail" ) {
|
||||
$tcari = trim(Param::Get("Cari_Sup"));
|
||||
$tsql = ($tcari=="") ? "" : " WHERE CONCAT(Kode_Sup,Nama_Sup,Telp_Sup) LIKE '%".$tcari."%'";
|
||||
|
||||
$obj = new Table($db);
|
||||
$obj->set_query("SELECT * FROM para_supplier".$tsql);
|
||||
$obj->add_field("SupID", "ID", "hid");
|
||||
$obj->add_field("Kode_Sup", "Kode Supplier");
|
||||
$obj->add_field("Nama_Sup", "Nama Supplier", "awr");
|
||||
$obj->add_field("Telp_Sup", "No. Telp", "l");
|
||||
$obj->add_field("Aktif", "Aktif", "c", "checkbox");
|
||||
$obj->set_field_order("Kode_Sup", "A");
|
||||
$obj->add_row_btn("clipboard", "Ubah", "SupplierJS.detail_ubah");
|
||||
$obj->add_row_btn("trash", "Hapus", "SupplierJS.detail_hapus");
|
||||
$obj->set_func_navi("SupplierJS.data_query('detail')");
|
||||
$obj->set_func_btn("SupplierJS.detail_tambah", "+ Supplier");
|
||||
$ajson[] = $obj->json_table("divDetail");
|
||||
|
||||
} else if ( $data == "default") {
|
||||
echo '
|
||||
<div class="fade-in">
|
||||
<div class="card"><div class="card-header custom-style">Daftar Supplier</div><div class="card-body"><div class="row mb-1"><div class="col"><div class="input-group"><input class="form-control" id="Cari_Sup" 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="divDetail"> </div></div></div>
|
||||
</div>';
|
||||
}
|
||||
|
||||
send_json($ajson);
|
||||
?>
|
||||
Reference in New Issue
Block a user