Develop realisasi belanja

This commit is contained in:
Pusdatin BPKD Jkt
2022-07-25 16:25:51 +07:00
parent f9059ad5d5
commit 454a9022ab
23 changed files with 491 additions and 170 deletions
@@ -1,4 +1,4 @@
<form id="frmInputRealisasi" action="{{ url('realisasi-belanja/'.$DbhBelanjaRealisasi->id.'/inputRealisasi') }}" method="POST" autocomplete="off">
<form id="frmInputRealisasi" action="{{ url('/dbh/realisasi-belanja/'.$DbhBelanjaRealisasi->id.'/inputRealisasi') }}" method="POST" autocomplete="off">
@csrf
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12">
@@ -9,17 +9,29 @@
<textarea type="text" id="rsk_realisasi" rows=4 required class="form-control" name="rsk_realisasi" disabled>{{ $DbhBelanjaRealisasi->nama_rsk }}</textarea>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<label>No. SP2D</label>
<input type="text" id="no_sp2d" required class="form-control" name="no_sp2d">
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<label>Jumlah Realisasi</label>
<input type="text" id="jml_realisasi" required class="form-control" name="jml_realisasi" placeholder="Jumlah Realisasi" disabled>
</div>
</div>
<div class="col-xs-6 col-sm-6 col-md-6">
<div class="form-group">
<?php $volSatuan = empty($DbhBelanjaRealisasi->volume_satuan_realisasi) ? $DbhBelanjaRealisasi->volume_satuan: $DbhBelanjaRealisasi->volume_satuan_realisasi; ?>
<label>Volume Realisasi</label>
<input type="number" id="vol_realisasi" required class="form-control" name="vol_realisasi" value="{{ $volSatuan }}" placeholder="Volume Realisasi">
<input type="number" id="vol_realisasi" required class="form-control" name="vol_realisasi" value="{{ $volSatuan }}" placeholder="Volume Realisasi" disabled>
</div>
</div>
<div class="col-xs-6 col-sm-6 col-md-6">
<div class="form-group">
<label>Unit Realisasi</label>
<select id="unit_realisasi" name="unit_realisasi" class="form-control" required placeholder="Unit Realisasi">
<select id="unit_realisasi" name="unit_realisasi" class="form-control" required placeholder="Unit Realisasi" disabled>
<?php $unitSatuanVal = empty($DbhBelanjaRealisasi->unit_satuan_realisasi) ? $DbhBelanjaRealisasi->unit_satuan: $DbhBelanjaRealisasi->unit_satuan_realisasi; ?>
<?php foreach($unitSatuan as $satuan){ ?>
<option {{ $unitSatuanVal == $satuan->nama_satuan ? "selected":"" }}>{{ $satuan->nama_satuan }}</option>
@@ -28,9 +40,56 @@
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12">
<button type="submit" class="btn btn-success"><i class="fa fa-paper-plane"></i> Simpan</button>
<button id="btnSubmit" type="button" class="btn btn-success"><i class="fa fa-paper-plane"></i> Simpan</button>
</div>
</div>
</form>
<script type="text/javascript">
$(document).ready(function(){
detailSP2D = (noSP2D)=>{
$.ajax({
url: '/item-search-sp2d?no_sp2d='+noSP2D,
dataType: 'json',
success: function (data) {
$("#vol_realisasi").prop("disabled", true);
$("#unit_realisasi").prop("disabled", true);
if (Object.keys(data).length == 0){
Swal.fire('Data SP2D tidak ditemukan!!', '', 'error');
}else{
let jml = parseFloat(data.v_sp2d);
$("#jml_realisasi").val(separateNumberIndo(jml));
$("#vol_realisasi").prop("disabled", false);
$("#unit_realisasi").prop("disabled", false);
}
}
});
}
$("#no_sp2d").on("keypress",function(e){
if (e.keyCode == 13){
e.preventDefault();
detailSP2D($(this).val());
}
});
let cekValidasi=()=>{
if ($("#no_sp2d").val() == ""){
Swal.fire('No SP2D blm diisi!!', '', 'error');
return false;
}
if ($("#jml_realisasi").val() == ""){
Swal.fire('Jumlah Realisasi kosong!!', '', 'error');
return false;
}
return true;
}
$("#btnSubmit").on("click",function(e){
if (cekValidasi()){
$("#frmInputRealisasi input").prop("disabled", false);
$("#frmInputRealisasi").submit();
}
})
});
</script>
@@ -1,6 +1,6 @@
@php
$siteBreadcumb = [
["url"=>"/realisasi-pendapatan","label"=>$siteTitle],
["url"=>"/dbh/realisasi-pendapatan","label"=>$siteTitle],
];
@endphp
@@ -66,6 +66,7 @@
"Anggaran",
"Volume",
"Unit",
"Jumlah Realisasi",
"Volume Realisasi",
"Unit Realisasi",
"Aksi"
@@ -120,7 +121,7 @@
"ordering": false,
"autoWidth": false,
"ajax": {
url: "/realisasi-belanja/datatable",
url: "/dbh/realisasi-belanja/datatable",
type: "POST",
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
@@ -157,7 +158,8 @@
{ "data": "jumlah_anggaran", "className":"text-right", "defaultContent":"0" },
{ "data": "volume_satuan", "className":"text-center", "defaultContent":"0", "width":50 },
{ "data": "unit_satuan", "className":"text-center", "defaultContent":"-", "width":50 },
{ "data": "volume_satuan_realisasi", "className":"text-center", "defaultContent":"0", "width":50 },
{ "data": null},
{ "data": "vol_realisasi", "className":"text-center", "defaultContent":"0", "width":50 },
{ "data": "unit_satuan_realisasi", "className":"text-center", "defaultContent":"-", "width":50 },
{ "data": null}
],
@@ -165,11 +167,12 @@
let info = dtTable.page.info();
let numStart = info.page;
let index = (numStart * dtTable.page.len()) + iDisplayIndex + 1;
let btnInput = {{ empty(Auth::user()->can("Input Realisasi DBH Realisasi Belanja"))?"false":Auth::user()->can("Input Realisasi DBH Realisasi Belanja") }}?'<a class="btn btn-sm btn-success modalButton" title="Input Realisasi" href="/realisasi-belanja/'+aData["id"]+'/inputRealisasi"><i class="fa fa-paper-plane"></i> Input Realisasi</a>':'';
//let btnInput = {{ empty(Auth::user()->can("Input Realisasi DBH Realisasi Belanja"))?"false":Auth::user()->can("Input Realisasi DBH Realisasi Belanja") }}?'<a class="btn btn-sm btn-success modalButton" title="Input Realisasi" href="/dbh/realisasi-belanja/'+aData["id"]+'/inputRealisasi"><i class="fa fa-paper-plane"></i> Input Realisasi</a>':'';
let btnInput = "";
$("td:eq(0)", nRow).html(index);
$("td:eq(2)", nRow).html(separateNumberIndo(aData["jumlah_anggaran"]));
$("td:eq(7)", nRow).html('<a href="/realisasi-belanja/' + aData["id"] +'/submit" class="btn btn-sm btn-default mr-2"><i class="fa fa-eye"></i></a>'+btnInput);
$("td:eq(5)", nRow).html(separateNumberIndo(aData["jml_realisasi"]));
$("td:eq(8)", nRow).html('<a href="/dbh/realisasi-belanja/' + aData["id"] +'/submit" class="btn btn-sm btn-default mr-2"><i class="fa fa-eye"></i></a>'+btnInput);
return nRow;
},
@@ -1,10 +1,18 @@
@php
$siteBreadcumb = [
["url"=>"/realisasi-pendapatan","label"=>$siteTitle],
["url"=>"/realisasi-pendapatan/create","label"=>$sitesubTitle]
["url"=>"/dbh/realisasi-pendapatan","label"=>$siteTitle],
["url"=>"/dbh/realisasi-pendapatan/create","label"=>$sitesubTitle]
];
@endphp
@section('styles')
<!-- DataTables -->
<link rel="stylesheet" href="/AdminLTE-3.2.0/plugins/datatables-bs4/css/dataTables.bootstrap4.min.css">
<link rel="stylesheet" href="/AdminLTE-3.2.0/plugins/datatables-responsive/css/responsive.bootstrap4.min.css">
<link rel="stylesheet" href="/AdminLTE-3.2.0/plugins/datatables-buttons/css/buttons.bootstrap4.min.css">
<link rel="stylesheet" href="/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/css/fixedColumns.bootstrap4.min.css">
@endsection
@extends('layouts.empty')
@section('content')
@@ -13,12 +21,12 @@
<h2 class="card-title"><i class="fa fa-th-list mr-2"></i> {{ $sitesubTitle }}</h2>
<div class="card-tools">
{{-- @if(auth()->user()->can('Tambah SKPP')) --}}
<button class="btn btn-sm btn-default" onclick="location.href='{{ route('realisasi-belanja.index') }}'"><i class="fa fa-arrow-left"></i> Kembali</button>
<button class="btn btn-sm btn-default" onclick="location.href='{{ url('/dbh/realisasi-belanja') }}'"><i class="fa fa-arrow-left"></i> Kembali</button>
{{-- @endif --}}
</div>
</div>
<div class="card-body">
<form id="frmSalurdana" action="{{ url('/realisasi-belanja/submit') }}" method="POST" autocomplete="off">
<form id="frmSalurdana" action="{{ url('/dbh/realisasi-belanja/submit') }}" method="POST" autocomplete="off">
@csrf
@include('realisasi_belanja.form')
</form>
@@ -26,24 +34,52 @@
</div>
<div class="card">
<div class="card-header">
<h3 class="card-title">Realisasi</h3>
<h2 class="card-title"><i class="fa fa-th-list mr-2"></i> Realisasi</h2>
<div class="card-tools">
<?php if (Auth::user()->can("Input Realisasi DBH Realisasi Belanja")){ ?>
<a class="btn btn-sm btn-success modalButton" title="Input Realisasi" href="{{ url('/dbh/realisasi-belanja/'.$DbhBelanjaRealisasi->id.'/inputRealisasi?redirect_link=/dbh/realisasi-belanja/'.$DbhBelanjaRealisasi->id.'/submit') }}"><i class="fa fa-paper-plane"></i> Input Realisasi</a>
<?php } ?>
</div>
</div>
<div class="card-body">
<div class="form-group">
<label class="col-form-label label-align" for="sk">Volume Realisasi</label>
<input type="text" class="form-control" name="vol_realisasi" disabled>
</div>
<div class="form-group">
<label class="col-form-label label-align" for="sk">Unit Realisasi</label>
<input type="text" class="form-control" name="unit_realisasi" disabled>
</div>
<?php if (Auth::user()->can("Input Realisasi DBH Realisasi Belanja")){ ?>
<a class="btn btn-success modalButton" title="Input Realisasi" href="{{ url('/realisasi-belanja/'.$DbhBelanjaRealisasi->id.'/inputRealisasi?redirect_link=/realisasi-belanja/'.$DbhBelanjaRealisasi->id.'/submit') }}"><i class="fa fa-paper-plane"></i> Input Realisasi</a>
<?php } ?>
<div class="card-body table-responsive p-0">
<table id="tblInputRealisasi" class="table table-striped jambo_table tblClickRow" style="width:100%;">
<thead>
<tr class="headings">
<th>No</th>
<?php
$arrCol = array(
"No. SP2D",
"Jumlah Realisasi",
"Volume Realisasi",
"Unit Realisasi",
"Aksi"
);
foreach($arrCol as $rowCol){
echo "<th>$rowCol</th>";
}
?>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
</div>
@endsection
@section('scripts2')
<script src="/AdminLTE-3.2.0/plugins/datatables/jquery.dataTables.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-bs4/js/dataTables.bootstrap4.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-responsive/js/dataTables.responsive.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-responsive/js/responsive.bootstrap4.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-buttons/js/dataTables.buttons.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.bootstrap4.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/jszip/jszip.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/pdfmake/pdfmake.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/pdfmake/vfs_fonts.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.html5.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.print.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.colVis.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/js/dataTables.fixedColumns.min.js"></script>
<script src="/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/js/fixedColumns.bootstrap4.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var srcDate1 = null, srcDate2 = null;
@@ -85,6 +121,69 @@
$("input[name=unit]").attr("readonly", true);
$("input[name=vol_realisasi]").val("{{ isset($DbhBelanjaRealisasi->volume_satuan_realisasi)?$DbhBelanjaRealisasi->volume_satuan_realisasi:0 }}");
$("input[name=unit_realisasi]").val("{{ isset($DbhBelanjaRealisasi->unit_satuan_realisasi)?$DbhBelanjaRealisasi->unit_satuan_realisasi:0 }}");
var dtTable = $('#tblInputRealisasi').DataTable( {
"processing": true,
"serverSide": true,
"ordering": false,
"autoWidth": false,
"ajax": {
url: "/dbh/realisasi-belanja/{{ $DbhBelanjaRealisasi->id }}/inputrealisasi-datatable",
type: "POST",
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
data: function (d) {
}
},
"columnDefs": [
//{ className: "td-nowrap", "targets": [ 1 ] }
],
"dom": "<\"top\" <\"row\"<\"col-md-6\"><\"col-md-6 text-right\">>>rt<\"bottom\" <\"row\"<\"col-md-6\"><\"col-md-6\">> ><\"clear\">",
"lengthMenu": [
[ 10, 25, 50 ],
[ "10", "25", "50" ]
],
"paging": true, // Table pagination
"columns": [
{ "data": null},
{ "data": "no_sp2d", "className":"text-left", "defaultContent":"-"},
{ "data": "jumlah_realisasi", "className":"text-right", "defaultContent":"0" },
{ "data": "volume_satuan_realisasi", "className":"text-center", "defaultContent":"0" },
{ "data": "unit_satuan_realisasi", "className":"text-center", "defaultContent":"-" },
{ "data": null}
],
"rowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull, oSettings) {
let info = dtTable.page.info();
let numStart = info.page;
let index = (numStart * dtTable.page.len()) + iDisplayIndex + 1;
//let btnInput = {{ empty(Auth::user()->can("Input Realisasi DBH Realisasi Belanja"))?"false":Auth::user()->can("Input Realisasi DBH Realisasi Belanja") }}?'<a class="btn btn-sm btn-default modalButton" title="Input Realisasi" href="/dbh/realisasi-belanja/'+aData["id"]+'/inputRealisasi"><i class="fa fa-edit"></i></a>':'';
let btnInput = "";
//let btnDelete = {{ empty(Auth::user()->can("Input Realisasi DBH Realisasi Belanja"))?"false":Auth::user()->can("Input Realisasi DBH Realisasi Belanja") }}?'<a href="/dbh/realisasi-belanja/' + aData["id"] +'/submit" class="btn btn-sm btn-default mr-2"><i class="fa fa-trash"></i></a>':'';
let btnDelete = {{ !empty(auth()->user()->can('Input Realisasi DBH Realisasi Belanja'))?auth()->user()->can('Input Realisasi DBH Realisasi Belanja'):"false" }} ?"<button type='submit' class='btn btn-default btn-sm ml-1' title='Hapus'><i class='fa fa-trash'></i></button>":"";
$("td:eq(0)", nRow).html(index);
$("td:eq(2)", nRow).html(separateNumberIndo(aData["jumlah_realisasi"]));
$("td:eq(5)", nRow).html("<form class='form-delete' action='/dbh/realisasi-belanja/delete-detail/"+aData['id']+"' method='POST'>"+
"<input type='hidden' name='_token' id='csrf-token' value='{{ Session::token() }}' /><input type='hidden' name='_method' value='DELETE'>"+ btnDelete + "</form>");
return nRow;
},
"language": {
"lengthMenu": "Tampil _MENU_ data per Halaman",
"zeroRecords": "Data tidak ditemukan!",
"info": "Halaman _PAGE_ dari _PAGES_ Halaman",
"infoEmpty": "Data tidak tersedia",
"infoFiltered": "(Disaring dari _MAX_ Data)",
"paginate": {
"previous": "<i class='fas fa-angle-double-left'></i>",
"next": "<i class='fas fa-angle-double-right'></i>",
},
"processing": "<div class='loading'></div>",
},
scrollX:true,
});
});
</script>
@endsection
@@ -1,7 +1,7 @@
@php
$siteBreadcumb = [
["url"=>"/realisasi-belanja","label"=>$siteTitle],
["url"=>"/realisasi-belanja/create","label"=>$sitesubTitle]
["url"=>"/dbh/realisasi-belanja","label"=>$siteTitle],
["url"=>"/dbh/realisasi-belanja/create","label"=>$sitesubTitle]
];
@endphp
@@ -21,7 +21,7 @@
<div class="card-tools"></div>
</div>
<div class="card-body">
<form id="uploadData" action="/upload-realisasi-belanja" method="POST" autocomplete="off" enctype="multipart/form-data">
<form id="uploadData" action="/dbh/upload-realisasi-belanja" method="POST" autocomplete="off" enctype="multipart/form-data">
@csrf
<div class="form-group">
<b>File Gambar</b><br/>
@@ -110,7 +110,7 @@
}).then((result) => {
/* Read more about isConfirmed, isDenied below */
if (result.isConfirmed) {
location.href='{{ url('/upload-realisasi-belanja/upload') }}';
location.href='{{ url('/dbh/upload-realisasi-belanja/upload') }}';
}
})
});
@@ -121,7 +121,7 @@
"ordering": false,
"autoWidth": false,
"ajax": {
url: "/upload-realisasi-belanja/datatable",
url: "/dbh/upload-realisasi-belanja/datatable",
type: "POST",
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')