Update BUMDes

This commit is contained in:
2026-11-05 19:20:05 +07:00
parent 9cdd178297
commit c55ff109a0
73 changed files with 6699 additions and 1548 deletions
+130 -135
View File
@@ -1,144 +1,117 @@
<style>
@media (min-width: 768px) {
.nav-pills-custom-spacing {
display: flex;
width: 100%;
gap: 0.5rem;
flex-wrap: nowrap !important;
overflow-x: auto;
}
<x-bumdes-alert />
.nav-pills-custom-spacing::-webkit-scrollbar {
display: none;
}
.nav-pills-custom-spacing .nav-item {
margin-right: 0 !important;
flex: 1;
}
.nav-pills-custom-spacing .nav-link {
display: flex;
justify-content: center;
align-items: center;
padding-left: 0.5rem !important;
padding-right: 0.5rem !important;
width: 100%;
white-space: nowrap;
font-size: 0.9375rem !important;
}
.nav-pills-custom-spacing .nav-link i {
margin-right: 0.4rem !important;
}
}
</style>
@php
$jenisKelamin = isset($pengurus)
? ($pengurus->jenis_kelamin ? 'Laki-laki' : 'Perempuan')
: 'Jenis Kelamin';
$jabatanLabel = isset($pengurus) ? $pengurus->nama_jabatan : 'Jabatan/Peran';
$domisili = isset($pengurus) && $pengurus->desaKelurahan
? $pengurus->desaKelurahan->nama . ', ' . $pengurus->desaKelurahan->kecamatan?->nama . ', ' . $pengurus->desaKelurahan->kecamatan?->kabupatenKota?->nama . ', ' . $pengurus->desaKelurahan->kecamatan?->kabupatenKota?->provinsi?->nama
: 'Desa/Kelurahan, Kecamatan, Kabupaten/Kota, Provinsi';
@endphp
<div class="row mb-4">
<div class="col-md-4 mb-2 mb-md-0">
<div class="card h-100">
<div class="card-body p-3">
<h6 class="card-title mb-2">Profil Pengurus BUMDes</h6>
<div class="d-flex justify-content-start align-items-center mb-3">
<div class="avatar me-2">
<section class="card bumdes-profile-summary mb-4" id="bumdes-profile-summary" aria-label="Ringkasan profil BUMDes">
<div class="card-body p-3 p-lg-4">
<div class="row g-3 align-items-start">
<div class="col-12 col-lg-5">
<div class="d-flex align-items-start gap-3">
<span class="avatar flex-shrink-0" aria-hidden="true">
<span class="avatar-initial rounded bg-label-primary">
<i class="icon-base ti tabler-user-check icon-22px"></i>
<i class="icon-base ti tabler-building-community icon-22px"></i>
</span>
</div>
<div class="d-flex flex-column">
<h6 class="mb-0" style="font-size: 0.9rem;">{{ isset($pengurus) ? $pengurus->nama : 'Tambah Pengurus BUMDes Baru' }}</h6>
<span class="text-muted" style="font-size: 0.75rem;">{{ $jenisKelamin }}</span>
<span class="text-muted" style="font-size: 0.75rem;">Jabatan: {{ $jabatanLabel }}</span>
</div>
</div>
<hr class="my-2">
<h6 class="mb-1" style="font-size: 0.85rem;">Domisili</h6>
<p class="mb-0 text-muted" style="font-size: 0.75rem;">Alamat: {{ isset($pengurus) ? $pengurus->alamat : 'Alamat' }}</p>
<p class="mb-0 text-muted" style="font-size: 0.75rem; line-height: 1.3;">{{ $domisili }}</p>
</div>
</div>
</div>
<div class="col-md-8 d-flex flex-column">
<div class="card mb-2 flex-grow-1">
<div class="card-widget-separator-wrapper h-100">
<div class="card-body card-widget-separator py-2 h-100 d-flex flex-column justify-content-center">
<div class="row gy-2">
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-center card-widget-1 border-end h-100 pe-3">
<div>
<p class="mb-0 text-muted" style="font-size: 0.75rem;">Jenis Kelamin</p>
<h5 class="mb-0">{{ $jenisKelamin }}</h5>
<p class="mb-0" style="font-size: 0.75rem;">
<span class="me-1">{{ isset($pengurus) ? ($pengurus->usia . ' tahun') : 'Belum terisi' }}</span>
</p>
</div>
<span class="avatar">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-users icon-22px text-heading"></i>
</span>
</span>
</div>
</div>
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-center card-widget-1 border-end h-100 px-3">
<div>
<p class="mb-0 text-muted" style="font-size: 0.75rem;">Jabatan</p>
<h5 class="mb-0">{{ $jabatanLabel }}</h5>
<p class="mb-0" style="font-size: 0.75rem;">
<span class="me-1">{{ isset($pengurus) ? $pengurus->lama_menjabat : 'Belum terisi' }}</span>
</p>
</div>
<span class="avatar">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-briefcase icon-22px text-heading"></i>
</span>
</span>
</div>
</div>
<div class="col-sm-6 col-lg-4">
<div class="d-flex justify-content-between align-items-center card-widget-1 h-100 ps-3">
<div>
<p class="mb-0 text-muted" style="font-size: 0.75rem;">Domisili</p>
<h5 class="mb-0">{{ isset($pengurus) ? ($pengurus->desaKelurahan?->nama ?? '-') : '-' }}</h5>
<p class="mb-0" style="font-size: 0.75rem;">
<span class="me-1">{{ isset($pengurus) ? ($pengurus->desaKelurahan?->kecamatan?->nama ?? '-') : 'Belum terisi' }}</span>
</p>
</div>
<span class="avatar">
<span class="avatar-initial rounded">
<i class="icon-base ti tabler-map-pin icon-22px text-heading"></i>
</span>
</span>
</div>
</div>
</span>
<div class="bumdes-summary-content">
<h5 class="mb-1 text-break">{{ $ringkasanProfil['judul'] }}</h5>
<p class="small text-muted mb-1 text-break">
<i class="icon-base ti tabler-map-pin icon-16px me-1" aria-hidden="true"></i>{{ $ringkasanProfil['lokasi'] }}
</p>
<p class="small mb-0 text-break"><span class="text-muted">Alamat:</span> {{ $ringkasanProfil['alamat'] }}</p>
</div>
</div>
</div>
</div>
<div class="card flex-grow-1">
<div class="card-body py-3 d-flex align-items-center">
<div class="w-100">
<p class="mb-1 text-muted" style="font-size: 0.75rem;">Alamat Domisili</p>
<h6 class="mb-0">{{ isset($pengurus) ? ($pengurus->alamat ?: '-') : '-' }}</h6>
<p class="mb-0 text-muted" style="font-size: 0.75rem;">{{ $domisili }}</p>
<div class="col-12 col-lg-7">
<div class="row g-3">
<div class="col-12 col-sm-6">
<p class="bumdes-summary-label mb-1">Keaktifan</p>
<span class="badge bg-label-{{ $ringkasanProfil['keaktifan']['warna'] }}">{{ $ringkasanProfil['keaktifan']['label'] }}</span>
</div>
<div class="col-12 col-sm-6">
<p class="bumdes-summary-label mb-1">Badan Hukum</p>
<span class="badge bg-label-{{ $ringkasanProfil['hukum']['warna'] }}">{{ $ringkasanProfil['hukum']['label'] }}</span>
</div>
<div class="col-12">
<p class="bumdes-summary-label mb-1">Unit Usaha</p>
@if(count($ringkasanProfil['unit_usaha']))
<div class="d-flex flex-wrap align-items-start gap-2">
@foreach(array_slice($ringkasanProfil['unit_usaha'], 0, 2) as $unit)
<span class="badge bg-label-primary">{{ $unit }}</span>
@endforeach
@if(count($ringkasanProfil['unit_usaha']) > 2)
<button class="btn btn-sm btn-text-primary p-0 bumdes-summary-more" type="button" data-bs-toggle="collapse" data-bs-target="#bumdes-summary-extra-units" aria-expanded="false" aria-controls="bumdes-summary-extra-units">+{{ count($ringkasanProfil['unit_usaha']) - 2 }} lainnya</button>
@endif
</div>
@if(count($ringkasanProfil['unit_usaha']) > 2)
<div class="collapse" id="bumdes-summary-extra-units">
<div class="d-flex flex-wrap gap-2 pt-2">
@foreach(array_slice($ringkasanProfil['unit_usaha'], 2) as $unit)
<span class="badge bg-label-primary">{{ $unit }}</span>
@endforeach
</div>
</div>
@endif
@else
<p class="small mb-0 text-muted">Belum terisi</p>
@endif
</div>
</div>
</div>
</div>
</div>
</div>
<div class="card-footer p-3 py-lg-2 px-lg-4">
<div class="row gy-3">
<div class="col-sm-6 col-lg-3 d-flex align-items-center">
<span class="avatar avatar-sm me-2 flex-shrink-0" aria-hidden="true">
<span class="avatar-initial rounded-circle bg-label-primary">
<i class="icon-base ti tabler-user icon-16px"></i>
</span>
</span>
<div class="bumdes-summary-content">
<p class="bumdes-summary-label mb-0">Nama Responden</p>
<span class="fw-medium small text-break">{{ $ringkasanProfil['responden'] }}</span>
</div>
</div>
<div class="col-sm-6 col-lg-3 d-flex align-items-center">
<span class="avatar avatar-sm me-2 flex-shrink-0" aria-hidden="true">
<span class="avatar-initial rounded-circle bg-label-primary">
<i class="icon-base ti tabler-briefcase icon-16px"></i>
</span>
</span>
<div class="bumdes-summary-content">
<p class="bumdes-summary-label mb-0">Jabatan Responden</p>
<span class="fw-medium small text-break">{{ $ringkasanProfil['jabatan'] }}</span>
</div>
</div>
<div class="col-sm-6 col-lg-3 d-flex align-items-center">
<span class="avatar avatar-sm me-2 flex-shrink-0" aria-hidden="true">
<span class="avatar-initial rounded-circle bg-label-primary">
<i class="icon-base ti tabler-phone icon-16px"></i>
</span>
</span>
<div class="bumdes-summary-content">
<p class="bumdes-summary-label mb-0">Kontak Responden</p>
<span class="fw-medium small text-break">{{ $ringkasanProfil['nomor_telepon'] }}</span>
</div>
</div>
<div class="col-sm-6 col-lg-3 d-flex align-items-center">
<span class="avatar avatar-sm me-2 flex-shrink-0" aria-hidden="true">
<span class="avatar-initial rounded-circle bg-label-primary">
<i class="icon-base ti tabler-calendar-event icon-16px"></i>
</span>
</span>
<div class="bumdes-summary-content">
<p class="bumdes-summary-label mb-0">Diperbarui</p>
<span class="fw-medium small">
@if($ringkasanProfil['diperbarui'])
<time datetime="{{ $ringkasanProfil['diperbarui']->toIso8601String() }}">{{ $ringkasanProfil['diperbarui']->locale('id')->translatedFormat('d M Y, H:i') }}</time>
@else
{{ isset($pengurus) ? 'Belum terisi' : 'Belum tersimpan' }}
@endif
</span>
</div>
</div>
</div>
</div>
</section>
<div class="nav-align-top">
<ul class="nav nav-pills flex-column flex-md-row mb-6 row-gap-2 nav-pills-custom-spacing">
@@ -148,15 +121,37 @@
</a>
</li>
<li class="nav-item">
@if(isset($pengurus))
@if($pengurus?->profilLengkap())
<a class="nav-link {{ request()->routeIs('bumdes.kelembagaan-aktor.*') ? 'active' : '' }}" href="{{ route('bumdes.kelembagaan-aktor.index', $pengurus->id) }}">
<i class="icon-base ti tabler-building-community icon-sm"></i>Kelembagaan dan Aktor
<i class="icon-base ti tabler-building-community me-1_5 icon-sm"></i>Kelembagaan
</a>
@else
<a class="nav-link" href="#" disabled data-bs-original-title="Kelembagaan dan Aktor, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-building-community icon-sm"></i>Kelembagaan dan Aktor
<a class="nav-link disabled" href="#" aria-disabled="true" data-bs-original-title="Kelembagaan, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-building-community me-1_5 icon-sm"></i>Kelembagaan
</a>
@endif
</li>
<li class="nav-item">
@if($pengurus?->profilLengkap())
<a class="nav-link {{ request()->routeIs('bumdes.operasional.*') ? 'active' : '' }}" href="{{ route('bumdes.operasional.index', $pengurus->id) }}">
<i class="icon-base ti tabler-clipboard-list me-1_5 icon-sm"></i>Operasional
</a>
@else
<span class="nav-link disabled" aria-disabled="true" data-bs-original-title="Operasional, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-clipboard-list me-1_5 icon-sm"></i>Operasional
</span>
@endif
</li>
<li class="nav-item">
@if($pengurus?->profilLengkap())
<a class="nav-link {{ request()->routeIs('bumdes.rantai-nilai.*') ? 'active' : '' }}" href="{{ route('bumdes.rantai-nilai.index', $pengurus->id) }}">
<i class="icon-base ti tabler-arrows-exchange me-1_5 icon-sm"></i>Rantai Nilai &amp; Akses Pasar
</a>
@else
<span class="nav-link disabled" aria-disabled="true" data-bs-original-title="Rantai Nilai &amp; Akses Pasar, isi profil terlebih dahulu" data-bs-toggle="tooltip" data-bs-placement="top">
<i class="icon-base ti tabler-arrows-exchange me-1_5 icon-sm"></i>Rantai Nilai &amp; Akses Pasar
</span>
@endif
</li>
</ul>
</div>