diff --git a/app/Http/Controllers/ItemSearchController.php b/app/Http/Controllers/ItemSearchController.php index 067ae56..b4ce83b 100644 --- a/app/Http/Controllers/ItemSearchController.php +++ b/app/Http/Controllers/ItemSearchController.php @@ -12,6 +12,8 @@ use App\Models\Sps_pendapatan; use App\Models\Siesetpembayaran; use App\Models\Sp2d; use App\Models\BelanjaRealisasi; +use App\Models\MstJenisBelanja; +use App\Models\MstSubJenisBelanja; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Auth; @@ -175,4 +177,18 @@ class ItemSearchController extends Controller $sp2d = Sp2d::where(["I_SP2DNO_DOK"=>$no_sp2d,"C_SP2D_SAH"=>1])->first(); return response()->json($sp2d); } + + public function jenisBelanja(Request $request) + { + $sk = []; + + if($request->has('q')){ + $search = $request->q; + $select = DB::raw("ID, NAME"); + $sk = MstJenisBelanja::select($select) + ->where('NAME', 'LIKE', "%$search%") + ->get(); + } + return response()->json($sk); + } } diff --git a/app/Http/Controllers/RealisasiBelanjaController.php b/app/Http/Controllers/RealisasiBelanjaController.php index ba75d8b..7c81023 100644 --- a/app/Http/Controllers/RealisasiBelanjaController.php +++ b/app/Http/Controllers/RealisasiBelanjaController.php @@ -8,6 +8,7 @@ use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Auth; use Maatwebsite\Excel\Facades\Excel; use App\Models\BelanjaRealisasi; +use App\Models\BelanjaRealisasiDetail; use App\Models\BelanjaRealisasiKontrak; use App\Models\BelanjaRealisasiBast; use App\Models\TempRealisasiBelanja; @@ -51,6 +52,7 @@ class RealisasiBelanjaController extends Controller public function submit(Request $request, $id) { $BelanjaRealisasi = BelanjaRealisasi::where("id", $id)->firstOrNew(); + $BelanjaRealisasiDetail = BelanjaRealisasiDetail::where("belanja_realisasi_id",$BelanjaRealisasi->id)->get(); // var_dump($BelanjaRealisasi->kode_rsk,$BelanjaRealisasi->kode_sub_kegiatan); exit; $this->setTitle("Realisasi Belanja"); $this->setSubtitle("Realisasi Belanja :: ".$BelanjaRealisasi->jenis_dana." ".$BelanjaRealisasi->sub_jenis_dana); @@ -62,28 +64,27 @@ class RealisasiBelanjaController extends Controller $BelanjaRealisasi->update($data); return redirect(URL::to("/realisasi-belanja/$id/submit"))->with('success','Data Realisasi Belanja berhasil di ubah!'); } - $vwAKB = VwAkbSpdRealRsk::where("I_IDRSK",$BelanjaRealisasi->kode_rsk)->firstorNew(); $BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where("belanja_realisasi_id",$id)->get(); - $vwSPD = DB::select(DB::raw( - "SELECT x.I_SPDNO_DOK, x.D_SPDNO, sum(z.V_SPP) AS JML - FROM NEWSIPKD.TMSPD x - LEFT JOIN NEWSIPKD.TMSPPRINCIBLJ y ON x.I_ID = y.I_IDSPD - LEFT JOIN NEWSIPKD.TMSPPRINCIBLJRSK z ON y.I_IDSPP = z.I_IDSPP - WHERE z.I_IDRSK=".$BelanjaRealisasi->kode_rsk."GROUP BY x.I_SPDNO_DOK, x.D_SPDNO ORDER BY x.D_SPDNO " - )); + // $vwSPD = DB::select(DB::raw( + // "SELECT x.I_SPDNO_DOK, x.D_SPDNO, sum(z.V_SPP) AS JML + // FROM NEWSIPKD.TMSPD x + // LEFT JOIN NEWSIPKD.TMSPPRINCIBLJ y ON x.I_ID = y.I_IDSPD + // LEFT JOIN NEWSIPKD.TMSPPRINCIBLJRSK z ON y.I_IDSPP = z.I_IDSPP + // WHERE z.I_IDRSK=".$BelanjaRealisasi->kode_rsk."GROUP BY x.I_SPDNO_DOK, x.D_SPDNO ORDER BY x.D_SPDNO " + // )); - $vwSP2D = DB::select(DB::raw('SELECT x.I_ID as IDSP2D, x.I_SP2DNO_DOK, - TO_CHAR(x.D_SP2D_SAH,\'DD-MM-YYYY\') AS D_SP2D_SAH, sum(y.V_SPP) as V_SPP - FROM NEWSIPKD.TMSP2D x - LEFT JOIN NEWSIPKD.V_SPPBLJRSK y - ON x.I_ID = y.I_IDSP2D - WHERE y.I_IDRSK='.$BelanjaRealisasi->kode_rsk.' GROUP BY x.I_ID, x.I_SP2DNO_DOK,x.D_SP2D_SAH ORDER BY x.D_SP2D_SAH ' ) - ); + // $vwSP2D = DB::select(DB::raw('SELECT x.I_ID as IDSP2D, x.I_SP2DNO_DOK, + // TO_CHAR(x.D_SP2D_SAH,\'DD-MM-YYYY\') AS D_SP2D_SAH, sum(y.V_SPP) as V_SPP + // FROM NEWSIPKD.TMSP2D x + // LEFT JOIN NEWSIPKD.V_SPPBLJRSK y + // ON x.I_ID = y.I_IDSP2D + // WHERE y.I_IDRSK='.$BelanjaRealisasi->kode_rsk.' GROUP BY x.I_ID, x.I_SP2DNO_DOK,x.D_SP2D_SAH ORDER BY x.D_SP2D_SAH ' ) + // ); $unitSatuan = UnitSatuan::orderBy("id")->get(); $jmlRealisasi = DB::select(DB::raw("SELECT sum(REALISASI) as jml FROM NEWSIPKD.VW_BKU_REALISASI_RSK WHERE IDRSK = ".$BelanjaRealisasi->kode_rsk)); $jmlRealisasi = $jmlRealisasi[0]->jml; - return view('realisasi_belanja.submit', compact("BelanjaRealisasi","BelanjaRealisasiKontrak","vwAKB","vwSPD","vwSP2D","unitSatuan","jmlRealisasi")); + return view('realisasi_belanja.submit', compact("BelanjaRealisasi","BelanjaRealisasiDetail","BelanjaRealisasiKontrak","vwAKB","unitSatuan","jmlRealisasi")); } public function datatable(Request $request) @@ -98,15 +99,8 @@ class RealisasiBelanjaController extends Controller $skpd = $post["skpd"]; $subkeg = $post["subkeg"]; - $sqlStr = "SELECT x.*,y.JML_REALISASI_SP2D + $sqlStr = "SELECT x.* FROM BELANJA_REALISASI x - LEFT JOIN ( - SELECT I_IDRSK,SUM(y.V_SPP) AS JML_REALISASI_SP2D - FROM NEWSIPKD.TMSP2D x - LEFT JOIN NEWSIPKD.TMSPPRINCIBLJRSK y - ON x.I_IDSPP = y.I_IDSPP - GROUP BY I_IDRSK - ) y ON x.KODE_RSK = y.I_IDRSK LEFT JOIN NEWSIPKD.TROPD z ON x.KODE_SKPD = z.C_OPD WHERE x.tahun_anggaran='$ta'"; @@ -298,21 +292,55 @@ class RealisasiBelanjaController extends Controller public function inputRealisasi(Request $request, $id) { + $req = $request->all(); $BelanjaRealisasi = BelanjaRealisasi::where("id", $id)->firstOrNew(); + $ta = $BelanjaRealisasi->tahun_anggaran; + $filter = ""; $semester = ""; + $sms = (int)$req["sms"]; + if($sms==1) + { + $semester = "SEMESTER 1"; + $filter = " AND D_POSTING BETWEEN '".$ta."0101' AND '".$ta."0630' "; + }else{ + $semester = "SEMESTER 2"; + $filter = " AND D_POSTING BETWEEN '".$ta."0101' AND '".$ta."1231' "; + } + + $BelanjaRealisasiDetail = BelanjaRealisasiDetail::where("belanja_realisasi_id",$BelanjaRealisasi->id)->where("semester",$sms)->firstorNew(); $jmlRealisasi = DB::select(DB::raw("SELECT sum(REALISASI) as jml FROM NEWSIPKD.VW_BKU_REALISASI_RSK - WHERE IDRSK = ".$BelanjaRealisasi->kode_rsk)); + WHERE IDRSK = ".$BelanjaRealisasi->kode_rsk.$filter)); $jmlRealisasi = $jmlRealisasi[0]; - $req = $request->all(); $redirect = isset($req["redirect_link"])?$req["redirect_link"]:URL::to("/realisasi-belanja"); if ($request->isMethod('post')) { try{ DB::beginTransaction(); + + $BelanjaRealisasiDetail->delete(); + $data["belanja_realisasi_id"] = $BelanjaRealisasi->id; $data["jumlah_realisasi"] = $jmlRealisasi->jml; $data["volume_satuan_realisasi"] = $req["vol_realisasi"]; $data["unit_satuan_realisasi"] = $req["unit_realisasi"]; - $data["realisasi_by"] = Auth::user()->id; - $BelanjaRealisasi->update($data); + $data["semester"] = (int)$req["sms"]; + $data["created_by"] = Auth::user()->id; + BelanjaRealisasiDetail::create($data); + + $BelanjaRealisasiDetail = BelanjaRealisasiDetail::where("belanja_realisasi_id",$BelanjaRealisasi->id)->orderby("semester")->get(); + $dataBelanjaRealisasi = []; + if (count($BelanjaRealisasiDetail)==1) + { + $dataBelanjaRealisasi["jumlah_realisasi"] = $BelanjaRealisasiDetail[0]->jumlah_realisasi; + $dataBelanjaRealisasi["volume_satuan_realisasi"] = $BelanjaRealisasiDetail[0]->volume_satuan_realisasi; + $dataBelanjaRealisasi["unit_satuan_realisasi"] = $BelanjaRealisasiDetail[0]->unit_satuan_realisasi; + }else if(count($BelanjaRealisasiDetail)>1) + { + $dataBelanjaRealisasi["jumlah_realisasi"] = $BelanjaRealisasiDetail[1]->jumlah_realisasi; + $dataBelanjaRealisasi["volume_satuan_realisasi"] = $BelanjaRealisasiDetail[1]->volume_satuan_realisasi; + $dataBelanjaRealisasi["unit_satuan_realisasi"] = $BelanjaRealisasiDetail[1]->unit_satuan_realisasi; + } + $dataBelanjaRealisasi["realisasi_by"] = Auth::user()->id; + $BelanjaRealisasi->update($dataBelanjaRealisasi); + DB::commit(); return redirect($redirect)->with('success','Data Realisasi berhasil di input!'); @@ -324,7 +352,7 @@ class RealisasiBelanjaController extends Controller } $unitSatuan = UnitSatuan::orderBy("id")->get(); - return view('realisasi_belanja.form_input_realisasi',compact("BelanjaRealisasi", "jmlRealisasi", "unitSatuan","redirect")); + return view('realisasi_belanja.form_input_realisasi',compact("BelanjaRealisasi", "BelanjaRealisasiDetail", "jmlRealisasi", "unitSatuan","redirect","semester","sms")); } public function datatableInputRealisasi(Request $request) @@ -335,7 +363,6 @@ class RealisasiBelanjaController extends Controller $src = isset($post["search"])?$post["search"]["value"]:""; $dataFilter=0; - //$data = BelanjaRealisasiDetail::where(["DBH_BELANJA_REALISASI_ID"=>$request->id])->orderBy("id","ASC"); $data = DB::select( DB::raw('SELECT x.I_ID as IDSP2D, x.I_IDOPD,x.I_SP2DNO_DOK,TO_CHAR(x.D_SP2D_SAH,\'DD-MM-YYYY\') AS D_SP2D_SAH,x.V_SPP, a.no_sp2d,a.jumlah_realisasi,a.VOLUME_SATUAN_REALISASI,a.UNIT_SATUAN_REALISASI,a.ID @@ -356,22 +383,6 @@ class RealisasiBelanjaController extends Controller ]); } - public function deleteDetail($id) - { - $data = BelanjaRealisasiDetail::where('id', $id)->firstorNew(); - try{ - DB::beginTransaction(); - $data->delete(); - DB::commit(); - return redirect(URL::to("/realisasi-belanja/".$data->dbh_belanja_realisasi_id."/submit"))->with('success','Data detail Realisasi belanja berhasil dihapus!'); - - }catch(Throwable $e){ - - DB::rollBack(); - return redirect(URL::to("/realisasi-belanja/".$data->dbh_belanja_realisasi_id."/submit"))->with('error','Data detail Realisasi belanja gagal dihapus.'); - } - } - protected function uploadFileKontrak($request, $id) { $file = $request->file('file_kontrak'); diff --git a/app/Models/BelanjaRealisasiDetail.php b/app/Models/BelanjaRealisasiDetail.php index b661e74..744fdc6 100644 --- a/app/Models/BelanjaRealisasiDetail.php +++ b/app/Models/BelanjaRealisasiDetail.php @@ -16,7 +16,7 @@ class BelanjaRealisasiDetail extends Eloquent "jumlah_realisasi", "volume_satuan_realisasi", "unit_satuan_realisasi", - "no_sp2d", + "semester", "created_by" ]; } diff --git a/database/migrations/2022_07_15_094519_create_temp_realisasi_belanja_table.php b/database/migrations/2022_07_15_094519_create_temp_realisasi_belanja_table.php index fb17a24..5cc7aa0 100644 --- a/database/migrations/2022_07_15_094519_create_temp_realisasi_belanja_table.php +++ b/database/migrations/2022_07_15_094519_create_temp_realisasi_belanja_table.php @@ -16,8 +16,8 @@ class CreateTempRealisasiBelanjaTable extends Migration Schema::create('temp_realisasi_belanja', function (Blueprint $table) { $table->id(); $table->string("tahun_anggaran",4); - $table->string("jenis_belanja",400); - $table->string("sub_jenis_belanja",400); + $table->tinyInteger("jenis_belanja"); + $table->tinyInteger("sub_jenis_belanja"); $table->string("kode_program",50); $table->string("nama_program",400); $table->string("kode_skpd",50); diff --git a/database/migrations/2022_07_18_090432_create_belanja_realisasi_table.php b/database/migrations/2022_07_18_090432_create_belanja_realisasi_table.php index 1ff8a2c..3bcd682 100644 --- a/database/migrations/2022_07_18_090432_create_belanja_realisasi_table.php +++ b/database/migrations/2022_07_18_090432_create_belanja_realisasi_table.php @@ -16,8 +16,8 @@ class CreateBelanjaRealisasiTable extends Migration Schema::create('belanja_realisasi', function (Blueprint $table) { $table->uuid('id')->primary(); $table->string("tahun_anggaran",4); - $table->string("jenis_belanja",400); - $table->string("sub_jenis_belanja",400); + $table->tinyInteger("jenis_belanja"); + $table->tinyInteger("sub_jenis_belanja"); $table->string("kode_program",50); $table->string("nama_program",400); $table->string("kode_skpd",50); diff --git a/database/migrations/2022_07_25_142112_create_belanja_realisasi_detail_table.php b/database/migrations/2022_07_25_142112_create_belanja_realisasi_detail_table.php index 6db29d8..02fa3ec 100644 --- a/database/migrations/2022_07_25_142112_create_belanja_realisasi_detail_table.php +++ b/database/migrations/2022_07_25_142112_create_belanja_realisasi_detail_table.php @@ -17,9 +17,9 @@ class CreateBelanjaRealisasiDetailTable extends Migration $table->id(); $table->uuid("belanja_realisasi_id"); $table->decimal('jumlah_realisasi', 19, 2); - $table->tinyInteger('volume_satuan_realisasi')->nullable(); + $table->integer('volume_satuan_realisasi')->nullable(); $table->string('unit_satuan_realisasi',30)->nullable(); - $table->string("no_sp2d",30); + $table->tinyInteger("semester"); $table->uuid("created_by"); $table->timestamps(); }); diff --git a/public/js/app.js b/public/js/app.js index 47cd618..f5536a8 100644 --- a/public/js/app.js +++ b/public/js/app.js @@ -294,6 +294,46 @@ $('.rsk_search').select2({ } }); +$('.jenis_belanja_search').select2({ + placeholder: 'Pilih Jenis Belanja', + ajax: { + url: Url+'/item-search-jenisbelanja', + dataType: 'json', + delay: 250, + processResults: function (data) { + return { + results: $.map(data, function (item) { + return { + text: item.name, + id: item.id + } + }) + }; + }, + cache: true + } +}); + +$('.sub_jenis_belanja_search').select2({ + placeholder: 'Pilih Sub Jenis Belanja', + ajax: { + url: Url+'/item-search-rsk', + dataType: 'json', + delay: 250, + processResults: function (data) { + return { + results: $.map(data, function (item) { + return { + text: item.name, + id: item.id + } + }) + }; + }, + cache: true + } +}); + $(document).on("click",".modalButton",function (e){ $("#overlayLoader").removeClass("d-flex"); $("#overlayLoader").addClass("d-flex"); diff --git a/resources/views/realisasi_belanja/form.blade.php b/resources/views/realisasi_belanja/form.blade.php index a08eb63..f7133a0 100644 --- a/resources/views/realisasi_belanja/form.blade.php +++ b/resources/views/realisasi_belanja/form.blade.php @@ -1,63 +1,68 @@ -
- - +
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
- {{-- --}} @section('scripts') diff --git a/resources/views/realisasi_belanja/form_input_realisasi.blade.php b/resources/views/realisasi_belanja/form_input_realisasi.blade.php index 9d3c9a7..844b43c 100644 --- a/resources/views/realisasi_belanja/form_input_realisasi.blade.php +++ b/resources/views/realisasi_belanja/form_input_realisasi.blade.php @@ -1,11 +1,13 @@ -
+ @csrf
+

{{ $semester }}

+
@@ -17,7 +19,7 @@
- volume_satuan_realisasi) ? $BelanjaRealisasi->volume_satuan: $BelanjaRealisasi->volume_satuan_realisasi; ?> + volume_satuan_realisasi) ? "": $BelanjaRealisasiDetail->volume_satuan_realisasi; ?>
@@ -26,7 +28,7 @@
@@ -202,21 +202,54 @@
-
- - + +
+
+
+
+ + +
+
+ + +
+
+ + +
+ can("Input Realisasi DBH Realisasi Belanja")){ ?> + Input Realisasi + +
+
+
+
+
+ + +
+
+ + +
+
+ + +
+ can("Input Realisasi DBH Realisasi Belanja")){ ?> + Input Realisasi + +
+
-
- - -
-
- - -
- can("Input Realisasi DBH Realisasi Belanja")){ ?> - Input Realisasi -
@endsection @@ -240,10 +273,10 @@