repo penerimaan pos: penambahan pengeluaran kas

This commit is contained in:
2026-02-12 16:15:22 +07:00
parent d58e8d5409
commit 3f3f74a5b4
3 changed files with 66 additions and 47 deletions
+18 -24
View File
@@ -4,9 +4,9 @@
Desc. : JS - Informasi Aplikasi
Created By : Siau Pheng ([email protected]).
Created Date : November 23th, 2011.
Last Modified : May 1st, 2022.
Last Modified : February 12th, 2026.
(c) 2011 - 2022, 3FONIA Software; WWW.3FONIA.COM.
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
@@ -19,40 +19,34 @@ var AboutJS = {
},
proses_checkdb: function(){
new Request({
new Request.JSON({
url: this.PHP,
sendParam: ['data=check_db'],
onSuccess: function(txt){
this.winCheck = FoniaJS.showWindow('CekDB', 'Cek, Perbaiki dan Optimalisasi Database', txt, 500, [{},{i:'butTutup'},{i:'butWProses',v:'Proses DB !',c:'success'}], function(){
$('#winCekDB').find('#butWProses').click(function(){this.checkdb_run();}.bind(this));
}.bind(this));
}.bind(this)
onSuccess: (ajson) => {
this.winCheck = FoniaJS.showWindow('CekDB', 'Cek, Perbaiki dan Optimalisasi Database', ajson.html, 500, [{},{i:'butTutup'},{i:'butWProses',v:'Proses DB !',c:'success'}], () => $('#winCekDB').find('#butWProses').click(() => this.checkdb_run()));
}
}).send();
},
proses_update: function(){
new Request({
new Request.JSON({
url: this.PHP,
sendParam: ['data=check_update'],
onSuccess: function(txt){
this.winUpdate = FoniaJS.showWindow('CekApp', 'Cek dan Update Aplikasi', txt, 500, [{},{i:'butTutup'},{i:'butWUpdate',v:'Proses Update !',c:'success'}], function(){
$('#winCekApp').find('#butWUpdate').click(function(){this.update_run();}.bind(this));
var tomb = $('#winCekApp').find('#butWUpdate');
if ($('#file_online').val()==1){
tomb.prop('disabled', false);
} else {
tomb.html('Telah Update!').prop('disabled', true);
onSuccess: (ajson) => {
var tomb = [{},{i:'butTutup'},{i:'butWUpdate',v:'Proses Update !',c:'success'}];
if (ajson.is_update) tomb.pop();
this.winUpdate = FoniaJS.showWindow('CekApp', 'Cek dan Update Aplikasi', ajson.html, 500, tomb, () => {
$('#winCekApp').find('#butWUpdate').click(() => this.update_run());
});
}
}.bind(this));
}.bind(this)
}).send();
},
checkdb_run: function(){
new Request({
new Request.JSON({
url: this.PHP,
sendParam: ['data=proses_db','DB_Cek','DB_Repair','DB_Opti'],
onSuccess: function(txt){
onSuccess: (ajson) => {
if ($('#DB_Hasil')) $('#DB_Hasil').removeClass('d-none').html(txt);
FoniaJS.showInfo('Proses Database selesai', 2000);
}
@@ -64,10 +58,10 @@ var AboutJS = {
if ($('#file_online').val()==1){
new Request.JSON({
url: this.PHP,
sendParam: ['data=proses_update','file_web','file_sql','file_build'],
onSuccess: function(adata){
sendParam: ['data=proses_update','new_sha1','new_sha1'],
onSuccess: (adata) => {
if (adata.sukses==true) {
FoniaJS.showInfo('Aplikasi telah di Update.<br>Silakan Log Out dari Aplikasi<br>Lalu refresh browser Anda!');
FoniaJS.showInfo('Aplikasi telah di Update.<br>Silakan refresh browser Anda!');
} else {
FoniaJS.showInfo('Aplikasi gagal di Update.');
}
+12 -1
View File
@@ -84,7 +84,7 @@ if ( $data == "print-pos" ) {
$pre->add("Nama : ".$ainfo['Nama_User']);
$pre->add_empty();
$pre->add(array("Jumlah Penjualan Rp.",24), array(rupiah($tot_jual-$tot_diskon),16,"R"));
//$pre->add(array("Jumlah Pulsa & PPOB Rp.",24), array(rupiah($tot_pulsa),16,"R"));
//$pre->add(array("Jumlah PPOB Rp.",24), array(rupiah($tot_pulsa),16,"R"));
$pre->add(array("Jumlah Diskon Rp.",24), array(rupiah($tot_diskon),16,"R"));
if ($tot_potong>0) $pre->add(array("Jumlah Promo Rp.",24), array(rupiah($tot_potong),16,"R"));
$pre->add_line("-");
@@ -95,6 +95,17 @@ if ( $data == "print-pos" ) {
$pre->add_line("-");
}
$pre->add(array("TOTAL PENERIMAAN Rp.",24), array(rupiah($tot_dana),16,"R"));
// pengeluaran kas
$db->Query("SELECT K.*,P.Kode_TX FROM (SELECT * FROM gel_kas WHERE (Tgl_Kas BETWEEN '".$tglfrom."' AND '".$tglto."') AND Tipe_Kas='O'".$tsql." ORDER BY No_Kas) K LEFT JOIN para_tx_kas P ON (P.TXID=K.TXID) ORDER BY K.No_Kas");
if ($db->RecordCount()>0) {
$pre->add_empty();
$pre->addc("PENGELUARAN KAS");
}
while ($db->Next()) {
$pre->add([$db->Row("Kode_TX"),20], ["Rp.",4,"R"], [rupiah($db->Row("Jumlah")),16,"R"]);
$pre->add($db->Row("Ket"));
}
$pre->add_line("=");
$pre->add_stamp(1, true);
$pre->add_empty($_SESSION['__APP_INV']['PRINT_ROW']);
+35 -21
View File
@@ -6,9 +6,9 @@
Desc. : PHP - Informasi Aplikasi
Created By : Siau Pheng ([email protected]).
Created Date : November 23th, 2011.
Last Modified : September 30th, 2025.
Last Modified : February 12th, 2026.
(c) 2011 - 2025, 3FONIA Software; WWW.3FONIA.COM.
(c) 2011 - 2026, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
@@ -23,43 +23,58 @@ use siaupheng\fonia3\Web\Register;
use siaupheng\fonia3\Web\Update;
$db = $db ?? new MySQL();
$ajson = array();
$ajson = [];
$data = Param::Get("data");
$mode = Param::Get("mode");
$cpd = new Update($db);
if ( $data == "check_update") {
$ainfo = $cpd->check_update();
echo '<table width="100%">
<tr><td>Versi Sekarang</td><td>:</td><td>'.$ainfo['build_cur'].'</td></tr>
<tr><td>Versi Update</td><td>:</td><td>'.$ainfo['build_new'].'</td></tr>
<tr><td>Status Update</td><td>:</td><td>'.$ainfo['svr_status'].'</td></tr>
<input type="hidden" id="file_build" value="'.$ainfo['build_new'].'">
<input type="hidden" id="file_online" value="'.(($ainfo['build_new']>$ainfo['build_cur'])?1:0).'">
<input type="hidden" id="file_web" value="'.$ainfo['file_web'].'">
<input type="hidden" id="file_sql" value="'.$ainfo['file_sql'].'">
</table>';
$ajson['is_update'] = $ainfo['cur_sha1'] == $ainfo['new_sha1'];
$ajson['html'] = '
<div class="row">
<div class="col-sm-4 col-lg-4 col-form-label">Versi Aplikasi</div>
<div class="col col-form-label"><span class="form-control">'.$ainfo['cur_version'].'</span></div>
</div>
<div class="row">
<div class="col-sm-4 col-lg-4 col-form-label">Versi Sekarang</div>
<div class="col col-form-label"><span class="form-control"><strong>'.$ainfo['cur_sha'].'</strong> '.$ainfo['cur_date'].'</span></div>
</div>
<div class="row"><div class="col"><hr class="my-1"></div></div>
<div class="row">
<div class="col-sm-4 col-lg-4 col-form-label">Versi Update</div>
<div class="col col-form-label"><span class="form-control"><strong>'.$ainfo['new_sha'].'</strong> '.$ainfo['new_date'].'</span></div>
</div>
<div class="row">
<div class="col-sm-4 col-lg-4 col-form-label">Info Update</div>
<div class="col col-form-label"><span class="form-control">'.$ainfo['new_message'].'</span></div>
</div>
<div class="row">
<div class="col-sm-4 col-lg-4 col-form-label">Status Update</div>
<div class="col">
<span class="form-control text-'.($ainfo['svr_status']==1?'success border-primary':'warning border-danger').'">'.$ainfo['svr_message'].'</span>
</div>
</div>';
} else if ( $data == "proses_update") {
$ajson['sukses'] = $cpd->go_update(Param::Get("file_web"), Param::Get("file_build"));
if ($ajson['sukses']==true && Param::Get("file_sql","")!=="") $cpd->update_mysql(Param::Get("file_sql"));
$ajson['sukses'] = $cpd->go_update(Param::Get("new_sha1"), Param::Get("new_date"));
} else if ( $data == "check_db") {
$form = new Form($db);
$t_cek = $form->checkbox("_", "DB_Cek", 1, true, false, [1,0]);
$t_repa = $form->checkbox("_", "DB_Repair", 0, true, false, [1,0]);
$t_opti = $form->checkbox("_", "DB_Opti", 0, true, false, [1,0]);
$form->show('
$ajson['html'] = '
<div class="row mb-4">
<div class="col-12"><div class="input-group">'.$t_cek.'<label for="DB_Cek">Cek Database</label></div><label class="small" for="DB_Cek">Proses Cek ini otomatis memperbaiki tabel yang bermasalah, jika ditemukan.</label></div>
<div class="col-12"><div class="input-group">'.$t_cek.'<label class="ms-2" for="DB_Cek">Cek Database</label></div><label class="small" for="DB_Cek">Proses Cek ini otomatis memperbaiki tabel yang bermasalah, jika ditemukan.</label></div>
</div>
<div class="row mb-4">
<div class="col-12"><div class="input-group">'.$t_repa.'<label for="DB_Repair">Perbaiki Database</label></div><label class="small" for="DB_Repair">Proses Perbaiki akan memperbaiki semua tabel yang bermasalah.</label></div>
<div class="col-12"><div class="input-group">'.$t_repa.'<label class="ms-2" for="DB_Repair">Perbaiki Database</label></div><label class="small" for="DB_Repair">Proses Perbaiki akan memperbaiki semua tabel yang bermasalah.</label></div>
</div>
<div class="row mb-1">
<div class="col-12"><div class="input-group">'.$t_opti.'<label for="DB_Opti">Optimalisasi Database</label></div><label class="small" for="DB_Opti">Proses Optimalisasi ini otomatis merapikan database, merampingkan database dari record data yang telah dihapus.</label></div>
<div class="col-12"><div class="input-group">'.$t_opti.'<label class="ms-2" for="DB_Opti">Optimalisasi Database</label></div><label class="small" for="DB_Opti">Proses Optimalisasi ini otomatis merapikan database, merampingkan database dari record data yang telah dihapus.</label></div>
</div>
<div class="d-none" id="DB_Hasil">&nbsp;</div>');
<div class="d-none" id="DB_Hasil">&nbsp;</div>';
} else if ( $data == "proses_db") {
$chk = new CheckSQL($db);
@@ -80,7 +95,7 @@ if ( $data == "check_update") {
} else if ( $data == "default") {
$apps = $_SESSION['__WEB_APP'];
$apps['CREATOR_YEAR'] = ($apps['CREATOR_YEAR']!=date('Y')) ? $apps['CREATOR_YEAR']." - ".date('Y') : $apps['CREATOR_YEAR'];
$hasil = '<div>
echo '<div>
<ul class="nav nav-tabs" role="tablist">
<li class="nav-item" role="presentation">
<button class="nav-link active" id="about-tab" data-bs-toggle="tab" data-bs-target="#about" type="button" role="tab" aria-controls="about" aria-selected="true">Tentang Aplikasi</button>
@@ -118,7 +133,6 @@ if ( $data == "check_update") {
</div>
</div>
</div>';
echo $hasil;
}
send_json($ajson);