@extends('layouts.index')
@push('css')
{{-- bootstrapt tabel plugins --}}
<link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/bootstrap-table.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css">
<link href="https://unpkg.com/[email protected]/dist/extensions/sticky-header/bootstrap-table-sticky-header.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" rel="stylesheet" />
<link rel="stylesheet" type="text/css" href="{{asset('assets/css/custom.css')}}">
<link rel="stylesheet" type="text/css" href="{{asset('assets/libs/bootstrap-datepicker/css/bootstrap-datepicker.min.css')}}">
@endpush
@section('content')
<div class="page-content">
<div class="container-fluid">
<!-- start page title -->
<div class="row">
<div class="col-12">
<div class="page-title-box d-flex align-items-center justify-content-between">
<div class="page-title">
<h4 class="mb-0 font-size-18">Realisasi Pekerjaan Mendesak Pemerintah Kota Samarinda</h4>
<ol class="breadcrumb">
<li class="breadcrumb-item active">Welcome to {{ env('APP_NAME') }}</li>
</ol>
</div>
</div>
</div>
</div>
<!-- end page title -->
<div class="page-content-wrapper">
<div class="row">
<div class="col">
<div class="card">
<div class="card-body">
<div class="d-flex justify-content-between w-100 align-items-center mt-5 table-responsive">
@role('admin|admin-opd|monev')
<form action="" class="d-flex w-100 mx-4">
<div class="mx-1 w-50" style="margin-top:28px">
<select name="pd" id="" class="form-control select-opd">
@role('admin|monev')
@if(Auth::user()->opd_id == null)
<option value="all" @if($request->get('pd') == 'all') SELECTED @endif>Pemerintah Kota Samarinda</option>
@endif
@endrole
@role('admin')
{{-- <option value="">Pilih Perangkat Daerah</option> --}}
@foreach ($opd as $item)
<option value="{{ $item->id }}" @if($request->get('pd') == $item->id ) SELECTED @endif>{{ $item->nama_perangkat_daerah }}</option>
@endforeach
@endrole
@role('admin-opd|monev')
@foreach ($opd as $item)
<option value="{{ $item->id }}" @if(Auth::user()->opd_id == $item->id ) SELECTED @endif>{{ $item->nama_perangkat_daerah }}</option>
@endforeach
@endrole
</select>
</div>
<div class="mx-1">
<label for="tanggal_awal">Tanggal Awal</label>
<input id="tanggal_awal" type="text" value="{{ ($request->tanggal_awal) ? $request->tanggal_awal : '' }}" name="tanggal_awal" class="form-control tanggal_awal_akhir" autocomplete="off">
</div>
<div class="mx-1">
<label for="tanggal_akhir">Tanggal Akhir</label>
<input id="tanggal_akhir" type="text" value="{{ ($request->tanggal_akhir) ? $request->tanggal_akhir : '' }}" name="tanggal_akhir" class="form-control tanggal_awal_akhir" autocomplete="off">
</div>
<div class="mx-1" style="margin-top:28px">
<button class="btn btn-warning">Filter</button>
</div>
<div class="mx-1" style="margin-top:28px">
<a href="{{url('/pekerjaan_mendesak')}}" class="btn btn-success">Reset</a>
</div>
<div class="mx-1" style="margin-top:28px">
<button class="btn btn-success" type="submit" name="printpdf" value="print">
<img height="20" src="{{ asset('pdf-download-icon.png') }}" alt="download-to-pdf">
</button>
</div>
</form>
@endrole
<div>
</div>
</div>
<div class="d-flex flex-column justify-content-center w-100 align-items-around"
style="display: block">
<div class="table-responsive py-4" style="padding: 25px;">
<table id="table" class="table table-flush" data-height="500" data-show-columns="true">
<thead class="thead-light">
<tr class="biasa">
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">No</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Kode/Kode Rekening</th>
<th class="break-word align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Bidang/Sub Bidang/Sub Kegiatan/Pekerjaan</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Pagu</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Nilai Kontrak</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" colspan="3">Realisasi</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Sisa Pagu Kontrak</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">SKPD PELAKSANA</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">PPTK</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Permasalahan</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Tindak Lanjut</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)" rowspan="2">Dokumentasi</th>
</tr>
<tr class="biasa">
<th class="align-middle text-center" style="background: rgb(220, 218, 218)">Fisik (%)</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)">KEU (Rp)</th>
<th class="align-middle text-center" style="background: rgb(220, 218, 218)">KEU (%)</th>
</tr>
</thead>
<tbody>
<tr class="align-middle text-center">
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td>6</td>
<td>7</td>
<td>8</td>
<td>9</td>
<td>10</td>
<td>11</td>
<td>12</td>
<td>13</td>
<td>14</td>
</tr>
<tr class="table-info">
<td class="align-middle text-center" colspan="3">TOTAL</td>
<td class="text-nowrap text-end" >Rp{{ number_format($bidangs->flatten()->sum('bidang_pagu_sum'), 0, ',', '.') }}</td>
<td class="text-nowrap text-end" >Rp{{ number_format($bidangs->flatten()->sum('bidang_nilai_kontrak_sum'), 0, ',', '.') }}</td>
<td class="text-center">{{ number_format($bidangs->flatten()->sum('PercentFisik')/($bidangs->flatten()->sum('bidang_pagu_sum') > 0 ? $bidangs->flatten()->sum('bidang_pagu_sum'):1), 2, ',', '.')}}%</td>
<td class="text-nowrap text-end">Rp{{number_format($bidangs->flatten()->sum("bidang_realisasi_keuangan_sum"), 0, ',', '.')}}</td>
<td class="text-center">{{number_format(($bidangs->flatten()->sum("bidang_realisasi_keuangan_sum")/($bidangs->flatten()->sum('bidang_pagu_sum') > 0 ? $bidangs->flatten()->sum('bidang_pagu_sum'):1))*100, 2, ',', '.')}}%</td>
<td class="text-nowrap text-end" >Rp{{ number_format($bidangs->flatten()->sum('bidang_pagu_berjalan_sum') - $bidangs->flatten()->sum('bidang_nilai_kontrak_sum'), 0, ',', '.') }}</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
@foreach ($bidangs as $bidang)
<tr class="table-primary">
<td></td>
<td></td>
<td class="text-start">{{ $bidang->nama }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($bidang->bidang_pagu_sum, 0, ',', '.') }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($bidang->bidang_nilai_kontrak_sum, 0, ',', '.') }}</td>
<td class="text-center">{{ number_format($bidang->PercentFisik / $bidang->bidang_pagu_sum , 2, ',', '.') }}%</td>
<td class="text-nowrap text-end">Rp{{number_format($bidang->bidang_realisasi_keuangan_sum, 0, ',', '.')}}</td>
<td class="text-center">{{number_format(($bidang->bidang_realisasi_keuangan_sum/($bidang->bidang_pagu_sum > 0 ? $bidang->bidang_pagu_sum : 1))*100,2 , ',', '.')}}%</td>
<td class="text-nowrap text-end">Rp{{ number_format($bidang->bidang_pagu_berjalan_sum - $bidang->bidang_nilai_kontrak_sum, 0, ',', '.') }}</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
@foreach ($bidang->RincianSubBidang as $subbidang)
<tr class="table-secondary">
<td></td>
<td>{{ $subbidang->nomor }}</td>
<td class="text-start">{{ $subbidang->nama }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($subbidang->sub_bidang_pagu_sum, 0, ',', '.') }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($subbidang->sub_bidang_nilai_kontrak_sum, 0, ',', '.') }}</td>
<td class="text-center">{{ number_format($subbidang->PercentFisik / ($subbidang->sub_bidang_pagu_sum > 0 ? $subbidang->sub_bidang_pagu_sum : 1) , 2, ',', '.') }}%</td>
<td class="text-nowrap text-end">Rp{{number_format($subbidang->sub_bidang_realisasi_keuangan_sum, 0, ',', '.')}}</td>
<td class="text-center">{{number_format(($subbidang->sub_bidang_realisasi_keuangan_sum/($subbidang->sub_bidang_pagu_sum > 0 ? $subbidang->sub_bidang_pagu_sum : 1))*100,2 , ',', '.')}}%</td>
<td class="text-nowrap text-end">Rp{{ number_format($subbidang->sub_bidang_pagu_berjalan_sum - $subbidang->sub_bidang_nilai_kontrak_sum, 0, ',', '.') }}</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
@foreach ($subbidang->prokerSubKegiatan as $keysk => $rincianKegiatans)
<tr class="table-warning">
@php
[$namaSK, $kodeSK] = explode('_', $keysk);
@endphp
<td></td>
<td class="text-start">{{ $kodeSK }}</td>
<td class="text-start">{{ $namaSK }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($rincianKegiatans->flatten()->sum('pagu') , 0, ',', '.') }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($rincianKegiatans->flatten()->sum('kontrak') , 0, ',', '.') }}</td>
<td class="text-center">
{{ number_format($rincianKegiatans->map(function ($rinciankegiatan) {
return ($rinciankegiatan->pagu * ($rinciankegiatan->RealisasiRincianKegiatan->realisasiFisik->sum('realisasi') / max($rinciankegiatan->volume,1)) * 100);
})->sum() / $rincianKegiatans->flatten()->sum('pagu') ,2 , ',', '.') }}%
</td>
<td class="text-nowrap text-end">Rp{{ number_format($rincianKegiatans->flatten()->sum('keuangan') , 0, ',', '.') }}</td>
<td class="text-center">
{{ number_format(($rincianKegiatans->flatten()->sum('keuangan')/$rincianKegiatans->flatten()->sum('pagu'))*100 ,2 , ',', '.') }}%
</td>
<td class="text-nowrap text-end">Rp{{ number_format($rincianKegiatans->flatten()->sum('paguBerjalan') - $rincianKegiatans->flatten()->sum('kontrak') , 0, ',', '.') }}</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
@foreach ($rincianKegiatans as $rk)
<tr class="table-light">
<td></td>
<td class="text-start">{{ $rk->kode_rekening }}</td>
<td class="text-start">{{ $rk->uraian }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($rk->pagu , 0, ',', '.') }}</td>
<td class="text-nowrap text-end">Rp{{ number_format($rk->kontrak , 0, ',', '.') }}</td>
<td class="text-center">{{$rk->RealisasiRincianKegiatan?number_format(($rk->RealisasiRincianKegiatan->realisasiFisik->sum('realisasi')/($rk->volume == 0 ? 1 : $rk->volume ))*100 ,2 , ',', '.'):"0"}}%</td>
<td class="text-nowrap text-end">
Rp{{ $rk->RealisasiRincianKegiatan ? number_format($rk->RealisasiRincianKegiatan->realisasiKeuangan->sum(function ($item) {
return is_numeric($item->realisasi) ? $item->realisasi : 0;
}) , 0, ',', '.') : "-" }}
</td>
<td class="text-center">
{{$rk->RealisasiRincianKegiatan?number_format(($rk->RealisasiRincianKegiatan->realisasiKeuangan->sum(function ($item) {
return is_numeric($item->realisasi) ? $item->realisasi : 0;
})/($rk->pagu != 0 ? $rk->pagu : 1 ))*100 ,2 , ',', '.'):"0"}}%
</td>
<td class="text-nowrap text-end">Rp{{ number_format($rk->paguBerjalan - $rk->kontrak , 0, ',', '.') }}</td>
<td>{{ $rk->Opd->nama_perangkat_daerah }}</td>
<td>{{ $rk->ProkerSubKegiatan->pptk->nama ?? '-' }}</td>
<td>
{{ optional($rk->RealisasiRincianKegiatan->permasalahanTindakLanjut->first())->permasalahan }}
</td>
<td>
{{ optional($rk->RealisasiRincianKegiatan->permasalahanTindakLanjut->first())->tindaklanjut }}
</td>
<td>
@forelse($rk->RealisasiRincianKegiatan->dokumen->sortBy('keterangan')->groupBy('keterangan') as $keterangan => $docs)
{{ $keterangan == 0 ? 'Dokumen Kontrak, SK dan lain-lain' : ($keterangan == 1 ? 'Dokumentasi Kegiatan' : 'Dokumen Berita Acara Serah Terima') }}
@forelse($docs as $doc)
<div>
File {{ $loop->iteration }} : <br>
@php
$opciones_ssl = array(
"ssl" => array(
"verify_peer" => false,
"verify_peer_name" => false,
),
);
$file_path = public_path("assets/document/$doc->file_name"); // Sesuaikan dengan lokasi file
$extencion = pathinfo($file_path, PATHINFO_EXTENSION);
@endphp
@if(in_array(strtolower($extencion), ['jpg', 'jpeg', 'png', 'gif', 'webp']))
<a href="{{ asset("assets/document/$doc->file_name") }}" target="_blank">
<img data-enlargable src="{{ asset("assets/document/$doc->file_name") }}" alt="{{ $doc->file_name }}" height="100vh">
</a>
@elseif(strtolower($extencion) === 'pdf' or strtolower($extencion) === 'xlsx' or strtolower($extencion) === 'xls' or strtolower($extencion) === 'xlsm' or strtolower($extencion) === 'xlsb' or strtolower($extencion) === 'docx' or strtolower($extencion) === 'doc')
<a href="{{ asset("assets/document/$doc->file_name") }}" target="_blank">📄 Download File</a><br>
@else
<p>File tidak didukung</p><br>
@endif
</div>
@empty
<div>
Tidak Dapat Memuat File
</div>
@endforelse
@empty
<div>
Tidak Ada Dokumentasi
</div>
@endforelse
</td>
</tr>
@endforeach
@endforeach
@endforeach
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
@push('js')
{{-- bootrapt tabel --}}
<script src="https://unpkg.com/[email protected]/dist/bootstrap-table.min.js"></script>
<script src="https://unpkg.com/[email protected]/dist/extensions/sticky-header/bootstrap-table-sticky-header.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<script src="{{asset('assets/libs/bootstrap-datepicker/js/bootstrap-datepicker.min.js')}}"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>
{{-- <script>
$('img[data-enlargable]').addClass('img-enlargable').click(function(){
var src = $(this).attr('src');
var encodedSrc = encodeURIComponent(src); // Encode the URL
// Create a container to display the enlarged image
var $container = $('<div>').css({
background: 'RGBA(0,0,0,.5)',
width: '100%',
height: '100%',
position: 'fixed',
zIndex: '10000',
top: '0',
left: '0',
cursor: 'zoom-out',
}).appendTo('body');
// Create an image element inside the container
$('<img>').attr('src', src).css({
maxWidth: '100%',
maxHeight: '100%',
margin: 'auto',
display: 'block',
}).appendTo($container);
// Click anywhere on the container to close it
$container.click(function(){
$(this).remove();
});
});
</script> --}}
<script type="text/javascript">
$('.select-opd').select2({
width:'100%',
});
$('.tanggal_awal_akhir').datepicker({
format:'yyyy-mm-dd',
autoclose:true,
});
$(document).ready(function() {
navbarHeight = parseInt($('#page-topbar').css('height'));
$('#table').bootstrapTable({
// stickyHeader: true,
showFullscreen: true,
stickyHeaderOffsetY: navbarHeight,
theadClasses: "table-light",
}).on('load-fullscreen.bs.table', function () {
// Add icon when entering fullscreen mode
$('.fullscreen.btn').html('<i class="fas fa-compress"></i> Fullscreen');
}).on('unload-fullscreen.bs.table', function () {
// Remove icon when exiting fullscreen mode
$('.fullscreen.btn').html('<i class="fas fa-expand"></i> Fullscreen');
});
});
</script>
@endpush
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]