Update Dinamis header dan form input
This commit is contained in:
@@ -55,13 +55,8 @@
|
||||
$jumlahPerlu = $semuaItem->where('prioritas', KelengkapanPetani::PERLU)->count();
|
||||
@endphp
|
||||
|
||||
@if ($tab)
|
||||
@if ($semuaItem->isEmpty())
|
||||
<div class="alert alert-success d-flex align-items-center py-2 mb-6" role="alert">
|
||||
<i class="icon-base ti tabler-circle-check me-2"></i>
|
||||
{{ $tab === 'semua' ? 'Semua isian wajib dan perlu sudah terisi.' : 'Semua isian wajib dan perlu di tab ini sudah terisi.' }}
|
||||
</div>
|
||||
@else
|
||||
{{-- Kartu hanya muncul kalau masih ada yang kosong; tab yang sudah lengkap tidak diberi kotak tambahan. --}}
|
||||
@if ($tab && $semuaItem->isNotEmpty())
|
||||
{{-- Klik di mana saja pada kartu untuk membuka/menutup detail (kecuali tombol isian). --}}
|
||||
<div class="card mb-6 border border-warning kartu-kelengkapan" id="kelengkapan-petani"
|
||||
role="button" aria-expanded="false" aria-controls="kelengkapan-petani-detail" title="Klik untuk menampilkan/menyembunyikan detail">
|
||||
@@ -111,7 +106,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@once
|
||||
@push('style')
|
||||
|
||||
@@ -15,30 +15,39 @@
|
||||
$bisaTandai = $petani->bisaDitandaiOleh(auth()->user());
|
||||
@endphp
|
||||
|
||||
<hr class="my-2">
|
||||
<div class="d-flex justify-content-between align-items-center mb-1">
|
||||
<h6 class="mb-0" style="font-size: 0.85rem;">Kelengkapan Data</h6>
|
||||
<span class="badge bg-label-{{ $status->warna() }}">{{ $status->label() }}</span>
|
||||
</div>
|
||||
@php
|
||||
// Rincian dipindah ke tooltip supaya kartu Profil tetap pendek (sejajar kartu ringkasan di kanan).
|
||||
$rincian = collect([
|
||||
"{$hitung['terisi']} dari {$hitung['total']} isian terisi",
|
||||
$hitung['tidak_berlaku'] ? "{$hitung['tidak_berlaku']} isian tidak berlaku untuk petani ini" : null,
|
||||
$wajibKosong ? "{$wajibKosong} isian wajib masih kosong" : 'Semua isian wajib sudah terisi',
|
||||
match (true) {
|
||||
$bisaTandai => null,
|
||||
$status === StatusDataPetani::DRAFT => 'Hanya enumerator penginput yang dapat menandai lengkap',
|
||||
$status === StatusDataPetani::LENGKAP => 'Menunggu verifikasi koordinator',
|
||||
default => null,
|
||||
},
|
||||
$bisaTandai && $status === StatusDataPetani::LENGKAP ? 'Mengubah data petani akan mengembalikan status ke Draf' : null,
|
||||
])->filter()->implode(' · ');
|
||||
@endphp
|
||||
|
||||
<div class="d-flex justify-content-between" style="font-size: 0.75rem;">
|
||||
<span>{{ $hitung['terisi'] }} dari {{ $hitung['total'] }} isian terisi</span>
|
||||
<span class="fw-medium">{{ $hitung['persen'] }}%</span>
|
||||
<hr class="my-2">
|
||||
<div title="{{ $rincian }}" data-bs-toggle="tooltip" data-bs-placement="bottom">
|
||||
<div class="d-flex justify-content-between align-items-center" style="font-size: 0.75rem;">
|
||||
<span class="d-flex align-items-center gap-1">
|
||||
<span class="fw-medium text-heading">Kelengkapan</span>
|
||||
<span class="badge badge-sm bg-label-{{ $status->warna() }}">{{ $status->label() }}</span>
|
||||
@if ($wajibKosong)
|
||||
<span class="badge badge-sm bg-label-danger">{{ $wajibKosong }} wajib</span>
|
||||
@endif
|
||||
</span>
|
||||
<span><span class="text-muted">{{ $hitung['terisi'] }}/{{ $hitung['total'] }}</span> <span class="fw-medium">{{ $hitung['persen'] }}%</span></span>
|
||||
</div>
|
||||
<div class="progress mt-1" style="height: 4px;">
|
||||
<div class="progress-bar {{ $hitung['persen'] >= 100 ? 'bg-success' : '' }}" role="progressbar"
|
||||
style="width: {{ $hitung['persen'] }}%;" aria-valuenow="{{ $hitung['persen'] }}" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="progress my-1" style="height: 6px;">
|
||||
<div class="progress-bar {{ $hitung['persen'] >= 100 ? 'bg-success' : '' }}" role="progressbar"
|
||||
style="width: {{ $hitung['persen'] }}%;" aria-valuenow="{{ $hitung['persen'] }}" aria-valuemin="0" aria-valuemax="100"></div>
|
||||
</div>
|
||||
<p class="mb-0 text-muted" style="font-size: 0.7rem;">
|
||||
@if ($hitung['tidak_berlaku'])
|
||||
{{ $hitung['tidak_berlaku'] }} isian tidak berlaku untuk petani ini.
|
||||
@endif
|
||||
@if ($wajibKosong)
|
||||
<span class="text-danger">{{ $wajibKosong }} isian wajib masih kosong.</span>
|
||||
@else
|
||||
<span class="text-success">Semua isian wajib sudah terisi.</span>
|
||||
@endif
|
||||
</p>
|
||||
|
||||
@if ($bisaTandai && $status === StatusDataPetani::DRAFT)
|
||||
<form method="POST" action="{{ route('petani.status.update', $petani->id) }}" class="form-status-petani mt-2"
|
||||
@@ -50,7 +59,7 @@
|
||||
@method('PUT')
|
||||
<input type="hidden" name="status" value="{{ StatusDataPetani::LENGKAP->value }}">
|
||||
<input type="hidden" name="pernyataan" value="0">
|
||||
<button type="submit" class="btn btn-sm btn-primary w-100" @disabled($wajibKosong > 0)
|
||||
<button type="submit" class="btn btn-xs btn-primary w-100" @disabled($wajibKosong > 0)
|
||||
@if ($wajibKosong) title="Lengkapi {{ $wajibKosong }} isian wajib terlebih dahulu" @endif>
|
||||
<i class="icon-base ti tabler-checks icon-sm me-1"></i>Tandai Sudah Lengkap
|
||||
</button>
|
||||
@@ -61,15 +70,10 @@
|
||||
@csrf
|
||||
@method('PUT')
|
||||
<input type="hidden" name="status" value="{{ StatusDataPetani::DRAFT->value }}">
|
||||
<button type="submit" class="btn btn-sm btn-outline-secondary w-100">
|
||||
<button type="submit" class="btn btn-xs btn-outline-secondary w-100">
|
||||
<i class="icon-base ti tabler-arrow-back-up icon-sm me-1"></i>Batalkan Tanda Lengkap
|
||||
</button>
|
||||
</form>
|
||||
<p class="mb-0 mt-1 text-muted fst-italic" style="font-size: 0.7rem;">Mengubah data petani akan mengembalikan status ke Draf.</p>
|
||||
@elseif ($status === StatusDataPetani::DRAFT)
|
||||
<p class="mb-0 mt-1 text-muted fst-italic" style="font-size: 0.7rem;">Hanya enumerator penginput yang dapat menandai lengkap.</p>
|
||||
@elseif ($status === StatusDataPetani::LENGKAP)
|
||||
<p class="mb-0 mt-1 text-muted fst-italic" style="font-size: 0.7rem;">Menunggu verifikasi koordinator.</p>
|
||||
@endif
|
||||
|
||||
@once
|
||||
|
||||
Reference in New Issue
Block a user