300 lines
17 KiB
PHP
300 lines
17 KiB
PHP
@php
|
|
$siteBreadcumb = [
|
|
["url"=>"/jadwal-salurdana","label"=>$siteTitle],
|
|
];
|
|
@endphp
|
|
|
|
@extends('layouts.app')
|
|
|
|
@section('styles')
|
|
<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-rowgroup/css/rowGroup.bootstrap4.min.css">
|
|
<link rel="stylesheet" href="/AdminLTE-3.2.0/plugins/datatables-fixedcolumns/css/fixedColumns.bootstrap4.min.css">
|
|
@endsection
|
|
|
|
@section('card_header')
|
|
<div class="card-header">
|
|
<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-success" onclick="location.href='{{ route('salur-dana.create') }}'"><i class="fa fa-edit"></i> Tambah Data</button> --}}
|
|
{{-- @endif --}}
|
|
</div>
|
|
</div>
|
|
@stop
|
|
|
|
@section('content')
|
|
<div class="row">
|
|
<div class="col-1">
|
|
<div class="form-group">
|
|
<label>Periode</label>
|
|
<select class="form-control form-control-sm" id="srcTA">
|
|
@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>Berdasarkan Kata</label>
|
|
<input class="form-control form-control-sm" type="text" id="src">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<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>
|
|
@stop
|
|
@section('scripts')
|
|
<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 src="/AdminLTE-3.2.0/plugins/datatables-rowgroup/js/dataTables.rowGroup.min.js"></script>
|
|
<script src="/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){
|
|
dtTable.draw();
|
|
});
|
|
|
|
var dtTable = $('#dtTableJadwalPendapatan').DataTable( {
|
|
"processing": true,
|
|
"serverSide": true,
|
|
"ordering": false,
|
|
"autoWidth": false,
|
|
"ajax": {
|
|
url: "/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()
|
|
}
|
|
},
|
|
"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": [
|
|
[ 20, 50, 75, 100 ],
|
|
[ "20", "50", "75", "100" ]
|
|
],
|
|
"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]);
|
|
console.log(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": "(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,
|
|
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 ) {
|
|
// let group1 = rows.data().pluck("GROUP1");
|
|
// let group2 = rows.data().pluck("GROUP2");
|
|
|
|
// let groupNumber = index == 0 ? group1[0] : group2[0];
|
|
// if (index == 0){
|
|
// return $("<tr/>")
|
|
// .append("<td colspan=5><a href=\'/akun/index/detail/?acc="+groupNumber.split(".").join("_")+"\'>" + groupNumber + ". " + group + "</a></td>")
|
|
// }else{
|
|
// return $("<tr/>")
|
|
// .append("<td colspan=5> <a href=\'/akun/index/detail/?acc="+groupNumber.split(".").join("_")+"\'><strong>" + groupNumber + ". " + group + "</strong></a></td>")
|
|
// }
|
|
},
|
|
dataSrc: ["groupall", "kodegrup"]
|
|
},
|
|
});
|
|
});
|
|
</script>
|
|
@endsection |