Compare commits

..
12 Commits
Author SHA1 Message Date
siaupheng 471589cc57 Add Cache-Control and Pragma headers for improved caching in routes 2026-11-04 15:35:32 +07:00
siaupheng eab5acde17 Update various controllers and scripts; modify last modified dates, enhance JSON responses, and adjust PPN handling for improved functionality 2026-11-04 11:14:12 +07:00
siaupheng 4344b53de8 Update scan_produk method in CekhargaController to enhance response structure with detailed product information 2026-11-03 16:53:54 +07:00
siaupheng f04d146828 Update CekhargaController last modified date and refactor SQL query; remove old cekharga.js script and add new cek_harga.js script 2026-11-03 16:35:10 +07:00
siaupheng b6da9303a5 Update AboutController to change label from "Composer Packages" to "Repositori Composer" for improved clarity 2026-11-03 13:38:13 +07:00
siaupheng 695028581f Fix version display in AboutController and improve log output in CacheCommand; update routing for constant PROJECT_ROOT 2026-11-03 13:35:51 +07:00
siaupheng 03e281d671 Update command usage syntax in CacheCommand, PPOBCommand, and ProdukCommand for consistency 2026-11-03 09:48:16 +07:00
siaupheng 0db288c404 Update IndexController and CacheCommand; add missing DateInterval and DateTime imports, and change info message to white for better visibility 2026-11-03 08:45:57 +07:00
siaupheng d5b44789fe Update last modified dates in PosController, NotaController, and AkhirController; enhance printing logic for thermal printers 2026-11-02 16:09:57 +07:00
siaupheng a5fd32ba79 Update last modified date in AboutController and about.js; enhance version display logic in about.js for better readability 2026-11-02 15:23:36 +07:00
siaupheng dcd13bb9df Refactor printing logic across multiple scripts to use method chaining for improved readability and consistency
- Updated Printer and PrinterPos instantiation to use method chaining with addParam instead of add_param.
- Refactored print functions in various modules including opname.js, pos.js, tukar.js, ppobtx.js, prabayar.js, and multiple report scripts.
- Enhanced code clarity and maintainability by standardizing parameter addition for print jobs.
2026-11-02 14:03:32 +07:00
siaupheng 5d246e039e Refactor parameter naming in download functions across multiple scripts for consistency 2026-11-02 09:24:13 +07:00
70 changed files with 596 additions and 506 deletions
+19 -16
View File
@@ -16,6 +16,8 @@ declare(strict_types=1);
namespace App\Controller;
use DateInterval;
use DateTime;
use flight\Engine;
use flight\Session;
use flight\database\SimplePdo;
@@ -128,26 +130,27 @@ class IndexController {
}
public function index() {
$ajson['CabID'] = $this->id_cab ?? 0;
$ajson['html'] = '
<div class="card">
<div class="card-body my-bashboard">
<div class="row h-100">
<div class="col-12 col-md-6">
<div class="h-50">
<canvas id="ChartA"></canvas>
$this->app->json([
'CabID' => $this->id_cab ?? 0,
'html' => '
<div class="card">
<div class="card-body my-bashboard">
<div class="row h-100">
<div class="col-12 col-md-6">
<div class="h-50">
<canvas id="ChartA"></canvas>
</div>
<div class="h-50">
<canvas id="ChartB"></canvas>
</div>
</div>
<div class="h-50">
<canvas id="ChartB"></canvas>
<div class="col-12 col-md-6 h-100 overflow-scroll">
<div id="tabelStok"></div>
</div>
</div>
<div class="col-12 col-md-6 h-100 overflow-scroll">
<div id="tabelStok"></div>
</div>
</div>
</div>
</div>';
$this->app->json($ajson);
</div>'
]);
}
public function get401() {
+2 -2
View File
@@ -6,7 +6,7 @@
Description : Transaksi Pembelian
Created By : Siau Pheng ([email protected]).
Created Date : May 22th, 2010.
Last Modified : September 20th, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -553,7 +553,7 @@ class BeliController {
}
private function Data_Beli(string $nomor="", bool $baru=false): array {
$aparam = [ 'No_Beli'=>$nomor, 'PPN'=>0, 'Lunas'=>0 ];
$aparam = [ 'No_Beli'=>$nomor, 'PPN'=>1, 'Lunas'=>0 ];
if (empty($nomor)) {
if ($baru) $aparam['No_Beli'] = "BELI".$this->web_app['SERVER_ID'].(string) $this->id_cab.$this->app->user()->id(3)."#00";
$aparam['Tgl_Beli'] = tgl_ymd();
+4 -4
View File
@@ -6,7 +6,7 @@
Description : Informasi Barang & Harga Jual
Created By : Siau Pheng ([email protected]).
Created Date : October 22nd, 2014.
Last Modified : September 27th, 2026.
Last Modified : November 3rd, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -83,18 +83,18 @@ class CekhargaController {
public function scan_produk() {
$tcari = Param::Get("Cari_Produk", "");
$scandata = ['Nama_Supplier'=>"BELUM ADA"];
$scandata = ['InvID'=>0, 'Kode_Barang'=>"KODE_SKU / KODE_BARCODE", 'Nama_Barang'=>"NAMA_BARANG", 'Nama_Satuan'=>"SATUAN", 'Harga_Jual'=>"", 'Nama_Supplier'=>"BELUM ADA"];
// Cari by SKU + Barcode
// InvID : Kode_SKU + Kode_Barcode : Nama_Lengkap : Satuan_Kemasan : Harga_Jual
$_row = $this->db->fetchRow("SELECT P.InvID,CONCAT(K.Kode_SKU,' / ',K.Kode_Barcode) Kode_Barang,P.Nama_Produk_Varian Nama_Barang,P.Satuan_Kemasan Nama_Satuan,CONVERT(FORMAT(P.Harga_Jual,2) USING UTF8) Harga_Jual FROM (SELECT * FROM inv_produk_join WHERE Aktif=1 AND Harga_Jual>0 AND Grup_MemberID=? AND (Kode_SKU=? OR Kode_Barcode=?)) P", [$this->id_grup_member, $tcari, $tcari]);
$_row = $this->db->fetchRow("SELECT P.InvID,CONCAT(P.Kode_SKU,' / ',P.Kode_Barcode) Kode_Barang,P.Nama_Produk_Varian Nama_Barang,P.Satuan_Kemasan Nama_Satuan,CONVERT(FORMAT(P.Harga_Jual,2) USING UTF8) Harga_Jual FROM (SELECT * FROM inv_produk_join WHERE Aktif=1 AND Harga_Jual>0 AND Grup_MemberID=? AND (Kode_SKU=? OR Kode_Barcode=?)) P", [$this->id_grup_member, $tcari, $tcari]);
if ($_row) $scandata = array_merge($scandata, $_row->getData());
if (isset($scandata['InvID']) && $scandata['InvID'] > 0) {
$_row = $this->db->fetchRow("SELECT Nama_Sup Nama_Supplier FROM para_supplier WHERE SupID=(SELECT SupID FROM inv_produk_sup WHERE InvID=? ORDER BY Aktif DESC LIMIT 1)", [$scandata['InvID']]);
if ($_row) $scandata = array_merge($scandata, $_row->getData());
}
$this->app->json([ $scandata ]);
$this->app->json( $scandata );
}
public function update_sup() {
@@ -6,7 +6,7 @@
Description : Transaksi Penyesuaian Stok Per Barang
Created By : Siau Pheng ([email protected]).
Created Date : October 22nd, 2014.
Last Modified : October 11th, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -98,13 +98,13 @@ class OpnamebarangController {
public function scan_produk() {
$tcari = Param::Get("Cari_Produk", "");
$scandata = ['Nama_Supplier'=>"BELUM ADA"];
$scandata = [ 'InvID'=>0, 'SatuanID'=>0, 'VarianID'=>0, 'Kode_Barang'=>"KODE_SKU / KODE_BARCODE", 'Nama_Barang'=>"NAMA_BARANG", 'Nama_Satuan'=>"SATUAN", 'PPN'=>0, 'Harga_Beli'=>0, 'Stok_Sistem'=>0 ];
// Cari by SKU + Barcode
// Satuan : Varian : SKU + Barcode : Harga_Pokok : Satuan : PPN : Stok
$_row = $this->db->fetchRow("SELECT P.InvID,P.SatuanID,P.VarianID,P.Nama_Lengkap Nama_Barang,CONCAT(P.Kode_SKU,' / ',P.Kode_Barcode) Kode_Barang,P.Harga_Pokok Harga_Beli,P.Satuan_Kemasan Nama_Satuan,P.PPN,FORMAT(IFNULL(X.Stok,0),2) Stok_Sistem FROM (SELECT * FROM inv_produk_join WHERE Aktif=1 AND (Kode_SKU=? OR Kode_Barcode=?) GROUP BY InvID,SatuanID,VarianID) P LEFT JOIN inv_stok X ON (X.CabID=? AND X.InvID=P.InvID)", [$tcari, $tcari, $this->id_cab]);
if ($_row) $scandata = array_merge($scandata, $_row->getData());
$this->app->json([ $scandata ]);
$this->app->json( $scandata );
}
public function proses_simpan() {
+8 -3
View File
@@ -6,7 +6,7 @@
Description : Laporan Penerimaan Dana POS / Kasir
Created By : Siau Pheng ([email protected]).
Created Date : September 8th, 2012.
Last Modified : October 9th, 2026.
Last Modified : November 2nd, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -16,6 +16,7 @@ declare(strict_types=1);
namespace App\Controller\Report\Dana;
use App\Utils\Invesa;
use flight\Engine;
use flight\database\SimplePdo;
use flight\Session;
@@ -91,8 +92,12 @@ class PosController {
$tot_dana = $tot_jual + $tot_pulsa - $tot_potong - $tot_diskon;
$pre = new PrintPOS($this->app);
$pre->set_fontsize(2);//thermal
$pre->set_header_logo("logo-nota.png");//thermal
if (Invesa::Printer_Thermal(Param::Get("Printer", ""))) {
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
} else {
$pre->add_header($this->reg_name);
}
if ($this->app_inv['PRINT_OPENCD'] === 1) $pre->set_opendrawer();
if ($this->app_inv['PRINT_AUTOCUT'] === 1) $pre->set_cutpaper();
$pre->add_empty();
@@ -6,7 +6,7 @@
Description : Laporan Margin Penjualan / Member
Created By : Siau Pheng ([email protected]).
Created Date : October 12nd, 2012.
Last Modified : October 7th, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -226,7 +226,7 @@ class MarginController {
$ttipe = $form->radio("_", "Tipe", "R", true, false, ["R"=>"Rekap","D"=>"Detail"]);
$tcab = $form->option_db("_", "CabID", $this->id_cab, true, false, "para_cabang", ["CabID","Nama_Cab"], "Aktif=1 ORDER BY CabID", [0,"SEMUA CABANG"]);
$tmem = $form->textauto("_", "Nama_Member", ['value'=>0,'text'=>"SEMUA MEMBER"], true, true, "nama member");
$turut = $form->radio("_", "Urut", "B", true, false, ['H'=>"Harga Jual",'M'=>"Margin"]);
$turut = $form->radio("_", "Urut", "M", true, false, ['H'=>"Harga Jual",'M'=>"Margin"]);
$tfrom = $form->datebox("_", "Tgl_From", tgl_ymd(), true, false);
$tto = $form->datebox("_", "Tgl_To", tgl_ymd(), true, false);
$ajson['html'] = '
+40 -15
View File
@@ -6,7 +6,7 @@
Description : Cetak Struk / Nota POS
Created By : Siau Pheng ([email protected]).
Created Date : April 12th, 2011.
Last Modified : October 3rd, 2026.
Last Modified : November 2nd, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -16,6 +16,7 @@ declare(strict_types=1);
namespace App\Controller\Report;
use App\Utils\Invesa;
use App\Utils\PPOBClient;
use flight\Engine;
use flight\database\SimplePdo;
@@ -29,6 +30,7 @@ class NotaController {
private array $app_inv;
private string $no_cetak;
private int $op_cash;
private bool $is_thermal;
protected Engine $app;
protected SimplePdo $db;
@@ -39,6 +41,7 @@ class NotaController {
$this->app_inv = (array) $session->get('APP_INV');
$this->no_cetak = Param::Get("Nomor_Cetak", "");
$this->op_cash = Param::Int("Open_Cash", 0);
$this->is_thermal = Invesa::Printer_Thermal(Param::Get("Printer", ""));
}
public function pos(): void {
@@ -60,13 +63,18 @@ class NotaController {
if (count($aitem) === 0) return;
$pre = new PrintPOS($this->app);
$pre->set_fontsize(2);//thermal
$pre->set_header_logo("logo-nota.png");//thermal
if ($this->is_thermal) {
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
} else {
$pre->add_header($this->web_app['REG_NAME'], $this->web_app['REG_CITY']);
}
if ($this->app_inv['PRINT_OPENCD'] === 1 && $this->op_cash === 1) $pre->set_opendrawer();
if ($this->app_inv['PRINT_AUTOCUT'] === 1) $pre->set_cutpaper();
if (!empty($this->app_inv['TITLE_BEGIN'])) {
$_ahead = explode("[br]", stripslashes($this->app_inv['TITLE_BEGIN']));
foreach($_ahead as $val) $pre->addc($val);
foreach ($_ahead as $val) $pre->addc($val);
}
if ($is_member) {
@@ -81,6 +89,7 @@ class NotaController {
$items = 0; $qty = 0;
foreach ($aitem as $item) {
if ($item['Qty'] === 0) continue;
if ($item['Promo'] > 1) {
$apromo[] = rupiah($item['Qty'])." ".$item['Nama_Satuan']." ".$item['Nama_Produk_Varian'];
continue;
@@ -338,8 +347,12 @@ class NotaController {
if (count($aitem) === 0) return;
$pre = new PrintPOS($this->app);
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
if ($this->is_thermal) {
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
} else {
$pre->add_header($this->web_app['REG_NAME'], $this->web_app['REG_CITY']);
}
if ($this->app_inv['PRINT_AUTOCUT'] === 1) $pre->set_cutpaper();
$pre->add([$ainfo['No_Mutasi'],20,"L"], [tgl_sql2str($ainfo['Tgl_Mutasi']),20,"R"]);
$pre->add(["Dari Cabang : ",14,"L"], [$ainfo['Cabang1'],36,"L"]);
@@ -362,12 +375,16 @@ class NotaController {
$ainfo = $this->db->fetchRow("SELECT T.*,DATE_FORMAT(T.Tgl_TX,'%d-%m-%Y') Tgl_TX2,DATE_FORMAT(T.DateStamp,'%H:%i:%s') Jam_TX,UCASE(O.Nama) Nama_User,M.Kode_Member,M.Nama_Member,M.IM,B.Nama_Barang,UPPER(P.Nama_Tipe) Nama_Tipe FROM (SELECT * FROM inv_point_tx WHERE No_TX=?) T LEFT JOIN app_operator O ON (T.UserID=O.UserID) LEFT JOIN para_member M ON (M.MemberID=T.MemberID) LEFT JOIN inv_point_barang B ON (T.InvPID=B.InvPID) LEFT JOIN inv_point_tipe P ON (P.Point_TipeID=T.Point_TipeID)", [$this->no_cetak]);
$pre = new PrintPOS($this->app);
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
if ($this->is_thermal) {
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
} else {
$pre->add_header($this->web_app['REG_NAME'], $this->web_app['REG_CITY']);
}
if ($this->app_inv['PRINT_AUTOCUT'] === 1) $pre->set_cutpaper();
if (!empty($this->app_inv['TITLE_BEGIN'])) {
$_ahead = explode("[br]", stripslashes($this->app_inv['TITLE_BEGIN']));
foreach($_ahead as $val) $pre->addc($val);
foreach ($_ahead as $val) $pre->addc($val);
}
$pre->add([$ainfo['No_TX'],20,"L"], [$ainfo['Tgl_TX2'],20,"R"]);
@@ -405,8 +422,12 @@ class NotaController {
$abulan = bulan_array();
$pre = new PrintPOS($this->app);
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
if ($this->is_thermal) {
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
} else {
$pre->add_header($this->web_app['REG_NAME'], $this->web_app['REG_CITY']);
}
if ($this->app_inv['PRINT_AUTOCUT'] === 1) $pre->set_cutpaper();
$_info = $this->db->fetchRow("SELECT DATE_FORMAT(Tgl_Gaji,'%d-%m-%Y') Tgl_Gaji,Tgl_Gaji Tgl_Gaji2,Minggu,Bulan,Tahun,Kode_Jurnal,Catatan Catatan1,UserID FROM gel_gaji WHERE No_Gaji=?", [$this->no_cetak]);
@@ -418,7 +439,7 @@ class NotaController {
if (count($aitem) === 0) return;
foreach ($aitem as $item) {
$ainfo = array_merge($ainfo, $item);
$ainfo = array_merge($ainfo, $item->getData());
$acatat = [];
if (!empty($ainfo['Catatan1'])) {
$acatat = str_split(ucfirst(trim($ainfo['Catatan1'])), 40);
@@ -464,13 +485,17 @@ class NotaController {
if ((int) $ainfo['KateID'] === 5) $is_token = 1;
$pre = new PrintPOS($this->app);
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
if ($this->is_thermal) {
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
} else {
$pre->add_header($this->web_app['REG_NAME'], $this->web_app['REG_CITY']);
}
if ($this->app_inv['PRINT_OPENCD'] === 1 && $this->op_cash === 1) $pre->set_opendrawer();
if ($this->app_inv['PRINT_AUTOCUT'] === 1) $pre->set_cutpaper();
if (!empty($this->app_inv['TITLE_BEGIN'])) {
$_ahead = explode("[br]", stripslashes($this->app_inv['TITLE_BEGIN']));
foreach($_ahead as $val) $pre->addc($val);
foreach ($_ahead as $val) $pre->addc($val);
}
$pre->add([$ainfo['No_TX'],20], [$ainfo['Tgl_TX2'],20,"R"]);
+10 -6
View File
@@ -6,7 +6,7 @@
Description : Laporan Stok Akhir Barang
Created By : Siau Pheng ([email protected]).
Created Date : January 24th, 2011.
Last Modified : October 13th, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -46,7 +46,7 @@ class AkhirController {
$apre = [
'id_sup' => Param::Int("SupID", 0),
'id_grup_inv' => Param::Int("Grup_InvID", 0),
'ppn' => Param::Int("PPN", 9),
'ppn' => Param::Int("PPN", 0),
'tgl' => Param::Get("Tanggal"),
'urut' => Param::Get("Urut", "B"),
'min' => Param::Get("Min_Stok", "N"),
@@ -75,7 +75,7 @@ class AkhirController {
$tsql2 .= " AND P.Grup_InvID=?";
array_push($asql2, $apre['id_grup_inv']);
}
if ($apre['ppn'] !== 9) {
if ($apre['ppn'] > 0) {
$tsql2 .= " AND P.PPN=?";
array_push($asql2, $apre['ppn']);
}
@@ -93,8 +93,12 @@ class AkhirController {
$apre = $this->prepare();
$pre = new PrintPOS($this->app);
$pre->set_fontsize(2);//thermal
$pre->set_header_logo("logo-nota.png");//thermal
if (Invesa::Printer_Thermal(Param::Get("Printer", ""))) {
$pre->set_fontsize(2);
$pre->set_header_logo("logo-nota.png");
} else {
$pre->add_header($this->reg_name);
}
if ($this->app_inv['PRINT_AUTOCUT'] === 1) $pre->set_cutpaper();
$pre->add_empty();
@@ -187,7 +191,7 @@ class AkhirController {
$tcab = $form->option_db("_", "CabID", $this->id_cab, true, false, "para_cabang", ["CabID","Nama_Cab"], "Aktif=1 ORDER BY CabID", [0,"SEMUA CABANG"]);
$tsup = $form->option_db("_", "SupID", 0, true, false, "para_supplier", ["SupID","Nama_Sup"], "Aktif=1 ORDER BY Nama_Sup", [0,"SEMUA SUPPLIER"]);
$tgrup_inv = $form->option_db("_", "Grup_InvID", 0, true, false, "inv_produk_grup", ["Grup_InvID","Nama_Grup"], "Aktif=1 ORDER BY Nama_Grup", [0,"SEMUA GRUP"]);
$tppn = $form->option("_", "PPN", 9, true, false, [9 => "SEMUA STATUS"] + Invesa::PPN_Array());
$tppn = $form->option("_", "PPN", 9, true, false, [0 => "SEMUA STATUS"] + Invesa::PPN_Array());
$ttgl = $form->datebox("_", "Tanggal", tgl_ymd(), false, false);
$turut = $form->radio("_", "Urut", "B", true, false, ['B'=>"Nama Barang",'J'=>"Jumlah / Nilai"]);
$tstok = $form->radio("_", "Min_Stok", "N", true, false, ["Y"=>"Ya","N"=>"Tidak"], null, "RepoStokAkhirJS.oc_MinStok");
@@ -6,7 +6,7 @@
Description : Laporan Mutasi Stok Barang
Created By : Siau Pheng ([email protected]).
Created Date : July 16th, 2011.
Last Modified : October 12th, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -83,6 +83,18 @@ class MutasiController {
$this->app->json($ajson);
}
public function scan_produk() {
$tcari = Param::Get("Cari_Produk", "");
$scandata = [ 'InvID'=>0, 'Nama_Produk'=>"" ];
// Cari by SKU + Barcode
// InvID : Nama_Produk
$_row = $this->db->fetchRow("SELECT P.InvID,P.Nama_Lengkap Nama_Produk FROM (SELECT * FROM vi_inv_produk WHERE Aktif=1 AND Barcode_Nama LIKE ?) P", ['%'.$tcari.'%']);
if ($_row) $scandata = array_merge($scandata, $_row->getData());
$this->app->json( $scandata );
}
private function prepare() {
$apre = [
'id_inv' => Param::Int("InvID", 0),
@@ -198,7 +210,11 @@ class MutasiController {
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="CabID">Nama Cabang</label>
<div class="col">'.$tcab.'</div>
</div>
</div>';
if (isMobile()) {
$ajson['html'] .= '<div class="row mb-1"><div class="col"><div id="qr-reader"></div></div></div>';
}
$ajson['html'] .= '
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Nama_Produk">Nama Barang</label>
<div class="col"><div class="input-group">'.$tproduk.'<button id="butBrowProduk" class="btn btn-info" type="button"><i class="bi-bag"></i></button></div></div>
+5 -5
View File
@@ -6,7 +6,7 @@
Description : Informasi Aplikasi
Created By : Siau Pheng ([email protected]).
Created Date : November 23th, 2011.
Last Modified : August 13th, 2026.
Last Modified : November 2nd, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -107,9 +107,9 @@ class AboutController {
}, $packages);
usort($packages, fn($a, $b): int => $a->name <=> $b->name);
}
$text = '';
foreach ($packages as $item) {
$text .= '- ' .$item->name. ' Version ' .$item->version. '<br>';
$text = ''; $last = array_key_last((array) $packages);
foreach ($packages as $key => $item) {
$text .= $item->name. ' '.(str_starts_with($item->version,'v')?'':'v').$item->version. ($key === $last ? '' : '<i class="bi-gear px-1"></i>');
}
$this->app->json([ 'html' => $text ]);
}
@@ -144,7 +144,7 @@ class AboutController {
<div class="tab-pane fade" id="other" role="tabpanel" aria-labelledby="other-tab">
<div class="row mb-1"><div class="col fw-bold">Komponen Javascript</div></div>
<div class="row mb-1"><div class="col" id="divBuildInfo"></div></div>
<div class="row mb-1"><div class="col fw-bold">Composer Packages</div></div>
<div class="row mb-1"><div class="col fw-bold">Repositori Composer</div></div>
<div class="row mb-1"><div class="col overflow-auto" style="height:100px;" id="divComposerInfo"></div></div>
</div>
<div class="tab-pane fade" id="tool" role="tabpanel" aria-labelledby="tool-tab">
+2 -2
View File
@@ -6,7 +6,7 @@
Description : Master Barang
Created By : Siau Pheng ([email protected]).
Created Date : May 19th, 2010.
Last Modified : September 10th, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -253,7 +253,7 @@ class ProdukController {
}
public function detail_produk() {
$atabel = ['InvID'=>0,'Nama_Produk'=>"",'Grup_InvID'=>0,'StokID'=>$this->def_satuan,'NormalID'=>$this->def_satuan,'Harga_Beli'=>0,'Harga_Tambah'=>0,'Harga_Pokok'=>0,'Stok_Min'=>0,'Stok_Max'=>0,'Aktif'=>1,'PPN'=>0];
$atabel = ['InvID'=>0,'Nama_Produk'=>"",'Grup_InvID'=>0,'StokID'=>$this->def_satuan,'NormalID'=>$this->def_satuan,'Harga_Beli'=>0,'Harga_Tambah'=>0,'Harga_Pokok'=>0,'Stok_Min'=>0,'Stok_Max'=>0,'Aktif'=>1,'PPN'=>1];
if ($this->id_inv > 0) {
$atabel = $this->db->fetchRow("SELECT * FROM inv_produk WHERE InvID=?", [$this->id_inv]);
$this->Produk_Backup();
+3 -3
View File
@@ -107,9 +107,9 @@ var GELGajiJS = {
},
tx_print_exec() {
var cetak = new PrinterPos('report/nota/gaji');
cetak.add_param("Nomor_Cetak", $('#No_Gaji').val());
cetak.exec();
new PrinterPos('report/nota/gaji')
.addParam("Nomor_Cetak", $('#No_Gaji').val())
.exec();
FoniaJS.closeWindow(this.winBCetak);
},
+2 -2
View File
@@ -118,8 +118,8 @@ var BeliJS = {
tx_print(prt) {
if ($('#No_Beli').val()) {
var cetak = new Printer('report/nota/beli');
cetak.add_param("Nomor_Cetak", $('#No_Beli').val());
let cetak = new Printer('report/nota/beli')
.addParam("Nomor_Cetak", $('#No_Beli').val());
if (prt) cetak.doPrint(); else cetak.doPreview();
return;
}
+2 -2
View File
@@ -104,8 +104,8 @@ var BeliReturJS = {
tx_print(prt) {
if ($('#No_Beli').val()) {
var cetak = new Printer('report/nota/beli_retur');
cetak.add_param("Nomor_Cetak", $('#No_Beli').val());
let cetak = new Printer('report/nota/beli_retur')
.addParam("Nomor_Cetak", $('#No_Beli').val());
if (prt) cetak.doPrint(); else cetak.doPreview();
return;
}
+5 -5
View File
@@ -111,8 +111,8 @@ var JualJS = {
tx_print(prt) {
if ($('#No_Jual').val()) {
var cetak = new Printer('report/nota/jual');
cetak.add_param("Nomor_Cetak", $('#No_Jual').val());
let cetak = new Printer('report/nota/jual')
.addParam("Nomor_Cetak", $('#No_Jual').val());
if (prt) cetak.doPrint(); else cetak.doPreview();
return;
}
@@ -121,9 +121,9 @@ var JualJS = {
tx_print_pos() {
if ($('#No_Jual').val()) {
var cetak = new PrinterPos('report/nota/pos');
cetak.add_param("Nomor_Cetak", $('#No_Jual').val());
cetak.exec();
new PrinterPos('report/nota/pos')
.addParam("Nomor_Cetak", $('#No_Jual').val())
.exec();
return;
}
FoniaJS.showError("Silakan masukkan Nomor Transaksi !");
+5 -5
View File
@@ -109,8 +109,8 @@ var MutasiJS = {
tx_print(prt) {
if ($('#No_Mutasi').val()) {
var cetak = new Printer('report/nota/mutasi');
cetak.add_param("Nomor_Cetak", $('#No_Mutasi').val());
let cetak = new Printer('report/nota/mutasi')
.addParam("Nomor_Cetak", $('#No_Mutasi').val());
if (prt) cetak.doPrint(); else cetak.doPreview();
return;
}
@@ -119,9 +119,9 @@ var MutasiJS = {
tx_print_pos() {
if ($('#No_Mutasi').val()) {
var cetak = new PrinterPos('report/nota/mutasi_pos');
cetak.add_param("Nomor_Cetak", $('#No_Mutasi').val());
cetak.exec();
new PrinterPos('report/nota/mutasi_pos')
.addParam("Nomor_Cetak", $('#No_Mutasi').val())
.exec();
return;
}
FoniaJS.showError("Silakan masukkan Nomor Transaksi !");
+2 -2
View File
@@ -100,8 +100,8 @@ var OpnameJS = {
tx_print(prt) {
if ($('#No_Opname').val()) {
var cetak = new Printer('report/nota/opname');
cetak.add_param("Nomor_Cetak", $('#No_Opname').val());
let cetak = new Printer('report/nota/opname')
.addParam("Nomor_Cetak", $('#No_Opname').val());
if (prt) cetak.doPrint(); else cetak.doPreview();
return;
}
+1 -2
View File
@@ -19,7 +19,6 @@ var OpnameBarangJS = {
$('#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 {
@@ -39,7 +38,7 @@ var OpnameBarangJS = {
onSuccess: (ajson) => {
if (ajson.status === true){
FoniaJS.showInfo('Sukses simpan penyesuaian Stok !');
$('#InvID, #SatuanID, #VarianID, #Harga_Beli #PPN').val(0);
$('#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){
+5 -6
View File
@@ -35,16 +35,15 @@ var POSJS = {
},
proses_oc() {
var cetak = new PrinterPos('report/nota/open_cash');
cetak.exec();
new PrinterPos('report/nota/open_cash').exec();
$('#Nama_Produk').focus();
},
proses_print(oc) {
var cetak = new PrinterPos('report/nota/pos');
cetak.add_param("Nomor_Cetak", $('#No_Cetak').val());
cetak.add_param("Open_Cash", oc);
cetak.exec();
new PrinterPos('report/nota/pos')
.addParam("Nomor_Cetak", $('#No_Cetak').val())
.addParam("Open_Cash", oc)
.exec();
},
proses_cancel() {
+3 -3
View File
@@ -118,9 +118,9 @@ var MemberTukarJS = {
tx_print() {
if ($('#No_TX').val()) {
var cetak = new PrinterPos('report/nota/tukarpoint_pos');
cetak.add_param("Nomor_Cetak", $('#No_TX').val());
cetak.exec();
new PrinterPos('report/nota/tukarpoint_pos')
.addParam("Nomor_Cetak", $('#No_TX').val())
.exec();
return;
}
FoniaJS.showError("Silakan masukkan Nomor Transaksi !");
+4 -4
View File
@@ -29,10 +29,10 @@ var PPOBTXJS = {
},
proses_print(oc, no_cetak) {
var cetak = new PrinterPos('report/nota/ppob');
cetak.add_param("Nomor_Cetak", no_cetak);
cetak.add_param("Open_Cash", oc);
cetak.exec();
new PrinterPos('report/nota/ppob')
.addParam("Nomor_Cetak", no_cetak)
.addParam("Open_Cash", oc)
.exec();
},
proses_delete(no_tx) {
+5 -5
View File
@@ -35,11 +35,11 @@ var PrabayarJS = {
},
proses_print(oc, no_cetak) {
var cetak = new PrinterPos('apps/php/repo/nota.php');
cetak.add_param("data", "ppob-pos");
cetak.add_param("Nomor_Cetak", no_cetak);
cetak.add_param("Open_Cash", oc);
cetak.exec();
new PrinterPos('apps/php/repo/nota.php')
.addParam("data", "ppob-pos")
.addParam("Nomor_Cetak", no_cetak)
.addParam("Open_Cash", oc)
.exec();
},
proses_delete() {
+13 -13
View File
@@ -21,24 +21,24 @@ var RepoBeliAnalisaJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("SupID");
cetak.add_param("Grup_InvID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("SupID")
.addParam("Grup_InvID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("SupID");
dload.add_param("Grup_InvID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("SupID");
dload.addParam("Grup_InvID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+13 -13
View File
@@ -21,24 +21,24 @@ var RepoBeliJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("SupID");
cetak.add_param("Grup_InvID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("SupID")
.addParam("Grup_InvID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("SupID");
dload.add_param("Grup_InvID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("SupID");
dload.addParam("Grup_InvID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -26,11 +26,11 @@ var RepoBeliMutasiJS = {
$('#SupID').focus();
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("SupID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("SupID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -41,10 +41,10 @@ var RepoBeliMutasiJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("SupID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("SupID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+11 -11
View File
@@ -21,22 +21,22 @@ var RepoBeliReturJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("SupID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("SupID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("SupID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("SupID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoDanaKeluarJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoDanaMasukJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+18 -18
View File
@@ -27,32 +27,32 @@ var RepoDanaPosJS = {
$('#KasirID').focus();
return;
}
var cetak = new PrinterPos(this.PHP + '/pos');
cetak.add_param("Tipe", "R");
cetak.add_param("CabID");
cetak.add_param("KasirID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
cetak.exec();
new PrinterPos(this.PHP + '/pos')
.addParam("Tipe", "R")
.addParam("CabID")
.addParam("KasirID")
.addParam("Tgl_From")
.addParam("Tgl_To")
.exec();
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("KasirID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("KasirID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("KasirID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("KasirID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoGelBNeracaJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("Bulan");
cetak.add_param("Tahun");
cetak.add_param("Level");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("Bulan")
.addParam("Tahun")
.addParam("Level");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("Bulan");
dload.add_param("Tahun");
dload.add_param("Level");
dload.addParam("Tipe");
dload.addParam("Bulan");
dload.addParam("Tahun");
dload.addParam("Level");
dload.download();
}
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoGelBRLCabJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("Bulan1");
cetak.add_param("Bulan2");
cetak.add_param("Tahun");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("Bulan1")
.addParam("Bulan2")
.addParam("Tahun");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("Bulan1");
dload.add_param("Bulan2");
dload.add_param("Tahun");
dload.addParam("CabID");
dload.addParam("Bulan1");
dload.addParam("Bulan2");
dload.addParam("Tahun");
dload.download();
}
+7 -7
View File
@@ -21,18 +21,18 @@ var RepoGelBSaldoJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("Bulan");
cetak.add_param("Tahun");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("Bulan")
.addParam("Tahun");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("Bulan");
dload.add_param("Tahun");
dload.addParam("Tipe");
dload.addParam("Bulan");
dload.addParam("Tahun");
dload.download();
}
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoGelBSHUJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Bulan1");
cetak.add_param("Bulan2");
cetak.add_param("Tahun");
cetak.add_param("Level");
let cetak = new Printer(this.PHP + '/print')
.addParam("Bulan1")
.addParam("Bulan2")
.addParam("Tahun")
.addParam("Level");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Bulan1");
dload.add_param("Bulan2");
dload.add_param("Tahun");
dload.add_param("Level");
dload.addParam("Bulan1");
dload.addParam("Bulan2");
dload.addParam("Tahun");
dload.addParam("Level");
dload.download();
}
+7 -7
View File
@@ -21,18 +21,18 @@ var RepoGelHBantuJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Kode_Rek");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Kode_Rek")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Kode_Rek");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Kode_Rek");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -28,11 +28,11 @@ var RepoGelHBesarJS = {
FoniaJS.showError('Silakan masukkan Nama Rekening !');
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Kode_Rek");
cetak.add_param("Jenis");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Kode_Rek")
.addParam("Jenis")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -42,10 +42,10 @@ var RepoGelHBesarJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("Kode_Rek");
dload.add_param("Jenis");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Kode_Rek");
dload.addParam("Jenis");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
+2 -2
View File
@@ -27,8 +27,8 @@ var RepoGelHDetailJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Kode_Jurnal");
let cetak = new Printer(this.PHP + '/print')
.addParam("Kode_Jurnal");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
+7 -7
View File
@@ -21,18 +21,18 @@ var RepoGelHJurnalJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("TipeID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("TipeID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("TipeID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("TipeID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+5 -5
View File
@@ -21,16 +21,16 @@ var RepoGelHSaldoJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+8 -8
View File
@@ -32,14 +32,14 @@ var RepoInvBarcodeJS = {
FoniaJS.showError('Silakan pilih Nama Printer Barcode !');
return;
}
var cetak = new PrinterPos(this.PHP + '/barcode');
cetak.setPrinter($('#Printer').val());
cetak.add_param("InvID");
cetak.add_param("SatuanID");
cetak.add_param("VarianID");
cetak.add_param("Qty");
cetak.add_param("Printer");
cetak.exec();
new PrinterPos(this.PHP + '/barcode')
.setPrinter($('#Printer').val())
.addParam("InvID")
.addParam("SatuanID")
.addParam("VarianID")
.addParam("Qty")
.addParam("Printer")
.exec();
},
produk_brow() {
+11 -11
View File
@@ -21,22 +21,22 @@ var RepoInvHutangJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("SupID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("SupID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("SupID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("SupID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+1 -1
View File
@@ -29,7 +29,7 @@ var RepoInvLabelJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
let cetak = new Printer(this.PHP + '/print');
if (prt) cetak.doPrint(); else cetak.doPreview();
},
+11 -11
View File
@@ -23,22 +23,22 @@ var RepoInvPiutangJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("MemberID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("MemberID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("MemberID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("MemberID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
+19 -19
View File
@@ -23,30 +23,30 @@ var RepoJualAnalisaJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("Grup_InvID");
cetak.add_param("Grup_MemberID");
cetak.add_param("MemberID");
cetak.add_param("SupID");
cetak.add_param("Urut");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("Grup_InvID")
.addParam("Grup_MemberID")
.addParam("MemberID")
.addParam("SupID")
.addParam("Urut")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("Grup_InvID");
dload.add_param("Grup_MemberID");
dload.add_param("MemberID");
dload.add_param("SupID");
dload.add_param("Urut");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("Grup_InvID");
dload.addParam("Grup_MemberID");
dload.addParam("MemberID");
dload.addParam("SupID");
dload.addParam("Urut");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
+13 -13
View File
@@ -21,23 +21,23 @@ var RepoJualJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("MemberID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("MemberID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("MemberID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.download();
new Download(this.PHP + '/excel')
.addParam("Tipe")
.addParam("CabID")
.addParam("MemberID")
.addParam("Tgl_From")
.addParam("Tgl_To")
.download();
}
};
+13 -13
View File
@@ -23,24 +23,24 @@ var RepoJualMarginJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("MemberID");
cetak.add_param("Urut");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("MemberID")
.addParam("Urut")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("MemberID");
dload.add_param("Urut");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("MemberID");
dload.addParam("Urut");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoJualMarginPosJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -29,11 +29,11 @@ var RepoJualMutasiJS = {
$('#Nama_Member').focus();
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("MemberID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("MemberID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -44,10 +44,10 @@ var RepoJualMutasiJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("MemberID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("MemberID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
+11 -11
View File
@@ -36,12 +36,12 @@ var RepoJualRekapJS = {
$('#Nama_Member').focus();
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("InvID");
cetak.add_param("MemberID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("InvID")
.addParam("MemberID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -57,11 +57,11 @@ var RepoJualRekapJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("InvID");
dload.add_param("MemberID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("InvID");
dload.addParam("MemberID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
+11 -11
View File
@@ -32,12 +32,12 @@ var RepoMemberHistoriJS = {
FoniaJS.setFocus('#Nama_Member');
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("Point_TipeID");
cetak.add_param("MemberID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("Point_TipeID")
.addParam("MemberID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -52,11 +52,11 @@ var RepoMemberHistoriJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("Point_TipeID");
dload.add_param("MemberID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("Point_TipeID");
dload.addParam("MemberID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
+13 -13
View File
@@ -25,13 +25,13 @@ var RepoMemberPointJS = {
FoniaJS.showInfo("Silakan pilih Tipe Point !");
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("Point_TipeID");
cetak.add_param("Grup_MemberID");
cetak.add_param("Urut");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("Point_TipeID")
.addParam("Grup_MemberID")
.addParam("Urut")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -41,12 +41,12 @@ var RepoMemberPointJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("Point_TipeID");
dload.add_param("Grup_MemberID");
dload.add_param("Urut");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("Point_TipeID");
dload.addParam("Grup_MemberID");
dload.addParam("Urut");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+11 -11
View File
@@ -25,12 +25,12 @@ var RepoMemberTukarJS = {
FoniaJS.showInfo("Silakan pilih Tipe Point !");
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("Point_TipeID");
cetak.add_param("Grup_MemberID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("Point_TipeID")
.addParam("Grup_MemberID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -40,11 +40,11 @@ var RepoMemberTukarJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("Point_TipeID");
dload.add_param("Grup_MemberID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("Point_TipeID");
dload.addParam("Grup_MemberID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoPPOBJualJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoPPOBMarginJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Tipe");
cetak.add_param("CabID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Tipe")
.addParam("CabID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Tipe");
dload.add_param("CabID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Tipe");
dload.addParam("CabID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+7 -7
View File
@@ -21,18 +21,18 @@ var RepoRekapMarginJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+7 -7
View File
@@ -21,18 +21,18 @@ var RepoRekapModalJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+27 -27
View File
@@ -22,41 +22,41 @@ var RepoStokAkhirJS = {
},
proses_pos() {
var cetak = new PrinterPos(this.PHP + '/pos');
cetak.add_param("CabID");
cetak.add_param("SupID");
cetak.add_param("Grup_InvID");
cetak.add_param("PPN");
cetak.add_param("Tanggal");
cetak.add_param("Urut");
cetak.add_param("Min_Stok");
cetak.add_param("Min_Qty");
cetak.exec();
new PrinterPos(this.PHP + '/pos')
.addParam("CabID")
.addParam("SupID")
.addParam("Grup_InvID")
.addParam("PPN")
.addParam("Tanggal")
.addParam("Urut")
.addParam("Min_Stok")
.addParam("Min_Qty")
.exec();
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("SupID");
cetak.add_param("Grup_InvID");
cetak.add_param("PPN");
cetak.add_param("Tanggal");
cetak.add_param("Urut");
cetak.add_param("Min_Stok");
cetak.add_param("Min_Qty");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("SupID")
.addParam("Grup_InvID")
.addParam("PPN")
.addParam("Tanggal")
.addParam("Urut")
.addParam("Min_Stok")
.addParam("Min_Qty");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("SupID");
dload.add_param("Grup_InvID");
dload.add_param("PPN");
dload.add_param("Tanggal");
dload.add_param("Urut");
dload.add_param("Min_Stok");
dload.add_param("Min_Qty");
dload.addParam("CabID");
dload.addParam("SupID");
dload.addParam("Grup_InvID");
dload.addParam("PPN");
dload.addParam("Tanggal");
dload.addParam("Urut");
dload.addParam("Min_Stok");
dload.addParam("Min_Qty");
dload.download();
},
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoStokCabangJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("Cab1ID");
cetak.add_param("Cab2ID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("Cab1ID")
.addParam("Cab2ID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("Cab1ID");
dload.add_param("Cab2ID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("Cab1ID");
dload.addParam("Cab2ID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+30 -12
View File
@@ -4,7 +4,7 @@
Description : Laporan Mutasi Stok Barang
Created By : Siau Pheng (siaupheng@3fonia.com).
Created Date : July 16th, 2011.
Last Modified : October 12th, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -13,14 +13,20 @@
var RepoStokMutasiJS = {
PHP: '',
KODE: '',
html5QrcodeScanner: null,
index() {
$('#butCetak').click(() => this.proses_print(true));
$('#butPreview').click(() => this.proses_print());
$('#butExcel').click(() => this.proses_dload());
$('#butBrowProduk').click(() => this.produk_brow());
FoniaJS.AutoComplete('#Nama_Produk', this.PHP + '/auto_produk', [], {'selectFunc':this.Produk_Comp});
FoniaJS.setFocus('#Nama_Produk');
if (FoniaJS.WEB_MOBILE){
html5QrcodeScanner = new Html5Qrcode('qr-reader');
html5QrcodeScanner.start({ facingMode: 'environment' }, { fps: 10, qrbox: 250 }, RepoStokMutasiJS.ScanSukses);
} else {
FoniaJS.AutoComplete('#Nama_Produk', this.PHP + '/auto_produk', [], {'selectFunc': this.Produk_Comp});
FoniaJS.setFocus('#Nama_Produk');
}
},
proses_print(prt) {
@@ -29,11 +35,11 @@ var RepoStokMutasiJS = {
$('#Nama_Produk').focus();
return;
}
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("InvID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("InvID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
@@ -44,13 +50,25 @@ var RepoStokMutasiJS = {
return;
}
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("InvID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("InvID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
},
ScanSukses(decodedText, decodedResult) {
new Request({
url: RepoStokMutasiJS.PHP + '/scan_produk',
sendParam: ['Cari_Produk='+decodedText],
onSuccess: (ajson) => {
$('#InvID').val(ajson.InvID);
$('#Nama_Produk').val(ajson.Nama_Produk);
$('#Tgl_From').focus();
}
}).send();
},
produk_brow() {
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">&nbsp;</div>');
this.winBProduk = FoniaJS.showWindow('BProduk', 'Daftar Barang', _isi, 'xl', '', () => {
+9 -9
View File
@@ -21,20 +21,20 @@ var RepoStokOpnameJS = {
},
proses_print(prt) {
var cetak = new Printer(this.PHP + '/print');
cetak.add_param("CabID");
cetak.add_param("Grup_InvID");
cetak.add_param("Tgl_From");
cetak.add_param("Tgl_To");
let cetak = new Printer(this.PHP + '/print')
.addParam("CabID")
.addParam("Grup_InvID")
.addParam("Tgl_From")
.addParam("Tgl_To");
if (prt) cetak.doPrint(); else cetak.doPreview();
},
proses_dload() {
var dload = new Download(this.PHP + '/excel');
dload.add_param("CabID");
dload.add_param("Grup_InvID");
dload.add_param("Tgl_From");
dload.add_param("Tgl_To");
dload.addParam("CabID");
dload.addParam("Grup_InvID");
dload.addParam("Tgl_From");
dload.addParam("Tgl_To");
dload.download();
}
+11 -2
View File
@@ -4,7 +4,7 @@
Description : Informasi Aplikasi
Created By : Siau Pheng (siaupheng@3fonia.com).
Created Date : November 23th, 2011.
Last Modified : August 13th, 2026.
Last Modified : November 2nd, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -15,7 +15,15 @@ var AboutJS = {
KODE: '',
index() {
$('#win'+this.KODE).find('#divBuildInfo').html('<p>- jQuery Version '+$().jquery+' <br>- Bootstrap Version '+$.fn.tooltip.Constructor.VERSION+' <br>- FoniaJS Version '+FoniaJS.version+'</p>');
let _html = [];
if (typeof jQuery !== undefined) _html.push('jQuery v'+$().jquery);
if (typeof bootstrap !== undefined) _html.push('Bootstrap v'+$.fn.tooltip.Constructor.VERSION);
if (typeof DataTable !== undefined) _html.push('DataTable v'+DataTable.version);
if (typeof Chart !== undefined) _html.push('Chart.js v'+Chart.version);
if (typeof qz !== undefined) _html.push('QZ Connector v'+qz.version);
if (typeof FoniaJS !== undefined) _html.push('FoniaJS v'+FoniaJS.version);
$('#win'+this.KODE).find('#divBuildInfo').html(`<p>${_html.join('<i class="bi-nut px-1"></i>')}</p>`);
$('#butDBCek').click(() => this.db_check());
$('#butDBOpti').click(() => this.db_opti());
$('#butUpdateCek').click(() => this.update_check());
@@ -107,4 +115,5 @@ var AboutJS = {
}
}).send();
}
};
+4 -4
View File
@@ -43,10 +43,10 @@ var RekJS = {
},
print_rek(prt) {
var cetak = new Printer(this.PHP + '/print_rek');
cetak.add_param("Grup_RekID");
cetak.add_param("Level");
cetak.add_param("Tgl_Cetak");
let cetak = new Printer(this.PHP + '/print_rek')
.addParam("Grup_RekID")
.addParam("Level")
.addParam("Tgl_Cetak");
if (prt) cetak.doPrint(); else cetak.doPreview();
FoniaJS.closeWindow(this.winDPrint);
},
+4 -4
View File
@@ -43,10 +43,10 @@ var MemberJS = {
},
print_member(prt) {
var cetak = new Printer(this.PHP + '/print_member');
cetak.add_param("Grup_MemberID");
cetak.add_param("Aktif");
cetak.add_param("Tgl_Cetak");
let cetak = new Printer(this.PHP + '/print_member')
.addParam("Grup_MemberID")
.addParam("Aktif")
.addParam("Tgl_Cetak");
if (prt) cetak.doPrint(); else cetak.doPreview();
FoniaJS.closeWindow(this.winDPrint);
},
+4 -4
View File
@@ -44,10 +44,10 @@ var PPOBProdukJS = {
},
print_produk(prt) {
var cetak = new Printer(this.PHP + '/print_produk');
cetak.add_param("KateID");
cetak.add_param("OpeID");
cetak.add_param("Tgl_Cetak");
let cetak = new Printer(this.PHP + '/print_produk')
.addParam("KateID")
.addParam("OpeID")
.addParam("Tgl_Cetak");
if (prt) cetak.doPrint(); else cetak.doPreview();
FoniaJS.closeWindow(this.winDPrint);
},
+5 -5
View File
@@ -44,11 +44,11 @@ var ProdukJS = {
},
print_produk(prt) {
var cetak = new Printer(this.PHP + '/print_barang');
cetak.add_param("SupID");
cetak.add_param("Grup_InvID");
cetak.add_param("Grup_MemberID");
cetak.add_param("Tgl_Cetak");
let cetak = new Printer(this.PHP + '/print_barang')
.addParam("SupID")
.addParam("Grup_InvID")
.addParam("Grup_MemberID")
.addParam("Tgl_Cetak");
if (prt) cetak.doPrint(); else cetak.doPreview();
FoniaJS.closeWindow(this.winDPrint);
},
+8 -2
View File
@@ -6,7 +6,7 @@
Description : Class umum untuk Aplikasi Invesa
Created By : Siau Pheng (siaupheng@3fonia.com).
Created Date : February 10th, 2012.
Last Modified : October 31st, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -18,7 +18,13 @@ namespace App\Utils;
final class Invesa {
public const ppn = [ 0=>"Tanpa PPN", 1=>"PPN", 3=>"Spesial 1", 4=>"Spesial 2", 5=>"Spesial 3" ];
public const ppn = [
1 => "PPN",
2 => "Spesial 1", //Non PPN
3 => "Spesial 2", //Sembako
4 => "Spesial 3", //Rokok Legal
5 => "Spesial 4", //Rokok Ilegal
];
public const old_printer = [ "TM-U220" ];
public function __construct() {
+4 -3
View File
@@ -11,7 +11,7 @@ use Webapp\Data\Cache;
/**
* Generate all js app cache for all user
*
* Usage: php runway user:cache
* Usage: php runway caches
*
*/
@@ -21,7 +21,7 @@ class CacheCommand extends AbstractBaseCommand {
* @param array<string,mixed> $config From .runway-config.json
*/
public function __construct(array $config) {
parent::__construct('user:cache', 'Generate all js app cache for all user', $config);
parent::__construct('caches', 'Generate all js app cache for all user', $config);
}
/**
@@ -35,9 +35,10 @@ class CacheCommand extends AbstractBaseCommand {
$asset = require($this->projectRoot . '/app/config/asset.php');
$cache = new Cache($app);
$cache->set_dev($config->env() === 'development');
$cache->set_asset($asset);
$ares = $cache->Make_Cache();
if (is_array($ares)) $io->info("Processed of {$ares['user_count']} user.", true);
if (is_array($ares)) $io->white(implode("\n", $ares['log']), true);
$io->ok("Done.", true);
}
+2 -2
View File
@@ -11,7 +11,7 @@ use flight\commands\AbstractBaseCommand;
/**
* Check Status of PPOB Transaction from Server
*
* Usage: php runway ppob:check
* Usage: php runway ppob-check
*
*/
@@ -21,7 +21,7 @@ class PPOBCommand extends AbstractBaseCommand {
* @param array<string,mixed> $config From .runway-config.json
*/
public function __construct(array $config) {
parent::__construct('ppob:check', 'Check Status of PPOB Transaction from Server', $config);
parent::__construct('ppob-check', 'Check Status of PPOB Transaction from Server', $config);
}
/**
+2 -2
View File
@@ -11,7 +11,7 @@ use flight\commands\AbstractBaseCommand;
/**
* Generate join all product parameter on single table
*
* Usage: php runway produk:join
* Usage: php runway produk-join
*
*/
@@ -21,7 +21,7 @@ class ProdukCommand extends AbstractBaseCommand {
* @param array<string,mixed> $config From .runway-config.json
*/
public function __construct(array $config) {
parent::__construct('produk:join', 'Generate join all product parameter on single table', $config);
parent::__construct('produk-join', 'Generate join all product parameter on single table', $config);
}
/**
+9 -4
View File
@@ -5,7 +5,7 @@
Desc. : Loading Routing Setup
Created By : Siau Pheng (siaupheng@3fonia.com).
Created Date : November 23rd, 2019.
Last Modified : October 21st, 2026.
Last Modified : November 4th, 2026.
(c) 3FONIA Software; WWW.3FONIA.COM.
@@ -124,14 +124,19 @@ $router->group('', function(Router $router) use ($app, $session, $config) {
// handle Cache css & js for application
$router->get('/cache/@filename', function($filename) use ($app) {
$rootdir = (defined('PROJECT_ROOT')) ? PROJECT_ROOT : $app->get('app.project_root');
$rootdir = (defined('PROJECT_ROOT')) ? constant('PROJECT_ROOT') : $app->get('app.project_root');
$filePath = $rootdir . '/temp/cache/' . $filename;
if (file_exists($filePath) && !str_contains($filename, '..')) {
$mimeType = 'application/octet-stream';
if (str_ends_with($filePath, '.js')) $mimeType = 'application/javascript';
if (str_ends_with($filePath, '.css')) $mimeType = 'text/css';
$app->response()->header('Content-Type', $mimeType);
echo file_get_contents($filePath);
$app->response()->header('Content-Type', $mimeType.'; charset=utf-8');
$app->response()->header('Cache-Control', 'public, max-age=864000');
$app->response()->header('Pragma', 'cache');
if (function_exists('gzencode') && str_contains($_SERVER['HTTP_ACCEPT_ENCODING'] ?? '', 'gzip')) {
$app->response()->header('Content-Encoding', 'gzip');
echo gzencode(file_get_contents($filePath), 9);
} else echo file_get_contents($filePath);
} else {
$app->notFound();
}