You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

271 lines
8.7 KiB
PHP

<?php
use NN\files;
use NN\Post;
use NN\Session;
use NN\Module\DB;
use NN\Module\DD;
use NN\Module\Help;
use NN\Module\Datatable;
use NN\Link;
use NN\Enc;
use NN\module\View;
class Api{
public static function datakartukekayaan($kode){
$kode = base64_decode($kode);
// echo $kode;
// die();
$pjlist = [
["id"=>"REG","text"=>"USP Reguler"],["id"=>"KHUSUS","text"=>"USP KHUSUS"],["id"=>"USP1","text"=>"USP 1 (Pembiayaan Elektronik)"],["id"=>"USP2","text"=>"USP 2 (Pembiayaan Sepeda Motor)"],["id"=>"USP3","text"=>"USP 3 (Pembiayaan Haji/ Umroh)"],["id"=>"NON","text"=>"PINJAMAN ANGGOTA NON GAJI"]
];
$thn = [
["id"=>"01","text"=>"Januari"],
["id"=>"02","text"=>"Februari"],
["id"=>"03","text"=>"Maret"],
["id"=>"04","text"=>"April"],
["id"=>"05","text"=>"Mei"],
["id"=>"06","text"=>"Juni"],
["id"=>"07","text"=>"Juli"],
["id"=>"08","text"=>"Agustus"],
["id"=>"09","text"=>"September"],
["id"=>"10","text"=>"Oktober"],
["id"=>"11","text"=>"November"],
["id"=>"12","text"=>"Desember"]
];
$user = DB::query_result_object_row("SELECT
a.nama
, a.kode
, a.prima
, a.telp
, b.lokasi unitkerja
FROM anggota a
LEFT JOIN munitkerja b ON b.kode = a.unitkerja
WHERE
a.kode = '$kode' ");
$jp = [["id"=>"REG","text"=>"USP Reguler"],["id"=>"KHUSUS","text"=>"USP KHUSUS"],["id"=>"USP1","text"=>"USP 1 (Pembiayaan Elektronik)"],["id"=>"USP2","text"=>"USP 2 (Pembiayaan Sepeda Motor)"],["id"=>"USP3","text"=>"USP 3 (Pembiayaan Haji/ Umroh)"],["id"=>"NON","text"=>"PINJAMAN ANGGOTA NON GAJI"]];
$ds = [];
$xx = [];
$xx['th'] = '00';
$xx['pokok'] = 0;
$xx['wajib'] = 0;
$xx['manasuka'] = 0;
$xx['wp'] = 0;
$xx['jml1'] = 0;
$xx['reguler'] = 0;
$xx['khusus'] = 0;
$xx['usp1'] = 0;
$xx['usp2'] = 0;
$xx['usp3'] = 0;
$xx['konsumsi'] = 0;
$ds[] = $xx;
foreach ($thn as $key => $th) {
$th = (object) $th;
$sm = DB::query_result_object_row("
SELECT ifnull((
SELECT sum(jumlah) total FROM
msimpan WHERE kodesp = 'SM' AND tgl LIKE '2023-$th->id%' AND kode = '$kode')
,0) total
")->total;
$sp = DB::query_result_object_row("
SELECT ifnull((
SELECT sum(jumlah) total FROM
msimpan WHERE kodesp = 'SP' AND tgl LIKE '2023-$th->id%' AND kode = '$kode')
,0) total
")->total;
$sw = DB::query_result_object_row("
SELECT ifnull((
SELECT sum(jumlah) total FROM
msimpan WHERE kodesp = 'SW' AND tgl LIKE '2023-$th->id%' AND kode = '$kode')
,0) total
")->total;
$swp = DB::query_result_object_row("
SELECT ifnull((
SELECT sum(jumlah) total FROM
msimpan WHERE kodesp = 'SWP' AND tgl LIKE '2023-$th->id%' AND kode = '0314')
,0) total
")->total;
$xx = [];
$xx['th'] = $th->id;
$xx['pokok'] = $sp + 0;
$xx['wajib'] = $sw + 0;
$xx['manasuka'] = $sm + 0;
$xx['wp'] = $swp + 0;
$xx['jml1'] = $sp + $sw + $sm + $swp;
$xx['reguler'] = 0;
$xx['khusus'] = 0;
$xx['usp1'] = 0;
$xx['usp2'] = 0;
$xx['usp3'] = 0;
$xx['konsumsi'] = 0;
$ds[] = $xx;
}
$data = [
"no" => $user->prima + 0,
"noinduk" => $user->kode,
"nama" => $user->nama,
"unitkerja" => $user->unitkerja,
"telp" => $user->telp,
"th" => date('Y', strtotime($user->telp)),
"data" => $ds,
];
if(count($_POST) == 0){
DD::view($data);
}else{
echo json_encode($data);
}
}
public static function master(){
if(isset($_POST['data'])){
$data = $_POST['data'];
$v = [];
$v['thn'] = [
["id"=>"01","text"=>"Januari"],
["id"=>"02","text"=>"Februari"],
["id"=>"03","text"=>"Maret"],
["id"=>"04","text"=>"April"],
["id"=>"05","text"=>"Mei"],
["id"=>"06","text"=>"Juni"],
["id"=>"07","text"=>"Juli"],
["id"=>"08","text"=>"Agustus"],
["id"=>"09","text"=>"September"],
["id"=>"10","text"=>"Oktober"],
["id"=>"11","text"=>"November"],
["id"=>"12","text"=>"Desember"]
];
foreach($data as $d){
$d = (object) $d;
if($d->table != "thn"){
$v[$d->table] = DB::query_result_object("SELECT $d->select FROM $d->table");
}
}
echo json_encode($v);
}else{
echo json_encode([]);
}
}
public static function kartupiutang($faktur){
View::render('admin/laporan/kartupiutang',['fkt'=> $faktur ]);
}
public static function kartukekayaan($faktur=""){
View::render('admin/laporan/kartukekayaan',['fkt'=> $faktur ]);
}
public static function connection(){
$kode = "0000001238";
if(isset($_POST["kode"])){
$kode = $_POST["kode"];
}
$data = [
[
"table" => "mags"
,"kode" => "kode"
]
];
if(isset($_POST["data"])){
$data = $_POST["data"];
}
$counter = 0;
$datas = [];
foreach ($data as $key => $value) {
$vv = (object) $value;
$c = DB::query_result_object_row("SELECT ifnull((SELECT count(*) tot FROM $vv->table WHERE $vv->kode =\"$kode\"),0) tot ")->tot;
$counter += $c;
$datas[$vv->table] = $c+0;
}
if(count($_POST) == 0){
DD::view([
"counter" => $counter,
"data" => $datas
]);
}else{
echo json_encode([
"counter" => $counter,
"data" => $datas
]);
}
}
public static function kekayaan(){
ini_set('display_errors', 1);
$tahun = null;
if(!isset($_POST['tahun'])){
$tahun = date('Y');
}else{
$tahun = $_POST['tahun'];
}
$simpan = DB::query_result_assoc("SELECT kode, kodesp, lpad(month(tgl),2,0) `month`, jumlah total
FROM msimpan
WHERE tgl LIKE '$tahun%'
GROUP BY kodesp, kode, month(tgl)");
$totsimpan = DB::query_result_assoc("SELECT kode, kodesp, lpad(month(tgl),2,0) `month`, sum(jumlah) total
FROM msimpan
WHERE tgl LIKE '$tahun%'
GROUP BY kodesp, month(tgl)");
$berjalan = DB::query_result_assoc("SELECT kode, kodesp, sum(jumlah) total
FROM msimpan
WHERE tgl LIKE '$tahun%'
GROUP BY kodesp, kode");
$totberjalan = DB::query_result_assoc("SELECT kode, kodesp, sum(jumlah) total
FROM msimpan
WHERE tgl LIKE '$tahun%'
GROUP BY kodesp");
$awal = DB::query_result_assoc("SELECT kode, kodesp, sum(jumlah) total
FROM msimpan
WHERE tgl < '$tahun-01-01'
GROUP BY kodesp, kode");
$totawal = DB::query_result_assoc("SELECT kode, kodesp, sum(jumlah) total
FROM msimpan
WHERE tgl < '$tahun-01-01'
GROUP BY kodesp");
$akhir = DB::query_result_assoc("SELECT kode, kodesp, sum(jumlah) total
FROM msimpan
WHERE tgl <= '".date('Y-m-t', strtotime($tahun."-12-01"))."'
GROUP BY kodesp, kode");
$totakhir = DB::query_result_assoc("SELECT kode, kodesp, sum(jumlah) total
FROM msimpan
WHERE tgl <= '".date('Y-m-t', strtotime($tahun."-12-01"))."'
GROUP BY kodesp");
$data = [
"simpanan" => [
"totawal" => $totawal,
"awal" => $awal,
"totberjalan" => $totberjalan,
"berjalan" => $berjalan,
"bulanan" => $simpan,
"totbulanan" => $totsimpan,
"akhir" => $akhir,
"totakhir" => $totakhir
]
];
if(count($_POST) == 0){
DD::view($data);
}else{
echo json_encode($data);
}
}
}