MIF_E31221225/resources/views/admin/siswa/index.blade.php

164 lines
6.2 KiB
PHP

@extends('admin.layouts.app')
@section('title', 'Data Siswa')
@section('content')
<section class="section">
<div class="section-header">
<h1>Data Siswa</h1>
<div class="section-header-breadcrumb">
<div class="breadcrumb-item"><a href="{{ route('admin.dashboard') }}">Dashboard</a></div>
<div class="breadcrumb-item active">Data Siswa</div>
</div>
</div>
{{-- Notifikasi sukses --}}
@if (session('success'))
<div class="alert alert-success alert-dismissible show fade">
<div class="alert-body">
{{ session('success') }}
<button class="close" data-dismiss="alert">
<span>&times;</span>
</button>
</div>
</div>
@endif
{{-- Notifikasi error --}}
@if ($errors->any())
<div class="alert alert-danger alert-dismissible show fade">
<div class="alert-body">
<ul class="mb-0">
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
<button class="close" data-dismiss="alert">
<span>&times;</span>
</button>
</div>
</div>
@endif
<div class="section-body">
<div class="card">
<div class="card-header">
<h4>Filter, Import/Export & Data Siswa</h4>
</div>
<div class="card-body">
{{-- Filter dan tombol --}}
<div class="d-flex justify-content-between flex-wrap mb-4 gap-3">
{{-- Filter Kelas dan Tahun Ajaran --}}
<form method="GET" action="{{ route('admin.siswa.index') }}" class="form-inline">
<div class="form-group mr-3">
<label for="kelas_id" class="mr-2">Kelas</label>
<select name="kelas_id" id="kelas_id" class="form-control" onchange="this.form.submit()">
<option value="">-- Semua Kelas --</option>
@foreach ($kelasList as $kelas)
<option value="{{ $kelas->id }}" {{ request('kelas_id') == $kelas->id ? 'selected' : '' }}>
{{ $kelas->nama_kelas }} (Tingkat {{ $kelas->tingkat }})
</option>
@endforeach
</select>
</div>
<div class="form-group">
<label for="tahun_ajaran_id" class="mr-2">Tahun Ajaran</label>
<select name="tahun_ajaran_id" id="tahun_ajaran_id" class="form-control" onchange="this.form.submit()">
<option value="">-- Semua Tahun --</option>
@foreach ($tahunAjaranList as $ta)
<option value="{{ $ta->id }}" {{ request('tahun_ajaran_id') == $ta->id ? 'selected' : '' }}>
{{ $ta->tahun }} {{ ucfirst($ta->semester) }}
</option>
@endforeach
</select>
</div>
</form>
{{-- Tombol Import, Export, Tambah, Lulus --}}
<div>
<form action="{{ route('admin.siswa.import') }}" method="POST" enctype="multipart/form-data" id="importForm" class="d-inline">
@csrf
<input type="file" name="file" id="file" class="d-none" onchange="document.getElementById('importForm').submit()" required>
<label for="file" class="btn btn-success mb-0" title="Import Excel" style="cursor: pointer;">
<i class="fas fa-file-import"></i>
</label>
</form>
<a href="{{ route('admin.siswa.export') }}" class="btn btn-info" title="Export Excel">
<i class="fas fa-file-export"></i>
</a>
<a href="{{ route('admin.siswa.create', ['kelas_id' => request('kelas_id')]) }}" class="btn btn-primary" title="Tambah Siswa">
<i class="fas fa-user-plus"></i> Tambah Siswa
</a>
<a href="{{ route('admin.siswa.lulus') }}" class="btn btn-secondary" title="Lihat Siswa Lulus">
<i class="fas fa-graduation-cap"></i> Siswa Lulus
</a>
</div>
</div>
{{-- Tabel Data --}}
<div class="table-responsive">
<table class="table table-striped table-md">
<thead>
<tr>
<th>#</th>
<th>Kelas</th>
<th>Tingkat</th>
<th>Tahun Ajaran</th>
<th>NISN</th>
<th>Nama</th>
<th>Jenis Kelamin</th>
<th>Alamat</th>
<th>Email</th>
<th>Aksi</th>
</tr>
</thead>
<tbody>
@forelse($data as $index => $siswa)
<tr>
<td>{{ $data->firstItem() + $index }}</td>
<td>{{ $siswa->kelas->nama_kelas ?? '-' }}</td>
<td>{{ $siswa->kelas->tingkat ?? '-' }}</td>
<td>{{ $siswa->tahunAjaran->tahun ?? '-' }} {{ ucfirst($siswa->tahunAjaran->semester ?? '-') }}</td>
<td>{{ $siswa->nisn }}</td>
<td>{{ $siswa->nama }}</td>
<td>{{ $siswa->jenis_kelamin == 'L' ? 'Laki-laki' : 'Perempuan' }}</td>
<td>{{ $siswa->alamat ?? '-' }}</td>
<td>{{ $siswa->user->email ?? '-' }}</td>
<td>
<a href="{{ route('admin.siswa.edit', $siswa->id) }}" class="btn btn-warning btn-action mr-1" title="Edit">
<i class="fas fa-edit"></i>
</a>
<form action="{{ route('admin.siswa.destroy', $siswa->id) }}" method="POST" class="d-inline" onsubmit="return confirm('Yakin ingin menghapus data ini?')">
@csrf
@method('DELETE')
<button class="btn btn-danger btn-action" title="Hapus">
<i class="fas fa-trash"></i>
</button>
</form>
</td>
</tr>
@empty
<tr>
<td colspan="10" class="text-center">Belum ada data siswa.</td>
</tr>
@endforelse
</tbody>
</table>
</div>
{{-- Pagination --}}
<div class="mt-3">
{{ $data->links('pagination::bootstrap-4') }}
</div>
</div>
</div>
</div>
</section>
@endsection