MIF_E31231754/resources/views/admin/penilaian/show.blade.php

250 lines
11 KiB
PHP

@extends('admin.layouts.app')
@section('title', 'Detail Penilaian Warga')
@section('content')
<div class="container-fluid">
<!-- Breadcrumb -->
<nav aria-label="breadcrumb" class="mb-4">
<ol class="breadcrumb">
<li class="breadcrumb-item"><a href="{{ route('admin.dashboard') }}">Dashboard</a></li>
<li class="breadcrumb-item"><a href="{{ route('admin.penilaian.index') }}">Penilaian Warga</a></li>
<li class="breadcrumb-item active">Detail Penilaian</li>
</ol>
</nav>
<!-- Header -->
<div class="d-flex justify-content-between align-items-center mb-4">
<div>
<h2 class="mb-1"><i class="bi bi-file-text me-2"></i>Detail Penilaian Warga</h2>
<p class="text-muted mb-0">Informasi lengkap penilaian untuk: <strong>{{ $warga->nama }}</strong></p>
</div>
<div class="d-flex gap-2">
<a href="{{ route('admin.penilaian.edit', $warga->id) }}" class="btn btn-warning">
<i class="bi bi-pencil me-2"></i>Edit Penilaian
</a>
<a href="{{ route('admin.penilaian.index') }}" class="btn btn-outline-secondary">
<i class="bi bi-arrow-left me-2"></i>Kembali
</a>
</div>
</div>
<div class="row">
<!-- Data Warga -->
<div class="col-md-4 mb-4">
<div class="card shadow-sm border-0 h-100">
<div class="card-header bg-primary text-white">
<h5 class="mb-0"><i class="bi bi-person-circle me-2"></i>Data Warga</h5>
</div>
<div class="card-body">
<table class="table table-sm table-borderless">
<tr>
<td width="120" class="text-muted">Nama</td>
<td>: <strong>{{ $warga->nama }}</strong></td>
</tr>
<tr>
<td class="text-muted">NIK</td>
<td>: {{ $warga->nik }}</td>
</tr>
<tr>
<td class="text-muted">Alamat</td>
<td>: {{ $warga->alamat }}</td>
</tr>
<tr>
<td class="text-muted">Dusun</td>
<td>: {{ $warga->dusun }}</td>
</tr>
<tr>
<td class="text-muted">RT/RW</td>
<td>: {{ $warga->rt }}/{{ $warga->rw }}</td>
</tr>
@if ($warga->wilayah)
<tr>
<td class="text-muted">Wilayah</td>
<td>: {{ $warga->wilayah->nama_wilayah }}</td>
</tr>
@endif
<tr>
<td class="text-muted">Status</td>
<td>:
@if ($warga->is_aktif)
<span class="badge bg-success">Aktif</span>
@else
<span class="badge bg-secondary">Tidak Aktif</span>
@endif
</td>
</tr>
</table>
</div>
</div>
</div>
<!-- Periode Seleksi -->
<div class="col-md-4 mb-4">
<div class="card shadow-sm border-0 h-100">
<div class="card-header bg-info text-white">
<h5 class="mb-0"><i class="bi bi-calendar-event me-2"></i>Periode Seleksi</h5>
</div>
<div class="card-body">
<table class="table table-sm table-borderless">
<tr>
<td width="120" class="text-muted">Nama Periode</td>
<td>: <strong>{{ $periodeAktif->nama }}</strong></td>
</tr>
<tr>
<td class="text-muted">Tanggal Mulai</td>
<td>: {{ \Carbon\Carbon::parse($periodeAktif->tanggal_mulai)->format('d F Y') }}</td>
</tr>
<tr>
<td class="text-muted">Tanggal Selesai</td>
<td>: {{ \Carbon\Carbon::parse($periodeAktif->tanggal_selesai)->format('d F Y') }}</td>
</tr>
<tr>
<td class="text-muted">Kuota Penerima</td>
<td>: {{ $periodeAktif->kuota_penerima }} orang</td>
</tr>
<tr>
<td class="text-muted">Status</td>
<td>:
@if ($periodeAktif->status == 'aktif')
<span class="badge bg-primary">{{ ucfirst($periodeAktif->status) }}</span>
@else
<span class="badge bg-secondary">{{ ucfirst($periodeAktif->status) }}</span>
@endif
</td>
</tr>
</table>
</div>
</div>
</div>
<!-- Ringkasan Penilaian -->
<div class="col-md-4 mb-4">
<div class="card shadow-sm border-0 h-100">
<div class="card-header bg-success text-white">
<h5 class="mb-0"><i class="bi bi-graph-up me-2"></i>Ringkasan Penilaian</h5>
</div>
<div class="card-body">
@php
$totalNilai = $penilaian->sum('nilai');
$rataRata = $penilaian->count() > 0 ? $totalNilai / $penilaian->count() : 0;
$nilaiTertinggi = $penilaian->max('nilai');
$nilaiTerendah = $penilaian->min('nilai');
@endphp
<div class="text-center mb-3">
<div class="display-4 text-success fw-bold">{{ number_format($rataRata, 2) }}</div>
<small class="text-muted">Rata-rata Nilai</small>
</div>
<hr>
<div class="row text-center">
<div class="col-6">
<h4 class="text-primary mb-0">{{ $nilaiTertinggi }}</h4>
<small class="text-muted">Nilai Tertinggi</small>
</div>
<div class="col-6">
<h4 class="text-warning mb-0">{{ $nilaiTerendah }}</h4>
<small class="text-muted">Nilai Terendah</small>
</div>
</div>
<hr>
<div class="text-center">
<h5 class="mb-0">{{ $penilaian->count() }}/7</h5>
<small class="text-muted">Kriteria Dinilai</small>
</div>
</div>
</div>
</div>
</div>
<!-- Detail Nilai Per Kriteria -->
<div class="card shadow-sm border-0">
<div class="card-header bg-white py-3">
<h5 class="mb-0"><i class="bi bi-list-check me-2"></i>Detail Nilai Per Kriteria</h5>
</div>
<div class="card-body p-0">
<div class="table-responsive">
<table class="table table-hover table-striped mb-0">
<thead class="table-success">
<tr>
<th width="80" class="text-center">Kode</th>
<th>Nama Kriteria</th>
<th width="100" class="text-center">Jenis</th>
<th width="100" class="text-center">Bobot</th>
<th width="100" class="text-center">Nilai</th>
<th>Keterangan</th>
</tr>
</thead>
<tbody>
@foreach ($kriteria as $k)
@php
$nilaiItem = $penilaian->where('kriteria_id', $k->id)->first();
$nilai = $nilaiItem ? $nilaiItem->nilai : null;
$keterangan = $nilai ? \App\Models\PenilaianWarga::getNilaiLabel($k->kode, $nilai) : '-';
@endphp
<tr>
<td class="text-center">
<span class="badge bg-primary">{{ $k->kode }}</span>
</td>
<td><strong>{{ $k->nama }}</strong></td>
<td class="text-center">
@if ($k->jenis == 'benefit')
<span class="badge bg-info">Benefit</span>
@else
<span class="badge bg-warning text-dark">Cost</span>
@endif
</td>
<td class="text-center">{{ number_format($k->bobot, 2) }}</td>
<td class="text-center">
@if ($nilai)
<span class="badge bg-success fs-6">{{ $nilai }}</span>
@else
<span class="text-muted">-</span>
@endif
</td>
<td>
@if ($nilai)
<small>{{ $keterangan }}</small>
@else
<small class="text-muted">Belum dinilai</small>
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<!-- Action Buttons -->
<div class="d-flex justify-content-between mt-4">
<a href="{{ route('admin.penilaian.index') }}" class="btn btn-outline-secondary">
<i class="bi bi-arrow-left me-2"></i>Kembali ke Daftar
</a>
<div class="d-flex gap-2">
<a href="{{ route('admin.penilaian.edit', $warga->id) }}" class="btn btn-warning">
<i class="bi bi-pencil me-2"></i>Edit Penilaian
</a>
<form action="{{ route('admin.penilaian.destroy', $warga->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Yakin ingin menghapus penilaian warga ini?')">
@csrf
@method('DELETE')
<button type="submit" class="btn btn-danger">
<i class="bi bi-trash me-2"></i>Hapus Penilaian
</button>
</form>
</div>
</div>
</div>
@push('styles')
<style>
.table-borderless td {
padding: 0.5rem 0;
}
.display-4 {
font-size: 3rem;
}
</style>
@endpush
@endsection