Commit f0c64929 authored by Syaifur Rohman's avatar Syaifur Rohman

fix statistic at dashboard when Nan

parent 3bc5fc42
......@@ -15,7 +15,7 @@
{{-- <li class="breadcrumb-item">Dashboard</li>
<li class="breadcrumb-item active">Sample Page</li> --}}
@endcomponent
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
......@@ -63,7 +63,7 @@
<h1 class="text-center mb-5">Petunjuk Penggunaan</h1>
<h3>Petunjuk Struktur Kelas</h3>
<p>Untuk menyesuaikan Kurikulum 2013 dan Merdeka, Aplikasi yang kami membuat menyesuaikan dengan cara yang Bapak/Ibu bisa ikuti menyesuaikan dengan yang berlaku di sekolah: </p>
<div class="mb-5">
<h5 class="text-center">Contoh Struktur Kelas Kurikulum 2013</h5>
<table class="table text-center" border="1">
......@@ -136,7 +136,7 @@
@if (session()->get('role') == 1)
<div class="row">
<div class="col-6" id="chartJmlSekolahJenisSekolah" style="height: 500px;"></div>
<div class="col-6" id="chartJmlSiswaJenisSekolah" style="height: 500px;"></div>
<div class="col-6" id="chartJmlSiswaJenisSekolah" style="height: 500px;"></div>
</div>
@endif
</div>
......@@ -146,7 +146,7 @@
</div>
</div>
@push('scripts')
<script src="{{ asset('assets/js/datatable/datatables/jquery.dataTables.min.js') }}"></script>
<script>
......@@ -165,32 +165,32 @@
<tr>
<td>Belum Ada Absensi</td>
<td>${response.belum_ada_absensi}</td>
<td>${((response.belum_ada_absensi / total) * 100).toFixed(2)}%</td>
<td>${total > 0 ? ((response.belum_ada_absensi / total) * 100).toFixed(2) : 0}%</td>
</tr>
<tr>
<td>Hadir</td>
<td>${response.hadir}</td>
<td>${((response.hadir / total) * 100).toFixed(2)}%</td>
<td>${total > 0 ? ((response.hadir / total) * 100).toFixed(2) : 0}%</td>
</tr>
<tr>
<td>Tidak Hadir</td>
<td>${response.tidak_hadir}</td>
<td>${((response.tidak_hadir / total) * 100).toFixed(2)}%</td>
<td>${total > 0 ? ((response.tidak_hadir / total) * 100).toFixed(2) : 0}%</td>
</tr>
<tr>
<td>Terlambat</td>
<td>${response.terlambat}</td>
<td>${((response.terlambat / total) * 100).toFixed(2)}%</td>
<td>${total > 0 ? ((response.terlambat / total) * 100).toFixed(2) : 0}%</td>
</tr>
<tr>
<td>Ijin</td>
<td>${response.ijin}</td>
<td>${((response.ijin / total) * 100).toFixed(2)}%</td>
<td>${total > 0 ? ((response.ijin / total) * 100).toFixed(2) : 0}%</td>
</tr>
<tr>
<td>Sakit</td>
<td>${response.sakit}</td>
<td>${((response.sakit / total) * 100).toFixed(2)}%</td>
<td>${total > 0 ? ((response.sakit / total) * 100).toFixed(2) : 0}%</td>
</tr>
`;
$('#attendance-stats').html(rows);
......@@ -208,6 +208,13 @@
google.charts.load('current', {'packages':['corechart']});
function drawChartKehadiranSiswa(data) {
// Check if all values are 0
if (data.belum_ada_absensi === 0 && data.hadir === 0 && data.tidak_hadir === 0 &&
data.terlambat === 0 && data.ijin === 0 && data.sakit === 0) {
document.getElementById('chartKehadiranSiswa').innerHTML = '<p class="text-center">Tidak ada data untuk ditampilkan.</p>';
return;
}
// Create the data table
var dataTable = new google.visualization.DataTable();
dataTable.addColumn('string', 'Status');
......@@ -237,13 +244,13 @@
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChartJmlSekolah);
google.charts.setOnLoadCallback(drawChartJmlSiswa);
function drawChartJmlSekolah() {
// Membuat DataTable baru
var data = new google.visualization.DataTable();
data.addColumn('string', 'Jenis Sekolah');
data.addColumn('number', 'Jumlah Sekolah');
// Panggilan AJAX ke API
$.ajax({
url: baseUrl+'/chart/jenis-sekolah/getChartJmlSekolah/',
......@@ -253,12 +260,12 @@
response.forEach(function(row) {
data.addRow([row.jenis, parseInt(row.jumlah)]);
});
// Setelan opsional untuk chart
var options = {
title: 'Jumlah Sekolah per Jenis Sekolah'
};
// Menggambar chart
var chart = new google.visualization.PieChart(document.getElementById('chartJmlSekolahJenisSekolah'));
chart.draw(data, options);
......@@ -274,7 +281,7 @@
var data = new google.visualization.DataTable();
data.addColumn('string', 'Jenis Sekolah');
data.addColumn('number', 'Jumlah Siswa');
// Panggilan AJAX ke API
$.ajax({
url: baseUrl+'/chart/jenis-sekolah/getChartJmlSiswa/',
......@@ -284,12 +291,12 @@
response.forEach(function(row) {
data.addRow([row.jenis, parseInt(row.jumlah)]);
});
// Setelan opsional untuk chart
var options = {
title: 'Jumlah Siswa per Jenis Sekolah'
};
// Menggambar chart
var chart = new google.visualization.PieChart(document.getElementById('chartJmlSiswaJenisSekolah'));
chart.draw(data, options);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment