Files
sidata/resources/views/jadwal_salurdana/index_dak.blade.php
T
2022-08-23 11:51:38 +07:00

520 lines
29 KiB
PHP

@php
$siteBreadcumb = [
["url"=>"/jadwal-belanjadana","label"=>$siteTitle],
];
@endphp
@extends('layouts.empty')
@section('styles')
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-bs4/css/dataTables.bootstrap4.min.css">
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-responsive/css/responsive.bootstrap4.min.css">
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-buttons/css/buttons.bootstrap4.min.css">
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-rowgroup/css/rowGroup.bootstrap4.min.css">
<link rel="stylesheet" href="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/css/fixedColumns.bootstrap4.min.css">
@endsection
@section('content')
<div class="card">
<div class="card-header border-0">
<h2 class="card-title"><i class="fa fa-search mr-2"></i> Filter Pencarian</h2>
<div class="card-tools">
<button type="button" class="btn btn-tool" data-card-widget="collapse" title="Collapse">
<i class="fas fa-minus"></i>
</button>
</div>
</div>
<div class="card-body pt-0 pb-0">
<form id="frmJadwalSalur" action="{{ $baseUrl }}/jadwal-salurdana" method="post">
@csrf
<div class="row">
<div class="col-1">
<div class="form-group">
<label>Periode</label>
<select class="form-control form-control-sm" id="srcTA" name="ta">
@php
$listTA = Session::get('listTA');
foreach($listTA as $rowTA){
echo "<option>$rowTA</option>";
}
@endphp
</select>
</div>
</div>
<div class="col-11">
<div class="form-group">
<label for="txt_simtrad4_kotor">DAK</label>
<input type="hidden" name="type_dana" value="dak">
<select id="txt_id_sps" name="id_sps" class="form-control form-control-sm" required></select>
</div>
</div>
</div>
</form>
</div>
</div>
<div class="card">
<div class="card-header">
<h2 class="card-title"><i class="fa fa-th-list mr-2"></i> Jadwal Salur</h2>
<div class="card-tools">
<button type="button" class="btn btn-tool" data-card-widget="collapse" title="Collapse">
<i class="fas fa-minus"></i>
</button>
</div>
</div>
<div class="card-body">
<table id="dtTableJadwalPendapatan" class="table table-bordered table-striped jambo_table tblClickRow" style="width:150%">
<thead>
<tr class="headings">
<th rowspan=2>No</th>
<th rowspan=2>Nama Rekening</th>
<th colspan=2 class="text-right">Jan</th>
<th colspan=2 class="text-right">Feb</th>
<th colspan=2 class="text-right">Mar</th>
<th colspan=2 class="text-right">Apr</th>
<th colspan=2 class="text-right">Mei</th>
<th colspan=2 class="text-right">Juni</th>
<th colspan=2 class="text-right">Juli</th>
<th colspan=2 class="text-right">Agu</th>
<th colspan=2 class="text-right">Sep</th>
<th colspan=2 class="text-right">Okt</th>
<th colspan=2 class="text-right">Nov</th>
<th colspan=2 class="text-right">Des</th>
<th colspan=2 class="text-right">Jumlah</th>
</tr>
<tr>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
<td>Jadwal</td>
<td>Realisasi</td>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
</div>
<div class="card">
<div class="card-header">
<h2 class="card-title"><i class="fa fa-th-list mr-2"></i> AKB vs Realisasi</h2>
<div class="card-tools">
{{-- @if(auth()->user()->can('Tambah SKPP')) --}}
{{-- <button class="btn btn-sm btn-success" onclick="location.href='{{ route('salur-dana.create') }}'"><i class="fa fa-edit"></i> Tambah Data</button> --}}
{{-- @endif --}}
</div>
</div>
<div class="card-body">
<table id="dtTableJadwalBelanja" class="table table-bordered table-striped jambo_table tblClickRow" style="width:150%">
<thead>
<tr class="headings">
<th rowspan=2>No</th>
<th rowspan=2>SKPD</th>
<th rowspan=2>RSK</th>
<th rowspan=2>Anggaran</th>
<th colspan=2 class="text-right">Jan</th>
<th colspan=2 class="text-right">Feb</th>
<th colspan=2 class="text-right">Mar</th>
<th colspan=2 class="text-right">Apr</th>
<th colspan=2 class="text-right">Mei</th>
<th colspan=2 class="text-right">Juni</th>
<th colspan=2 class="text-right">Juli</th>
<th colspan=2 class="text-right">Agu</th>
<th colspan=2 class="text-right">Sep</th>
<th colspan=2 class="text-right">Okt</th>
<th colspan=2 class="text-right">Nov</th>
<th colspan=2 class="text-right">Des</th>
<th colspan=2 class="text-right">Jumlah</th>
</tr>
<tr>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
<td>AKB</td>
<td>Realisasi</td>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
</div>
@stop
@section('scripts')
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables/jquery.dataTables.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-bs4/js/dataTables.bootstrap4.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-responsive/js/dataTables.responsive.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-responsive/js/responsive.bootstrap4.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-buttons/js/dataTables.buttons.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.bootstrap4.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/jszip/jszip.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/pdfmake/pdfmake.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/pdfmake/vfs_fonts.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.html5.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.print.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-buttons/js/buttons.colVis.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/js/dataTables.fixedColumns.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/js/fixedColumns.bootstrap4.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-rowgroup/js/dataTables.rowGroup.min.js"></script>
<script src="{{ $baseUrl }}/AdminLTE-3.2.0/plugins/datatables-rowgroup/js/rowGroup.bootstrap4.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var srcDate1 = null, srcDate2 = null;
$("#src").keyup(function(e){
if (e.keyCode == 13){
e.preventDefault();
dtTable.draw();
}
});
$("#srcTA").on("change",function(e){
dtTableSalur.draw();
dtTable.draw();
optionDAK();
});
var dtTableSalur = $('#dtTableJadwalPendapatan').DataTable( {
"processing": true,
"serverSide": true,
"ordering": false,
"autoWidth": false,
"ajax": {
url: "{{ $baseUrl }}/jadwal-salurdana/datatable",
type: "POST",
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
data: function (d) {
//d.src = $("#src").val(),
d.ta = $("#srcTA").val(),
d.type_dana = "dak",
d.id_sps = $("#txt_id_sps").val()
}
},
"columnDefs": [
//{ className: "td-nowrap", "targets": [ 1 ] }
],
"dom": "<\"top\" <\"row\"<\"col-md-6\"l><\"col-md-6 text-right\"B>>>rt<\"bottom\" <\"row\"<\"col-md-6\"i><\"col-md-6\"p>> ><\"clear\">",
"lengthMenu": [
[ 10, 20, 50 ],
[ "10", "20", "50" ]
],
"paging": true, // Table pagination
"columns": [
{ "data": null},
{ "data": "kode_rekening", "width": "400px" },
{ "data": "spsbulan1", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan2", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan3", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan4", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan5", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan6", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan7", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan8", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan9", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan10", "className":"text-right" },
{ "data": null, "className":"text-right text-success" },
{ "data": "spsbulan11", "className":"text-right" },
{ "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 = dtTable.page.info();
let numStart = info.page;
let index = (numStart * dtTable.page.len()) + iDisplayIndex + 1;
let sps = [aData["spsbulan1"],aData["spsbulan2"],aData["spsbulan3"],aData["spsbulan4"],aData["spsbulan5"],aData["spsbulan6"]
,aData["spsbulan7"],aData["spsbulan8"],aData["spsbulan9"],aData["spsbulan10"],aData["spsbulan11"],aData["spsbulan12"]];
let real = [aData["real1"],aData["real2"],aData["real3"],aData["real4"],aData["real5"],aData["real6"]
,aData["real7"],aData["real8"],aData["real9"],aData["real10"],aData["real11"],aData["real12"]];
let total = 0;
let totalReal = 0;
let Jadwalcol=0;
$("td:eq(0)", nRow).html(index);
$("td:eq(1)", nRow).html(aData["kode_rekening"] + " | " + aData["nama_rekening"]);
$.each(sps, function(i,x){
Jadwalcol+=2;
$("td:eq("+Jadwalcol+")", nRow).html(separateNumberIndo(sps[i]));
$("td:eq("+(Jadwalcol+1)+")", nRow).html(separateNumberIndo(real[i]));
total+=parseFloat(sps[i]);
totalReal+=parseFloat(real[i]);
})
$("td:eq(26)", nRow).html(separateNumberIndo(total));
$("td:eq(27)", nRow).html(separateNumberIndo(totalReal));
return nRow;
},
"language": {
"lengthMenu": "Tampilkan _MENU_ Data per Halaman",
"zeroRecords": "Data tidak ditemukan!",
"info": "Halaman _PAGE_ dari _PAGES_ Halaman",
"infoEmpty": "Data tidak tersedia",
"infoFiltered": "",
"paginate": {
"previous": "<i class='fas fa-angle-double-left'></i>",
"next": "<i class='fas fa-angle-double-right'></i>",
},
"processing": "<div class='loading'></div>",
},
fixedColumns: {
left: 2,
},
rowGroup: {
endRender: function ( rows, group, index ) {
let sum = [];
let sumReal = [];
let total = 0;
let totalReal = 0;
for(let x=0;x<12;x++){
xx = x+1;
sum[x] = rows.data().pluck("spsbulan"+xx).reduce( function (a, b) {
return a + b * 1;
}, 0);
total += sum[x];
sumReal[x] = rows.data().pluck("real"+xx).reduce( function (a, b) {
return a + b * 1;
}, 0);
totalReal += sumReal[x];
}
let textmuted = index == 1 ? "text-muted":"";
let labelGroup = index == 1 ?"JUMLAH | " + group : "TOTAL";
return $("<tr/>")
.append( "<td></td>")
.append( "<td class=\'text-left " + textmuted +"\'><strong>"+labelGroup+"</strong></td>")
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[0]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[0]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[1]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[1]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[2]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[2]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[3]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[3]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[4]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[4]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[5]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[5]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[6]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[6]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[7]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[7]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[8]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[8]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[9]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[9]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[10]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[10]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(sum[11]) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(sumReal[11]) +"</strong></td>" )
.append( "<td class=\'text-right " + textmuted +"\'><strong>"+ separateNumberIndo(total) +"</strong></td>" )
.append( "<td class='text-success text-right'><strong>"+ separateNumberIndo(totalReal) +"</strong></td>" )
},
startRender: function ( rows, group, index ) {
},
dataSrc: ["groupall"]
},
scrollX:true,
buttons: [
{
extend: "collection",
text: "Export",
buttons: [
{
text: "<i class=\'fas fa-file-excel\'></i> Excel",
className: "export-data link-excel",
attr: {
formid: "frmJadwalSalur",
extype: "excel"
}
},
],
}
],
});
optionDAK = () =>{
$.ajax({
url: '{{ $baseUrl }}/item-search-sps?ta='+$("#srcTA").val()+'&jenis=dak',
dataType: 'json',
success: function (data) {
$('#txt_id_sps').empty();
$('#txt_id_sps').append($('<option>',{value:"",text:""}));
$.map(data, function (item) {
$('#txt_id_sps').append($('<option>', {
value: item.id,
text : item.name
}));
})
},
});
}
$('#txt_id_sps').on('change', function (e) {
dtTableSalur.draw();
})
var dtTable = $('#dtTableJadwalBelanja').DataTable( {
"processing": true,
"serverSide": true,
"ordering": false,
"autoWidth": false,
"ajax": {
url: "{{ $baseUrl }}/jadwal-salurdana/dak/datatable",
type: "POST",
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
data: function (d) {
// d.src = $("#src").val(),
d.ta = $("#srcTA").val()
}
},
"columnDefs": [
//{ className: "td-nowrap", "targets": [ 1 ] }
],
"dom": "<\"top\" <\"row\"<\"col-md-6\"l><\"col-md-6 text-right\">>>rt<\"bottom\" <\"row\"<\"col-md-6\"i><\"col-md-6\"p>> ><\"clear\">",
"lengthMenu": [
[ 10, 25, 50 ],
[ "10", "25", "50" ]
],
"paging": true, // Table pagination
"columns": [
{ "data": null},
{ "data": "nama_skpd", "width": "400px" },
{ "data": "nama_rsk", "width": "400px" },
{ "data": "jumlah_anggaran", "className":"text-right" },
{ "data": "v_akb_01", "className":"text-right" },
{ "data": "v_bku_01", "className":"text-right text-success" },
{ "data": "v_akb_02", "className":"text-right" },
{ "data": "v_bku_02", "className":"text-right text-success" },
{ "data": "v_akb_03", "className":"text-right" },
{ "data": "v_bku_03", "className":"text-right text-success" },
{ "data": "v_akb_04", "className":"text-right" },
{ "data": "v_bku_04", "className":"text-right text-success" },
{ "data": "v_akb_05", "className":"text-right" },
{ "data": "v_bku_05", "className":"text-right text-success" },
{ "data": "v_akb_06", "className":"text-right" },
{ "data": "v_bku_06", "className":"text-right text-success" },
{ "data": "v_akb_07", "className":"text-right" },
{ "data": "v_bku_07", "className":"text-right text-success" },
{ "data": "v_akb_08", "className":"text-right" },
{ "data": "v_bku_08", "className":"text-right text-success" },
{ "data": "v_akb_09", "className":"text-right" },
{ "data": "v_bku_09", "className":"text-right text-success" },
{ "data": "v_akb_10", "className":"text-right" },
{ "data": "v_bku_10", "className":"text-right text-success" },
{ "data": "v_akb_11", "className":"text-right" },
{ "data": "v_bku_11", "className":"text-right text-success" },
{ "data": "v_akb_12", "className":"text-right" },
{ "data": "v_bku_12", "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 = dtTable.page.info();
let numStart = info.page;
let index = (numStart * dtTable.page.len()) + iDisplayIndex + 1;
let akb = [aData["v_akb_01"],aData["v_akb_02"],aData["v_akb_03"],aData["v_akb_04"],aData["v_akb_05"],aData["v_akb_06"]
,aData["v_akb_07"],aData["v_akb_08"],aData["v_akb_09"],aData["v_akb_10"],aData["v_akb_11"],aData["v_akb_12"]];
let real = [aData["v_bku_01"],aData["v_bku_02"],aData["v_bku_03"],aData["v_bku_04"],aData["v_bku_05"],aData["v_bku_06"]
,aData["v_bku_07"],aData["v_bku_08"],aData["v_bku_09"],aData["v_bku_10"],aData["v_bku_11"],aData["v_bku_12"]];
let total = 0;
let totalReal = 0;
let Jadwalcol=4;
$("td:eq(0)", nRow).html(index);
$("td:eq(1)", nRow).html("<div class='text-wrap width-200'>" + aData["kode_skpd"] + " | " + aData["nama_skpd"] + "</div>");
$("td:eq(2)", nRow).html("<div class='text-wrap width-200'>" + aData["kode_rsk"] + " | " + aData["nama_rsk"] + "</div>");
$("td:eq(3)", nRow).html(separateNumberIndo(aData["jumlah_anggaran"]));
$.each(akb, function(i,x){
let nAKB = akb[i] == null ? 0 : parseFloat(akb[i]);
let nReal = real[i] == null ? 0 : parseFloat(real[i]);
$("td:eq("+Jadwalcol+")", nRow).html(separateNumberIndo(nAKB));
Jadwalcol++;
$("td:eq("+(Jadwalcol)+")", nRow).html(separateNumberIndo(nReal));
Jadwalcol++;
total+=parseFloat(nAKB);
totalReal+=parseFloat(nReal);
})
$("td:eq(28)", nRow).html(separateNumberIndo(total));
$("td:eq(29)", nRow).html(separateNumberIndo(totalReal));
return nRow;
},
"language": {
"lengthMenu": "Tampilkan _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>",
},
fixedColumns: {
left: 3,
},
scrollX: true,
scrollY: "350px",
});
optionDAK();
});
</script>
@endsection