diff --git a/app/Http/Controllers/Admin/SisaSalurDanaController.php b/app/Http/Controllers/Admin/SisaSalurDanaController.php
new file mode 100644
index 0000000..255ec31
--- /dev/null
+++ b/app/Http/Controllers/Admin/SisaSalurDanaController.php
@@ -0,0 +1,154 @@
+siteTitle = "Sisa Salur Dana";
+ parent::__construct();
+ }
+
+ public function index()
+ {
+ $data = null;
+ return view('admin.sisa_salur_dana.index',compact('data'))
+ ->with('i', (request()->input('page', 1) - 1) * 10);
+ }
+
+ public function create()
+ {
+ $this->setSubtitle("Tambah Data");
+ return view('admin.sisa_salur_dana.create');
+ }
+
+
+ public function show(SisaSalurDana $SisaSalurDana)
+ {
+ SisaSalurDana::where("id",$SisaSalurDana->id)->get();
+ $this->setSubtitle("Detail Jenis Belanja");
+ return view('admin.sisa_salur_dana.show',compact('SisaSalurDana'));
+ }
+
+ public function store(Request $request)
+ {
+ $request->validate([
+ 'tahun' => 'required',
+ 'kode_rekening' => 'required',
+ 'jumlah' => 'required',
+ ]);
+ $req = $request->all();
+ $this->validate($request, [
+ 'file' => 'required|mimes:pdf,xlsx,xls,png,gif,jpg,jpeg',
+ ]);
+ $data["tahun"] = $req["tahun"];
+ $data["kode_rekening"] = $req["kode_rekening"];
+ $data["jumlah"] = replaceMoney($req["jumlah"]);
+ $file = $request->file('file');
+ if ($file){
+ $ext = $file->getClientOriginalExtension();
+ $NewFileName = $data["tahun"].$data["kode_rekening"].".".$ext;
+ $tujuan_upload = 'uploadFiles/sisa_salur_dana';
+ File::isDirectory($tujuan_upload) or File::makeDirectory($tujuan_upload, 0777, true, true);
+ $file->move($tujuan_upload, $NewFileName);
+ $data["dokumen"] = $NewFileName;
+ }
+ if ($request->isMethod('post')){
+ $SisaSalurDana = SisaSalurDana::where("tahun",getTA())->where("kode_rekening",$req["kode_rekening"])->first();
+ if ($SisaSalurDana){
+ return redirect(URL::to("/admin/SisaSalurDana/"))->with('error','Data Sisa Salur Dana gagal diTambah! No Rekening : '.$req["kode_rekening"].' sudah ada!');
+ }
+ else{
+ //var_dump($data); exit;
+ $SisaSalurDana = SisaSalurDana::create($data);
+ return redirect(URL::to("/admin/SisaSalurDana/".$SisaSalurDana->id))->with('success','Data Tagihan Berhasil Ditambah');
+ }
+ }
+ }
+
+
+ public function edit(SisaSalurDana $SisaSalurDana)
+ {
+ $this->setSubtitle("Ubah Data");
+ return view('admin.sisa_salur_dana.edit',compact('SisaSalurDana'));
+ }
+
+ public function download($id)
+ {
+ $SisaSalurDana = SisaSalurDana::where("id",$id)->first();
+ $headers = [
+ 'Content-Disposition' => 'attachment;filename='.$SisaSalurDana->dokumen
+ ];
+ $path = config('constants.upload_path').getTA()."/".$SisaSalurDana->dokumen;
+
+ return response()->file($path, $headers);
+ }
+
+ public function update(Request $request, SisaSalurDana $SisaSalurDana )
+ {
+ $request->validate([
+ 'tahun' => 'required',
+ 'kode_rekening' => 'required',
+ 'jumlah' => 'required',
+ ]);
+
+ $req = $request->all();
+ $data["tahun"] = $req["tahun"];
+ $data["kode_rekening"] = $req["kode_rekening"];
+ $data["jumlah"] = replaceMoney($req["jumlah"]);
+
+ $file = $request->file('file');
+ if ($file){
+ $ext = $file->getClientOriginalExtension();
+ $NewFileName = $data["tahun"].$data["kode_rekening"].".".$ext;
+ $tujuan_upload = 'uploadFiles/sisa_salur_dana';
+ File::isDirectory($tujuan_upload) or File::makeDirectory($tujuan_upload, 0777, true, true);
+ $file->move($tujuan_upload, $NewFileName);
+ $data["dokumen"] = $NewFileName;
+ }
+ $SisaSalurDana->update($req);
+
+ return redirect()->route('SisaSalurDana.index')
+ ->with('success','Data Sisa Salur Belanja berhasil diubah!');
+ }
+
+ public function destroy(SisaSalurDana $SisaSalurDana)
+ {
+ SisaSalurDana::where("id",$SisaSalurDana->id)->delete();
+ $SisaSalurDana->delete();
+ return redirect()->route('SisaSalurDana.index')
+ ->with('success','Data Sisa Salur Belanja berhasil dihapus!');
+ }
+
+ public function datatable(Request $request)
+ {
+ $post = $request->all();
+ $offset = $post["start"];
+ $limit = $post["length"];
+ $src = isset($post["search"]["value"]) ? strtolower($post["search"]["value"]):"";
+ $select = DB::raw("ID,TAHUN,KODE_REKENING,JUMLAH");
+ $sqltr = SisaSalurDana::select($select);
+ $dataTotal = $sqltr->count();
+ $data = $sqltr->orderBy("ID");
+ if (!empty($src)){
+ $data->whereRaw(" ( lower(KODE_REKENING) like '%$src% OR lower(JUMLAH) like '%$src%') ");
+ }
+ $dataFilter = $data->count();
+
+ return response()->json([
+ "recordsTotal" => $dataTotal,
+ "recordsFiltered" => $dataFilter,
+ "data"=> $data->skip($offset)->take($limit)->get()
+ ]);
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/JadwalSalurdanaController.php b/app/Http/Controllers/JadwalSalurdanaController.php
index 340ed47..733c4c7 100644
--- a/app/Http/Controllers/JadwalSalurdanaController.php
+++ b/app/Http/Controllers/JadwalSalurdanaController.php
@@ -35,7 +35,7 @@ class JadwalSalurdanaController extends Controller
$typeDana = isset($post["jenis_dana"])?strtoupper($post["jenis_dana"]):"";
$idSPS = isset($post["id_sps"])?$post["id_sps"]:"";
$sqlstr = Sps_pendapatan::queryJadwalSalurDana($ta);
-
+
if (!empty($idSPS)){
$sqlstr.=" AND x.KODE_REKENING='$idSPS'";
}
diff --git a/app/Models/SisaSalurDana.php b/app/Models/SisaSalurDana.php
new file mode 100644
index 0000000..a160013
--- /dev/null
+++ b/app/Models/SisaSalurDana.php
@@ -0,0 +1,21 @@
+nrk.'\') ';
diff --git a/database/migrations/2023_11_09_110625_create_sisa_salur_dana_table.php b/database/migrations/2023_11_09_110625_create_sisa_salur_dana_table.php
new file mode 100644
index 0000000..141f7fe
--- /dev/null
+++ b/database/migrations/2023_11_09_110625_create_sisa_salur_dana_table.php
@@ -0,0 +1,35 @@
+id();
+ $table->string("tahun",50);
+ $table->string("kode_rekening",50);
+ $table->string('jumlah',50);
+ $table->string("dokumen",100)->nullable();
+ $table->timestamps();
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::dropIfExists('sisa_salur_dana');
+ }
+}
diff --git a/resources/views/admin/sisa_salur_dana/create.blade.php b/resources/views/admin/sisa_salur_dana/create.blade.php
new file mode 100644
index 0000000..c180c45
--- /dev/null
+++ b/resources/views/admin/sisa_salur_dana/create.blade.php
@@ -0,0 +1,122 @@
+@php
+ $siteBreadcumb = [
+ ["url"=>"/admin/SisaSalurDana","label"=>$siteTitle],
+ ["url"=>"/admin/SisaSalurDana","label"=>$sitesubTitle]
+ ];
+@endphp
+
+@extends('layouts.app')
+
+@section('content')
+
+
+
+
@php echo $sitesubTitle; @endphp
+
+
+
+
+
+
+@endsection
+@section('scripts')
+
+@endsection
\ No newline at end of file
diff --git a/resources/views/admin/sisa_salur_dana/edit.blade.php b/resources/views/admin/sisa_salur_dana/edit.blade.php
new file mode 100644
index 0000000..50af5a5
--- /dev/null
+++ b/resources/views/admin/sisa_salur_dana/edit.blade.php
@@ -0,0 +1,61 @@
+@php
+ $siteBreadcumb = [
+ ["url"=>"/admin/SisaSalurDana","label"=>$siteTitle],
+ ["url"=>"/admin/SisaSalurDana","label"=>$sitesubTitle]
+ ];
+@endphp
+
+@extends('layouts.app')
+
+@section('content')
+
+
+
+
@php echo $sitesubTitle; @endphp
+
+
+
+
+
+
+@endsection
+@section('scripts')
+
+@endsection
\ No newline at end of file
diff --git a/resources/views/admin/sisa_salur_dana/index.blade.php b/resources/views/admin/sisa_salur_dana/index.blade.php
new file mode 100644
index 0000000..6087ac1
--- /dev/null
+++ b/resources/views/admin/sisa_salur_dana/index.blade.php
@@ -0,0 +1,123 @@
+@php
+ $siteBreadcumb = [
+ ["url"=>"/admin/SisaSalurDana","label"=>$siteTitle],
+ ["url"=>"/admin/SisaSalurDana","label"=>$sitesubTitle]
+ ];
+@endphp
+
+@extends('layouts.empty')
+
+@section('styles')
+
+
+
+
+
+@endsection
+
+@section('content')
+
+
+
+
+
+
+ | No |
+ Tahun |
+ Kode Rekening |
+ Jumlah |
+ Action |
+
+
+
+
+
+
+ @section('scripts')
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ @endsection
+@stop
\ No newline at end of file
diff --git a/resources/views/admin/sisa_salur_dana/show.blade.php b/resources/views/admin/sisa_salur_dana/show.blade.php
new file mode 100644
index 0000000..d812e81
--- /dev/null
+++ b/resources/views/admin/sisa_salur_dana/show.blade.php
@@ -0,0 +1,72 @@
+@php
+ $siteBreadcumb = [
+ ["url"=>"/admin/SisaSalurDana","label"=>$siteTitle],
+ ["url"=>"/admin/SisaSalurDana","label"=>$sitesubTitle]
+ ];
+@endphp
+
+@section('styles')
+
+
+
+
+
+@endsection
+
+@extends('layouts.empty')
+
+@section('content')
+
+@endsection
+@section('scripts')
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+@endsection
\ No newline at end of file
diff --git a/resources/views/components/breadcrumb.blade.php b/resources/views/components/breadcrumb.blade.php
index 53bc355..e69de29 100644
--- a/resources/views/components/breadcrumb.blade.php
+++ b/resources/views/components/breadcrumb.blade.php
@@ -1,11 +0,0 @@
-
\ No newline at end of file
diff --git a/resources/views/jadwal_salurdana/index.blade.php b/resources/views/jadwal_salurdana/index.blade.php
index 0f7cc28..181827e 100644
--- a/resources/views/jadwal_salurdana/index.blade.php
+++ b/resources/views/jadwal_salurdana/index.blade.php
@@ -83,6 +83,8 @@
| No |
Nama Rekening |
+ Jumlah |
+ Sisa |
Jan |
Feb |
Mar |
@@ -95,7 +97,6 @@
Okt |
Nov |
Des |
- Jumlah |
| Jadwal |
@@ -446,6 +447,9 @@
"columns": [
{ "data": null},
{ "data": "kode_rekening", "width": "400px" },
+ { "data": null, "className":"text-right " },
+ { "data": null, "className":"text-right text-success" },
+ { "data": null, "className":"text-right text-primary" },
{ "data": "spsbulan1", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan2", "className":"text-right" },
@@ -470,9 +474,6 @@
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan12", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
- { "data": null, "className":"text-right " },
- { "data": null, "className":"text-right text-success" },
- //{ "data": null },
],
"rowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull, oSettings) {
let info = dtTableSalur.page.info();
@@ -485,7 +486,7 @@
let total = 0;
let totalReal = 0;
- let Jadwalcol=0;
+ let Jadwalcol=3;
$("td:eq(0)", nRow).html(index);
$("td:eq(1)", nRow).html(aData["kode_rekening"] + " | " + aData["nama_rekening"]);
$.each(sps, function(i,x){
@@ -495,8 +496,9 @@
total+=parseFloat(sps[i]);
totalReal+=parseFloat(real[i]);
})
- $("td:eq(26)", nRow).html(separateNumberIndo(total));
- $("td:eq(27)", nRow).html(separateNumberIndo(totalReal));
+ $("td:eq(2)", nRow).html(separateNumberIndo(total));
+ $("td:eq(3)", nRow).html(separateNumberIndo(totalReal));
+ $("td:eq(4)", nRow).html(separateNumberIndo(aData["sisa"]));
return nRow;
},
@@ -521,6 +523,7 @@
let sumReal = [];
let total = 0;
let totalReal = 0;
+ let totalSisa = 0;
for(let x=0;x<12;x++){
xx = x+1;
sum[x] = rows.data().pluck("spsbulan"+xx).reduce( function (a, b) {
@@ -531,13 +534,21 @@
sumReal[x] = rows.data().pluck("real"+xx).reduce( function (a, b) {
return a + b * 1;
}, 0);
- totalReal += sumReal[x];
+ totalReal += sumReal[x];
+
}
+ totalSisa = rows.data().pluck("sisa").reduce( function (a, b) {
+ return a + b * 1;
+ }, 0);
+
let textmuted = index == 1 ? "text-muted":"";
let labelGroup = index == 1 ?"JUMLAH | " + group : "TOTAL";
return $("
")
.append( " | ")
.append( ""+labelGroup+" | ")
+ .append( ""+ separateNumberIndo(total) +" | " )
+ .append( ""+ separateNumberIndo(totalReal) +" | " )
+ .append( ""+ separateNumberIndo(totalSisa) +" | " )
.append( ""+ separateNumberIndo(sum[0]) +" | " )
.append( ""+ separateNumberIndo(sumReal[0]) +" | " )
.append( ""+ separateNumberIndo(sum[1]) +" | " )
@@ -562,8 +573,6 @@
.append( ""+ separateNumberIndo(sumReal[10]) +" | " )
.append( ""+ separateNumberIndo(sum[11]) +" | " )
.append( ""+ separateNumberIndo(sumReal[11]) +" | " )
- .append( ""+ separateNumberIndo(total) +" | " )
- .append( ""+ separateNumberIndo(totalReal) +" | " )
},
startRender: function ( rows, group, index ) {
},
@@ -624,6 +633,10 @@
cache: true
}
});
+
+ $('#dtTableJadwalPendapatan').on( 'draw.dt', function () {
+ $($.fn.dataTable.tables(true)).DataTable().columns.adjust();
+ });
});
@endsection
\ No newline at end of file
diff --git a/resources/views/partials/menu.blade.php b/resources/views/partials/menu.blade.php
index 684b8b8..82fe779 100644
--- a/resources/views/partials/menu.blade.php
+++ b/resources/views/partials/menu.blade.php
@@ -105,6 +105,7 @@
Mapping Rek DBH/DAK
Jenis Belanja
Jenis Dana
+ Sisa Salur Dana
Satuan
Pengaturan
@endif
diff --git a/routes/web.php b/routes/web.php
index 8e30c27..28e1b9e 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -16,10 +16,12 @@ use App\Http\Controllers\Admin\RolessController;
use App\Http\Controllers\Admin\PermissionsController;
use App\Http\Controllers\Admin\MstJenisDanaController;
use App\Http\Controllers\Admin\MstDauRinciController;
+use App\Http\Controllers\Admin\SisaSalurDanaController;
use App\Http\Controllers\Admin\MstJenisBelanjaController;
use App\Http\Controllers\Admin\MstSubJenisBelanjaController;
use App\Http\Controllers\Admin\MstSatuanController;
use App\Http\Controllers\Admin\PengaturanController;
+use App\Http\Controllers\Admin\SisaSalurDana;
use App\Http\Controllers\NotifikasiController;
Route::get('/', [AuthController::class, 'showFormLogin']);
@@ -28,7 +30,7 @@ Route::post('login', [AuthController::class, 'login']);
Route::get('register', [AuthController::class, 'showFormRegister'])->name('register');
Route::post('register', [AuthController::class, 'register']);
Route::group(['middleware' => 'auth'], function () {
- Route::group(['prefix' => 'admin', 'middleware'=>'role:admin|superadmin'], function () {
+ Route::group(['prefix' => 'admin', 'middleware'=>'role:admin|superadmin'], function () {
Route::post('users/datatable', [MstPenggunaController::class,'datatable']);
Route::get('users/{userId}/lock-upload/{reset}', [MstPenggunaController::class, 'lockUploadData']);
Route::get('users/lock-upload-all/{userId}/{reset}', [MstPenggunaController::class, 'lockUploadData']);
@@ -50,11 +52,21 @@ Route::group(['middleware' => 'auth'], function () {
Route::post('MstJenisBelanja/{id}/datatable-sub', [MstSubJenisBelanjaController::class,'datatable']);
Route::post('MstJenisBelanja/{id}/store-sub', [MstSubJenisBelanjaController::class,'store']);
Route::resource('MstSubJenisBelanja', MstSubJenisBelanjaController::class);
+
Route::post('MstSatuan/datatable', [MstSatuanController::class,'datatable']);
Route::resource('MstSatuan', MstSatuanController::class);
Route::get('Pengaturan', [PengaturanController::class,'index']);
Route::post('Pengaturan/adjust-anggaran', [PengaturanController::class,'rekonAnggaran']);
Route::post('Pengaturan/adjust-akb-pendapatan', [PengaturanController::class,'adjustAKBPendapatan']);
+
+ Route::get('SisaSalurDana', [SisaSalurDanaController::class,'index']);
+ Route::resource('SisaSalurDana', SisaSalurDanaController::class);
+ Route::post('SisaSalurDana/datatable', [SisaSalurDanaController::class,'datatable']);
+ Route::resource('SisaSalurDana', SisaSalurDanaController::class);
+ Route::get('SisaSalurDana/{SisaSalurDana}/create-sub', [SisaSalurDanaController::class,'create']);
+ Route::post('SisaSalurDana/{id}/datatable-sub', [SisaSalurDanaController::class,'datatable']);
+ Route::post('SisaSalurDana/{id}', [SisaSalurDanaController::class,'store']);
+ Route::get('SisaSalurDana/download/{id}', [SisaSalurDanaController::class,'download']);
});
Route::get('users/change-password/{userId}', [MstPenggunaController::class,'changePass'])->name("users.changepass");