first commit

This commit is contained in:
Saufi
2026-06-24 20:32:14 +08:00
commit 10fb30ad69
201 changed files with 21356 additions and 0 deletions

View File

@@ -0,0 +1,87 @@
@php($canReview = auth()->user()->can('review', $submission))
<div class="card mb-3 border-primary">
<div class="card-header bg-white fw-semibold text-primary"><i class="bi bi-clipboard-check me-1"></i> Tindakan JPP</div>
<div class="card-body">
@if($canReview)
{{-- Tukar status --}}
<form method="POST" action="{{ route('submissions.status', $submission) }}" class="mb-3">
@csrf
<label class="form-label small fw-semibold">Tukar Status</label>
<select name="status" class="form-select form-select-sm mb-2" id="statusSelect">
@foreach (App\Models\Submission::STATUSES as $k => $v)<option value="{{ $k }}" @selected($submission->status===$k)>{{ $v }}</option>@endforeach
</select>
<div class="mb-2" id="hardcopySentWrap" style="display:none">
<label class="form-label small">Tarikh hardcopy dihantar ke Bahagian Kawalan Perancangan</label>
<input type="date" name="hardcopy_sent_date" class="form-control form-control-sm" value="{{ $submission->hardcopy_sent_date?->toDateString() }}">
</div>
<textarea name="notes" rows="2" class="form-control form-control-sm mb-2" placeholder="Nota status (pilihan)"></textarea>
<button class="btn btn-sm btn-primary w-100">Kemaskini Status</button>
<div class="form-text">Status "Pembetulan Perunding" perlu ada permohonan pembetulan terbuka.</div>
</form>
{{-- Pegawai bertanggungjawab --}}
<form method="POST" action="{{ route('submissions.assign-officer', $submission) }}" class="mb-3">
@csrf
<label class="form-label small fw-semibold">Pegawai Bertanggungjawab</label>
<div class="input-group input-group-sm">
<select name="assigned_officer_id" class="form-select">
<option value=""> Tiada </option>
@foreach ($officers as $o)<option value="{{ $o->id }}" @selected($submission->assigned_officer_id==$o->id)>{{ $o->name }}</option>@endforeach
</select>
<button class="btn btn-outline-primary">Set</button>
</div>
</form>
{{-- Nota semakan keseluruhan --}}
<form method="POST" action="{{ route('submissions.review-note', $submission) }}" class="mb-3">
@csrf
<label class="form-label small fw-semibold">Nota Semakan</label>
<textarea name="review_notes" rows="2" class="form-control form-control-sm mb-2">{{ $submission->review_notes }}</textarea>
<button class="btn btn-sm btn-outline-secondary w-100">Simpan Nota</button>
</form>
@endif
{{-- Salinan keras --}}
@can('markHardcopy', $submission)
<form method="POST" action="{{ route('submissions.hardcopy', $submission) }}" class="mb-3">
@csrf
<label class="form-label small fw-semibold">Dokumen Salinan Keras (Hardcopy)</label>
<div class="form-check"><input type="hidden" name="hardcopy_received" value="0"><input type="checkbox" name="hardcopy_received" value="1" class="form-check-input" id="hcReceived" @checked($submission->hardcopy_received)><label for="hcReceived" class="form-check-label">Telah diterima</label></div>
<input type="date" name="hardcopy_received_date" class="form-control form-control-sm my-2" value="{{ $submission->hardcopy_received_date?->toDateString() }}">
<button class="btn btn-sm btn-outline-secondary w-100">Simpan</button>
</form>
@endcan
{{-- Kunci / buka kunci --}}
@can('lock', $submission)
<hr>
@if(!$submission->is_locked)
<form method="POST" action="{{ route('submissions.lock', $submission) }}">
@csrf
<input type="text" name="lock_reason" class="form-control form-control-sm mb-2" placeholder="Sebab kunci (pilihan)">
<button class="btn btn-sm btn-danger w-100" data-confirm="Kunci serahan ini? Perunding tidak boleh mengubah."><i class="bi bi-lock me-1"></i> Kunci Serahan</button>
</form>
@else
<form method="POST" action="{{ route('submissions.unlock', $submission) }}">
@csrf
@if($submission->lock_reason)<div class="small text-muted mb-1">Sebab kunci: {{ $submission->lock_reason }}</div>@endif
<input type="text" name="lock_reason" class="form-control form-control-sm mb-2" placeholder="Sebab buka kunci (wajib)" required>
<button class="btn btn-sm btn-warning w-100"><i class="bi bi-unlock me-1"></i> Buka Kunci</button>
</form>
@endif
@endcan
</div>
</div>
@push('scripts')
<script>
(function () {
const sel = document.getElementById('statusSelect');
const wrap = document.getElementById('hardcopySentWrap');
if (sel && wrap) {
const toggle = () => wrap.style.display = sel.value === 'selesai' ? 'block' : 'none';
sel.addEventListener('change', toggle); toggle();
}
})();
</script>
@endpush