Files
KarbonDatacenter/resources/views/submissions/show.blade.php
2026-06-24 20:32:14 +08:00

112 lines
6.3 KiB
PHP

@extends('layouts.app')
@section('title', 'Butiran Serahan')
@section('heading', 'Serahan')
@section('page-title', $submission->dataCentre->nama_pusat_data)
@section('subtitle', 'Pelaporan '.$submission->reportingCycle->reporting_year.' • Pembaharuan '.$submission->reportingCycle->renewal_year)
@section('actions')
@if ($submission->isEditableByConsultant() && auth()->user()->can('update', $submission))
<a href="{{ route('submissions.edit', $submission) }}" class="btn btn-outline-primary"><i class="bi bi-pencil me-1"></i> Isi / Kemaskini</a>
@endif
@endsection
@section('content')
@php($canReview = auth()->user()->can('review', $submission))
<div class="d-flex flex-wrap gap-2 mb-3 align-items-center">
<span class="badge bg-{{ $submission->statusBadgeClass() }} fs-6">{{ $submission->statusLabel() }}</span>
@if($submission->is_locked)<span class="badge bg-danger"><i class="bi bi-lock-fill"></i> Dikunci</span>@endif
<span class="text-muted small">Perunding: {{ $submission->consultant->nama_perunding }}</span>
@if($submission->submitted_at)<span class="text-muted small"> Dihantar: {{ $submission->submitted_at->format('d/m/Y H:i') }}</span>@endif
</div>
<div class="row g-3">
<div class="col-lg-8">
{{-- ===== Jawapan senarai semak ===== --}}
@foreach ($template?->sections ?? [] as $section)
<div class="card mb-3">
<div class="card-header checklist-section-header"><span class="badge bg-success me-1">{{ $section->code }}</span> <strong>{{ $section->title }}</strong></div>
<div class="card-body p-0">
<table class="table table-sm mb-0 align-middle">
<thead><tr><th class="ps-3">Item</th><th>Nilai</th><th>m/s</th><th>Catatan Perunding</th>@if($canReview)<th>Semakan</th>@endif</tr></thead>
<tbody>
@foreach ($section->items as $item)
@php($a = $answers[$item->id] ?? null)
<tr>
<td class="ps-3"><span class="text-muted small">{{ $item->code }}</span> {{ $item->label }}</td>
<td>{{ $a?->value !== null && $a?->value !== '' ? $a->value : '—' }} <span class="text-muted small">{{ $item->unit }}</span></td>
<td>{{ $a?->page_reference ?: '—' }}</td>
<td class="small">{{ $a?->consultant_note ?: '—' }}</td>
@if($canReview)
<td>
@if($a)
<button class="btn btn-sm btn-link p-0" data-bs-toggle="modal" data-bs-target="#reviewAns{{ $a->id }}">
@php($vs = $a->validation_status)
<span class="badge bg-{{ $vs==='sah'?'success':($vs==='tidak_sah'?'danger':'secondary') }}">{{ ['belum_semak'=>'Belum Semak','sah'=>'Sah','tidak_sah'=>'Tidak Sah'][$vs] ?? $vs }}</span>
</button>
@else @endif
</td>
@endif
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
@endforeach
@include('submissions._comments', ['submission' => $submission])
</div>
{{-- ===== Panel sisi ===== --}}
<div class="col-lg-4">
@include('submissions._results_panel', ['submission' => $submission])
@include('submissions._documents_panel', ['submission' => $submission])
@if($canReview || auth()->user()->can('markHardcopy', $submission))
@include('submissions._review_panel', ['submission' => $submission, 'officers' => $officers])
@endif
@include('submissions._corrections_panel', ['submission' => $submission])
{{-- Sejarah status --}}
<div class="card mb-3"><div class="card-header bg-white fw-semibold"><i class="bi bi-clock-history me-1"></i> Sejarah Status</div>
<div class="card-body p-0"><ul class="list-group list-group-flush small">
@forelse ($submission->statusHistories as $h)
<li class="list-group-item">
<span class="badge bg-secondary">{{ App\Models\Submission::STATUSES[$h->from_status] ?? $h->from_status ?? '—' }}</span>
<span class="badge bg-primary">{{ App\Models\Submission::STATUSES[$h->to_status] ?? $h->to_status }}</span>
<div class="text-muted">{{ $h->changedBy?->name }} {{ $h->created_at->format('d/m/Y H:i') }}</div>
@if($h->notes)<div>{{ $h->notes }}</div>@endif
</li>
@empty
<li class="list-group-item text-muted">Tiada sejarah.</li>
@endforelse
</ul></div>
</div>
</div>
</div>
{{-- Modal semakan item (pegawai) --}}
@if($canReview)
@foreach ($submission->answers as $a)
<div class="modal fade" id="reviewAns{{ $a->id }}" tabindex="-1"><div class="modal-dialog"><div class="modal-content">
<form method="POST" action="{{ route('answers.review', $a) }}">
@csrf
<div class="modal-header"><h6 class="modal-title">Semakan Item {{ $a->item->code ?? '' }}</h6><button type="button" class="btn-close" data-bs-dismiss="modal"></button></div>
<div class="modal-body">
<div class="mb-2"><label class="form-label">Status Pengesahan</label>
<select name="validation_status" class="form-select">
<option value="belum_semak" @selected($a->validation_status==='belum_semak')>Belum Semak</option>
<option value="sah" @selected($a->validation_status==='sah')>Sah</option>
<option value="tidak_sah" @selected($a->validation_status==='tidak_sah')>Tidak Sah</option>
</select>
</div>
<div class="mb-2"><label class="form-label">Nota Pegawai</label><textarea name="officer_note" class="form-control">{{ $a->officer_note }}</textarea></div>
</div>
<div class="modal-footer"><button class="btn btn-success btn-sm">Simpan</button></div>
</form>
</div></div></div>
@endforeach
@endif
@endsection