131 lines
5.5 KiB
PHP
131 lines
5.5 KiB
PHP
@extends('layouts.app')
|
|
|
|
@section('tajuk', 'Senarai Kehadiran: ' . $sesi->nama)
|
|
|
|
@section('kandungan')
|
|
<div class="kad">
|
|
<h1 class="mb-0">Senarai Kehadiran Taklimat</h1>
|
|
<p class="teks-kecil mb-0">
|
|
{{ $sesi->dun->code ?? '' }} — {{ $sesi->dun->nama ?? '' }} |
|
|
{{ $sesi->nama }} ({{ $sesi->tarikh->format('d/m/Y') }}) | {{ $sesi->lokasi }}
|
|
</p>
|
|
</div>
|
|
|
|
<div class="stat-grid">
|
|
<div class="stat">
|
|
<div class="nilai">{{ $hadir->count() + $tidakHadir->count() }}</div>
|
|
<div class="label">Jumlah Petugas</div>
|
|
</div>
|
|
<div class="stat">
|
|
<div class="nilai" style="color:var(--hijau)">{{ $hadir->count() }}</div>
|
|
<div class="label">Hadir</div>
|
|
</div>
|
|
<div class="stat">
|
|
<div class="nilai" style="color:var(--merah)">{{ $tidakHadir->count() }}</div>
|
|
<div class="label">Tidak / Belum Hadir</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="kad" style="overflow-x:auto; padding:0;">
|
|
<table class="jadual">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="8" style="background:var(--hijau)">HADIR ({{ $hadir->count() }})</th>
|
|
</tr>
|
|
<tr>
|
|
<th>Siri</th>
|
|
<th>Nama</th>
|
|
<th>No. Telefon</th>
|
|
<th>Emel</th>
|
|
<th>Pusat Mengundi</th>
|
|
<th>Saluran</th>
|
|
<th>Jawatan</th>
|
|
<th>Borang</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@forelse ($hadir as $p)
|
|
@php
|
|
$penempatan = $p->butiranPenempatan();
|
|
$rekod = $kehadiran->get($p->id);
|
|
@endphp
|
|
<tr>
|
|
<td><strong>{{ $rekod?->nombor_siri_papar }}</strong></td>
|
|
<td>{{ $p->nama_ic }}</td>
|
|
<td>{{ $p->no_telefon ?? '-' }}</td>
|
|
<td>{{ $p->emel ?? '-' }}</td>
|
|
<td>{{ $penempatan['pusat_mengundi'] }}</td>
|
|
<td>{{ $penempatan['saluran'] }}</td>
|
|
<td>{{ $penempatan['jawatan'] }}</td>
|
|
<td>
|
|
@if ($rekod?->borang_diambil)
|
|
<span class="lencana lencana-hijau">Diambil</span>
|
|
@else
|
|
<span class="lencana lencana-kelabu">Belum</span>
|
|
@endif
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr><td colspan="8" class="teks-tengah">Tiada petugas hadir lagi.</td></tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="kad" style="overflow-x:auto; padding:0;">
|
|
<table class="jadual">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="7" style="background:var(--merah)">TIDAK / BELUM HADIR ({{ $tidakHadir->count() }})</th>
|
|
</tr>
|
|
<tr>
|
|
<th>Nama</th>
|
|
<th>No. Telefon</th>
|
|
<th>Emel</th>
|
|
<th>Pusat Mengundi</th>
|
|
<th>Saluran</th>
|
|
<th>Jawatan</th>
|
|
<th>Hubungi</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@forelse ($tidakHadir as $p)
|
|
@php
|
|
$penempatan = $p->butiranPenempatan();
|
|
$telefon = preg_replace('/[^0-9]/', '', $p->no_telefon ?? '');
|
|
$waNombor = $telefon !== '' ? (str_starts_with($telefon, '60') ? $telefon : '6' . $telefon) : '';
|
|
@endphp
|
|
<tr>
|
|
<td>{{ $p->nama_ic }}</td>
|
|
<td>{{ $p->no_telefon ?? '-' }}</td>
|
|
<td>{{ $p->emel ?? '-' }}</td>
|
|
<td>{{ $penempatan['pusat_mengundi'] }}</td>
|
|
<td>{{ $penempatan['saluran'] }}</td>
|
|
<td>{{ $penempatan['jawatan'] }}</td>
|
|
<td>
|
|
@if ($telefon !== '')
|
|
<div class="baris-tindakan">
|
|
<a class="btn btn-kecil btn-hijau" target="_blank" rel="noopener"
|
|
href="https://wa.me/{{ $waNombor }}?text={{ urlencode('Salam, ini peringatan taklimat petugas SPR bagi ' . ($sesi->dun->nama ?? '') . ' pada ' . $sesi->tarikh->format('d/m/Y') . ' di ' . $sesi->lokasi . '. Mohon hadir, terima kasih.') }}">
|
|
WhatsApp
|
|
</a>
|
|
<a class="btn btn-kecil" href="tel:{{ $telefon }}">Call</a>
|
|
</div>
|
|
@else
|
|
<span class="teks-kecil">Tiada no. telefon</span>
|
|
@endif
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr><td colspan="7" class="teks-tengah">Semua petugas telah hadir.</td></tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="baris-tindakan tiada-cetak">
|
|
<a href="{{ route('sesi.show', $sesi) }}" class="btn btn-luar">Kembali ke Sesi</a>
|
|
<button onclick="window.print()" class="btn">Cetak Senarai</button>
|
|
</div>
|
|
@endsection
|