80 lines
2.9 KiB
PHP
80 lines
2.9 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Http;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Maatwebsite\Excel\Facades\Excel;
|
|
use App\Models\Sps_pendapatan;
|
|
|
|
class JadwalSalurdanaController extends Controller
|
|
{
|
|
public function __construct(){
|
|
$this->siteTitle = "DBH Jadwal Salur Dana";
|
|
parent::__construct();
|
|
}
|
|
|
|
public function index()
|
|
{
|
|
return view('jadwal_salurdana.index')
|
|
->with('i', (request()->input('page', 1) - 1) * 10);
|
|
}
|
|
|
|
public function datatable(Request $request)
|
|
{
|
|
$post = $request->all();
|
|
$offset = $post["start"];
|
|
$limit = $post["length"];
|
|
$src = $post["src"];
|
|
$ta = $post["ta"];
|
|
|
|
$dataFilter=0;
|
|
$data = DB::select(DB::raw('SELECT
|
|
kode_rekening,nama_rekening,spsbulan1,spsbulan2,spsbulan3,spsbulan4,
|
|
spsbulan5,spsbulan6,spsbulan7,spsbulan8,spsbulan9,spsbulan10,spsbulan11,spsbulan12,
|
|
SUBSTR(KODE_REKENING,1,12) AS kodegrup,SUBSTR(KODE_REKENING,1,9) AS groupall,
|
|
NVL("1",0) AS "REAL1",NVL("2",0) AS "REAL2",NVL("3",0) AS "REAL3",
|
|
NVL("4",0) AS "REAL4",NVL("5",0) AS "REAL5",NVL("6",0) AS "REAL6",
|
|
NVL("7",0) AS "REAL7",NVL("8",0) AS "REAL8",NVL("9",0) AS "REAL9",
|
|
NVL("10",0) AS "REAL10",NVL("11",0) AS "REAL11",NVL("12",0) AS "REAL12"
|
|
FROM PROKSI.SPS_PENDAPATAN x
|
|
LEFT JOIN
|
|
(
|
|
SELECT * FROM (
|
|
SELECT ID_SPS,extract(month from RKUD_TGL) AS BULAN,RKUD_JUMLAH
|
|
FROM SAMASA.DBH_PENDAPATAN_REALISASI
|
|
WHERE TAHUN=\''.$ta.'\'
|
|
)
|
|
PIVOT
|
|
(
|
|
SUM(RKUD_JUMLAH)
|
|
FOR BULAN IN(1,2,3,4,5,6,7,8,9,10,11,12)
|
|
)
|
|
)y ON x.ID = y.ID_SPS
|
|
WHERE x.TAHUN = '.$ta.' AND x.SKPD_ID=980 AND SUBSTR(x.KODE_REKENING,1,3)=\'4.2\'
|
|
ORDER BY kode_rekening'));
|
|
// var_dump($data); exit;
|
|
// ->where("SKPD_ID",980)
|
|
// ->where("TAHUN",$ta)
|
|
// ->whereRaw("SUBSTR(KODE_REKENING,1,3)='4.2'");
|
|
if (!empty($src)){
|
|
$data->whereRaw("(LOWER(NAMA_REKENING) LIKE '%".strtolower($src)."%' OR LOWER(KODE_REKENING) LIKE '%".strtolower($src)."%')");
|
|
}
|
|
$dataFilter = count($data);
|
|
|
|
$dataTotal = Sps_pendapatan::where("SKPD_ID",980)
|
|
->where("TAHUN",$ta)
|
|
->whereRaw("SUBSTR(KODE_REKENING,1,3)='4.2'")
|
|
->count();
|
|
|
|
return response()->json([
|
|
"recordsTotal" => $dataTotal,
|
|
"recordsFiltered" => $dataFilter,
|
|
"data"=> $data
|
|
]);
|
|
}
|
|
|
|
}
|