130 lines
6.3 KiB
PHP
130 lines
6.3 KiB
PHP
<?php
|
|
|
|
/*******************************************************************
|
|
|
|
App. Name : Inventory Advanced Systems
|
|
Module : /apps/php/ias/jual_lunas_sales.php
|
|
Desc. : PHP - Transaksi Pelunasan Sales
|
|
Created By : Siau Pheng ([email protected]).
|
|
Created Date : March 29th, 2012.
|
|
Last Modified : October 29th, 2023.
|
|
|
|
(c) 2012 - 2023, 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", "view");
|
|
$mode_detail = Param::Get("mode_detail");
|
|
$id_sales = Param::Get("SalesID", 0);
|
|
|
|
if ( $data == "master" ) {
|
|
$ajson = ['error'=>"", 'html'=>""];
|
|
$atabel = ['PegID'=>$id_sales,'Alamat_Pegawai'=>"Tanpa Alamat Sales",'Tgl_Bayar'=>"0000-00-00"];
|
|
|
|
if ($id_sales > 0) {
|
|
$db->Query("SELECT * FROM para_pegawai WHERE PegID='".$id_sales."'");
|
|
if (!$db->Next()) {
|
|
$ajson['error'] = "Nomor Transaksi belum ada / tidak diketemukan !";
|
|
} else $atabel = array_merge($atabel, $db->AllRow());
|
|
}
|
|
|
|
$form = new Form($db);
|
|
$tsales = $form->option_db("_", "SalesID", $atabel['PegID'], true, false, "para_pegawai", ["PegID","Nama_Pegawai"], "Jenis_PegID='".$_SESSION['__APP_IAS']['GRUP_PEG_SALES']."' ORDER BY Nama_Pegawai", [0,"Tanpa Nama Sales"], null, "JualLunasSalesJS.data_query('master');");
|
|
$ttglbayar = $form->datebox("_", "Tgl_Bayar", $atabel['Tgl_Bayar'], true, false);
|
|
$tsalesal = $form->textarea("_", "Alamat_Pegawai", $atabel['Alamat_Pegawai'], false, false, 2);
|
|
$ajson['html'] = '
|
|
<div class="row">
|
|
<div class="col-sm-12 col-lg-6">
|
|
<div class="row mb-1">
|
|
<label class="col-sm-5 col-lg-3 col-form-label" for="SalesID">Nama Sales</label>
|
|
<div class="col">'.$tsales.'</div>
|
|
</div>
|
|
<div class="row mb-1">
|
|
<label class="col-sm-5 col-lg-3 col-form-label" for="Tgl_Bayar">Tanggal Bayar</label>
|
|
<div class="col-sm-7 col-lg-5">'.$ttglbayar.'</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-12 col-lg-6">
|
|
<div class="row mb-1">
|
|
<label class="col-sm-5 col-lg-3 col-form-label">Alamat Sales</label>
|
|
<div class="col">'.$tsalesal.'</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row mb-1"><div class="col"><hr class="my-1"></div></div>
|
|
';
|
|
|
|
} else if ( $data == "tabel-detail" ) {
|
|
if ( $mode == "bayar" ) {
|
|
$tgl_bayar = tgl_sql2str(Param::Get("Tgl_Bayar"));
|
|
$alist = Param::Get_ArrayCBOX();
|
|
foreach ($alist as $_key => $_val) {
|
|
if ($_val=="Y") {
|
|
$anota = ['Jumlah'=>0, 'Rekap'=>0];
|
|
$db->Query("SELECT (Total_Jual-Total_Diskon-Total_Potong) Jumlah,Rekap FROM inv_jual WHERE No_Jual='".$_key."'");
|
|
if ($db->Next()) $anota = $db->AllRow();
|
|
$db->Query("INSERT INTO inv_jual_lunas (No_Jual,Tgl_Bayar,Tipe,Total_Bayar,UserID) VALUES ('".$_key."','".$tgl_bayar."','1','".$anota['Jumlah']."','".user_id()."')");
|
|
$db->Query("UPDATE inv_jual SET Tgl_Lunas='".$tgl_bayar."',Total_Bayar='".$anota['Jumlah']."',Lunas=1 WHERE No_Jual='".$_key."' LIMIT 1");
|
|
|
|
if ($anota['Rekap']==0) {
|
|
$db->Query("UPDATE inv_jual SET Rekap=1 WHERE No_Jual='".$_key."' LIMIT 1");
|
|
scs_update_jual($_key, true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
$obj = new Table($db);
|
|
$obj->set_query("SELECT J.*,O.Nama_Alamat,'N' Pilih FROM (SELECT OutletID,No_Jual,Tgl_Jual,Tgl_JT,Total_Jual-Total_Diskon Total_Faktur,Total_Bayar+Total_Potong Total_Bayar,Total_Jual-Total_Diskon-Total_Bayar-Total_Potong Total_Sisa,CK FROM inv_jual WHERE Lunas=0 AND No_DO<>'' AND SalesID='".$id_sales."') J LEFT JOIN vi_para_outlet O ON (J.OutletID=O.OutletID)");
|
|
$obj->set_query_footer("SELECT SUM(Total_Jual-Total_Diskon) Total_Faktur,SUM(Total_Bayar+Total_Potong) Total_Bayar,SUM(Total_Jual-Total_Diskon-Total_Bayar-Total_Potong) Total_Sisa FROM inv_jual WHERE Lunas=0 AND No_DO<>'' AND SalesID='".$id_sales."'");
|
|
$obj->add_field("No_Jual", "No. Trans", "c");
|
|
$obj->add_field("Tgl_Jual", "Tgl. Jual", "c", "sqltgl", null, "val-tgl");
|
|
$obj->add_field("Tgl_JT", "Jatuh Tempo", "c", "sqltgl", null, "val-tgl");
|
|
$obj->add_field("Nama_Alamat", "Nama Outlet", "awr");
|
|
$obj->add_field("Total_Faktur", "Faktur", "r", "rupiah", "rupiah");
|
|
$obj->add_field("Total_Bayar", "Bayar", "r", "rupiah", "rupiah");
|
|
$obj->add_field("Total_Sisa", "Sisa", "r", "rupiah", "rupiah");
|
|
$obj->add_field("CK", "C/K", "c");
|
|
$obj->set_field_order("No_Jual", "A");
|
|
$obj->add_row_checkbox("No_Jual", "Pilih", ["Y","N"]);
|
|
$obj->set_func_navi("JualLunasSalesJS.data_query('tabel-detail')");
|
|
$ajson[] = $obj->json_table("divDetailTabel");
|
|
|
|
} else if ( $data == "default") {
|
|
echo '
|
|
<div class="fade-in">
|
|
<div class="card"><div class="card-body">
|
|
<ul class="nav nav-tabs" role="tablist">
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link active" id="tx-tab" data-bs-toggle="tab" data-bs-target="#tx" type="button" role="tab" aria-controls="tx" aria-selected="true"><i class="bi-database me-2"></i>Transaksi Pelunasan Penjualan via Tagihan Penjualan</button>
|
|
</li>
|
|
<li class="nav-item ms-auto">
|
|
<button class="btn btn-danger mb-1 ms-2" id="butBatal" type="button"><i class="bi-x-lg me-2"></i>Batal</button>
|
|
<button class="btn btn-success mb-1 ms-2" id="butSimpan" type="button"><i class="bi-floppy me-2"></i>Simpan</button>
|
|
</li>
|
|
</ul>
|
|
<div class="tab-content border border-top-0 p-3">
|
|
<div class="tab-pane fade active show" id="tx" role="tabpanel" aria-labelledby="tx-tab">
|
|
<div id="divTXMaster"> </div>
|
|
<div id="divDetailTabel"> </div>
|
|
</div>
|
|
</div>
|
|
</div></div>
|
|
</div>';
|
|
}
|
|
|
|
send_json($ajson);
|
|
?>
|