update dau rinci (realisasi belanja)

This commit is contained in:
Marsa
2026-07-06 10:00:46 +07:00
parent b6dd0b04bc
commit fbc640485f
6 changed files with 483 additions and 300 deletions
@@ -51,10 +51,10 @@ class RealisasiBelanjaController extends Controller
abort(403, 'Tidak diperbolehkan menambah data oleh admin!');
}
$get = $request->all();
$rskExists = BelanjaRealisasi::where("tahun_anggaran",getTA())
->where("kode_skpd",Auth::user()->kode_skpd)
->where("kode_rsk", $get["rsk"])
->count();
$rskExists = BelanjaRealisasi::where("tahun_anggaran", getTA())
->where("kode_skpd", Auth::user()->kode_skpd)
->where("kode_rsk", $get["rsk"])
->count();
if ($rskExists > 0) {
return redirect(URL::to("/realisasi-belanja"))
->with('error', 'Data dengan RSK yang dipilih sudah ada!');
@@ -305,7 +305,7 @@ class RealisasiBelanjaController extends Controller
if ($BelanjaRealisasi->jenis_dana == "DBH" && $BelanjaRealisasi->nama_subjenis_dana != "CHT") {
$vwSPD = BelanjaRealisasi::getSPD($BelanjaRealisasi->kode_sub_kegiatan, $BelanjaRealisasi->id_skpd);
} else {
$vwSPD = BelanjaRealisasiSPD::where("id_rsk", $BelanjaRealisasi->kode_rsk)->get();
$vwSPD = BelanjaRealisasiSPD::where("id_rsk", $BelanjaRealisasi->kode_rsk)->get();
}
$vwSP2D = DB::select(
@@ -430,18 +430,34 @@ class RealisasiBelanjaController extends Controller
$dataFilter = DB::select(DB::raw("SELECT COUNT(ID) as JML FROM VW_BELANJA_REALISASI " . $this->tableFilter($request)));
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->count();
$sqlStr = "SELECT * FROM VW_DPA_RSK WHERE C_ANGG_TAHUN=" . getTA();
// $sqlStr = "SELECT * FROM VW_DPA_RSK WHERE C_ANGG_TAHUN=" . getTA();
if (getRole() == "skpd") {
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->whereRaw("KODE_SKPD='" . Auth::user()->nrk . "'")->count();
} elseif (getRole() == "sbpk") {
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->whereRaw("KODE_SKPD IN (SELECT C_OPD FROM NEWSIPKD.TROPD WHERE C_WIL_SP2DPROSES=" . Auth::user()->wilayah . ")");
$dataTotal = BelanjaRealisasi::where("tahun_anggaran", $ta)->whereRaw("KODE_SKPD IN (SELECT C_OPD FROM NEWSIPKD.TROPD WHERE C_WIL_SP2DPROSES=" . Auth::user()->wilayah . ")") - count();
}
$filterClause = $this->tableFilter($request);
$grandTotals = DB::select(DB::raw("
SELECT
NVL(SUM(JUMLAH_ANGGARAN),0) AS total_anggaran,
NVL(SUM(JUMLAH_REALISASI),0) AS total_realisasi
FROM VW_BELANJA_REALISASI
$filterClause
"));
$grandTotalAnggaran = !empty($grandTotals) ? $grandTotals[0]->total_anggaran : 0;
$grandTotalRealisasi = !empty($grandTotals) ? $grandTotals[0]->total_realisasi : 0;
$data = DB::select(DB::raw(BelanjaRealisasi::tableDataReport($ta, $this->tableFilter($request), $offset, $limit)));
return response()->json([
"recordsTotal" => $dataTotal,
"recordsFiltered" => $dataFilter[0]->jml,
"data" => $data
"data" => $data,
"grandTotalAnggaran" => $grandTotalAnggaran,
"grandTotalRealisasi" => $grandTotalRealisasi
]);
}
@@ -690,7 +706,7 @@ class RealisasiBelanjaController extends Controller
$semester = "";
$redirect = isset($req["redirect_link"]) ? $req["redirect_link"] : URL::to("/realisasi-belanja");
if ($req["type"] == "sms") {
$sms = (int)$req["sms"];
$sms = (int) $req["sms"];
if ($sms == 1) {
$semester = "SEMESTER 1";
$filter = " AND D_POSTING BETWEEN '" . $ta . "0101' AND '" . $ta . "0630' ";
@@ -714,7 +730,7 @@ class RealisasiBelanjaController extends Controller
$data["volume_satuan_realisasi"] = $req["vol_realisasi"];
$data["unit_satuan_realisasi"] = $req["unit_realisasi"];
// $data["periode_anggaran"] = $req["periode_anggaran"];
$data["semester"] = (int)$req["sms"];
$data["semester"] = (int) $req["sms"];
$data["created_by"] = Auth::user()->id;
BelanjaRealisasiDetail::create($data);
@@ -1092,7 +1108,7 @@ class RealisasiBelanjaController extends Controller
foreach ($arrCol as $key => $fieldVal) {
if (is_array($fieldVal)) {
foreach ($fieldVal as $rowfieldVal) {
$valNotNull = $val[$rowfieldVal] ? $val[$rowfieldVal] : 0;
$valNotNull = $val[$rowfieldVal] ? $val[$rowfieldVal] : 0;
$contentVal = str_contains($rowfieldVal, "volume_satuan_realisasi") ? $valNotNull . " " . $val["unit_satuan"] : $valNotNull;
$sheet->setCellValue(getAlphabetCell($i) . $rows, $contentVal);
$i++;