Nilai Akhir
This commit is contained in:
parent
417f376921
commit
aea065ebfe
|
@ -139,11 +139,13 @@ public function nilaiUtility(Request $request)
|
||||||
} else {
|
} else {
|
||||||
// Lakukan perhitungan nilai utility
|
// Lakukan perhitungan nilai utility
|
||||||
$utility = (($bobot - $minBobot) / $denominator);
|
$utility = (($bobot - $minBobot) / $denominator);
|
||||||
$nilaiUtility[$extracurricularId][$criteriaId] = $utility;
|
$nilaiUtility[$extracurricularId][$criteriaId] = number_format($utility, 2, '.', '');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
session(['nilaiUtility' => $nilaiUtility]);
|
||||||
|
|
||||||
// Ambil semua kriteria dan ekstrakurikuler untuk ditampilkan di view
|
// Ambil semua kriteria dan ekstrakurikuler untuk ditampilkan di view
|
||||||
$criterias = Criteria::all();
|
$criterias = Criteria::all();
|
||||||
$extracuricullars = Extracuricullar::all();
|
$extracuricullars = Extracuricullar::all();
|
||||||
|
@ -152,6 +154,81 @@ public function nilaiUtility(Request $request)
|
||||||
return view('perhitungan.nilai-utility', compact('criterias', 'extracuricullars', 'nilaiUtility'));
|
return view('perhitungan.nilai-utility', compact('criterias', 'extracuricullars', 'nilaiUtility'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// public function nilaiAkhir(Request $request)
|
||||||
|
// {
|
||||||
|
// // Ambil data nilai utility dari session
|
||||||
|
// $nilaiUtility = session('nilaiUtility', []);
|
||||||
|
|
||||||
|
// // Inisialisasi variabel untuk menyimpan nilai akhir
|
||||||
|
// $nilaiAkhir = [];
|
||||||
|
|
||||||
|
// foreach ($nilaiUtility as $extracurricularId => $criteriaData) {
|
||||||
|
// $totalNilaiAkhir = 0; // Inisialisasi total nilai akhir untuk ekstrakurikuler saat ini
|
||||||
|
|
||||||
|
// foreach ($criteriaData as $criteriaId => $utility) {
|
||||||
|
// // Temukan bobot kriteria
|
||||||
|
// $criteria = Criteria::find($criteriaId);
|
||||||
|
// if ($criteria) {
|
||||||
|
// // Lakukan perhitungan nilai akhir
|
||||||
|
// $bobotKriteria = $criteria->bobot;
|
||||||
|
// $nilaiAkhir[$extracurricularId][$criteriaId] = number_format($utility * $bobotKriteria, 2, '.', '');
|
||||||
|
|
||||||
|
// // Tambahkan nilai akhir kriteria ke total
|
||||||
|
// $totalNilaiAkhir += $nilaiAkhir[$extracurricularId][$criteriaId];
|
||||||
|
// } else {
|
||||||
|
// // Handle jika kriteria tidak ditemukan
|
||||||
|
// $nilaiAkhir[$extracurricularId][$criteriaId] = '0';
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// // Simpan total nilai akhir untuk ekstrakurikuler saat ini
|
||||||
|
// $nilaiAkhir[$extracurricularId]['total'] = number_format($totalNilaiAkhir, 2, '.', '');
|
||||||
|
// }
|
||||||
|
|
||||||
|
// // Ambil semua kriteria dan ekstrakurikuler untuk ditampilkan di view
|
||||||
|
// $criterias = Criteria::all();
|
||||||
|
// $extracuricullars = Extracuricullar::all();
|
||||||
|
|
||||||
|
// // Tampilkan hasil perhitungan nilai akhir ke dalam view
|
||||||
|
// return view('perhitungan.nilai-akhir', compact('criterias', 'extracuricullars', 'nilaiAkhir'));
|
||||||
|
// }
|
||||||
|
|
||||||
|
public function nilaiAkhir(Request $request)
|
||||||
|
{
|
||||||
|
// Ambil data nilai utility dari session
|
||||||
|
$nilaiUtility = session('nilaiUtility', []);
|
||||||
|
|
||||||
|
// Inisialisasi variabel untuk menyimpan nilai akhir
|
||||||
|
$nilaiAkhir = [];
|
||||||
|
$totalNilaiAkhir = [];
|
||||||
|
|
||||||
|
foreach ($nilaiUtility as $extracurricularId => $criteriaData) {
|
||||||
|
foreach ($criteriaData as $criteriaId => $utility) {
|
||||||
|
// Temukan bobot kriteria
|
||||||
|
$criteria = Criteria::find($criteriaId);
|
||||||
|
if ($criteria) {
|
||||||
|
// Lakukan perhitungan nilai akhir
|
||||||
|
$bobotKriteria = $criteria->bobot;
|
||||||
|
$nilaiAkhir[$extracurricularId][$criteriaId] = number_format($utility * $bobotKriteria, 2, '.', '');
|
||||||
|
} else {
|
||||||
|
// Handle jika kriteria tidak ditemukan
|
||||||
|
$nilaiAkhir[$extracurricularId][$criteriaId] = '0';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$totalNilai = array_sum($nilaiAkhir[$extracurricularId]);
|
||||||
|
$totalNilaiAkhir[$extracurricularId] = number_format($totalNilai, 2, '.', '');
|
||||||
|
}
|
||||||
|
|
||||||
|
$totalAkhir = collect($nilaiAkhir)->flatten()->sum();
|
||||||
|
|
||||||
|
// Ambil semua kriteria dan ekstrakurikuler untuk ditampilkan di view
|
||||||
|
$criterias = Criteria::all();
|
||||||
|
$extracuricullars = Extracuricullar::all();
|
||||||
|
|
||||||
|
// Tampilkan hasil perhitungan nilai akhir ke dalam view
|
||||||
|
return view('perhitungan.nilai-akhir', compact('criterias', 'extracuricullars', 'nilaiAkhir', 'totalNilaiAkhir'));
|
||||||
|
}
|
||||||
|
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
|
|
|
@ -0,0 +1,89 @@
|
||||||
|
@extends('layout.main')
|
||||||
|
@section('body')
|
||||||
|
@php
|
||||||
|
$menu = 'Data Perhitungan';
|
||||||
|
$pageTitle = 'Perhitungan Nilai Akhir';
|
||||||
|
@endphp
|
||||||
|
|
||||||
|
@include('layout.navbar')
|
||||||
|
@include('layout.sidebar')
|
||||||
|
|
||||||
|
{{-- Main Content --}}
|
||||||
|
<div class="main-container">
|
||||||
|
<div class="pd-ltr-20 xs-pd-20-10">
|
||||||
|
<div class="min-height-200px">
|
||||||
|
<div class="page-header">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6 col-sm-12">
|
||||||
|
<div class="title">
|
||||||
|
<h4>{{ $menu }}</h4>
|
||||||
|
</div>
|
||||||
|
<nav aria-label="breadcrumb" role="navigation">
|
||||||
|
<ol class="breadcrumb">
|
||||||
|
<li class="breadcrumb-item"><a href="{{ route('penilaian.input-nilai') }}">Input Penilaian</a></li>
|
||||||
|
@if (isset($pageTitle))
|
||||||
|
<li class="breadcrumb-item active" aria-current="page">{{ $pageTitle }}</li>
|
||||||
|
@else
|
||||||
|
<li class="breadcrumb-item active" aria-current="page"></li>
|
||||||
|
@endif
|
||||||
|
</ol>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-box mb-30">
|
||||||
|
<div class="pd-20">
|
||||||
|
<h4 class="text-blue h4 mb-0">Perhitungan Nilai Akhir</h4>
|
||||||
|
</div>
|
||||||
|
<form method="POST" action="">
|
||||||
|
@csrf
|
||||||
|
<div class="pb-10">
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="data-table table stripe hover nowrap">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>No</th>
|
||||||
|
<th>Ekstrakurikuler</th>
|
||||||
|
@foreach ($criterias as $criteria)
|
||||||
|
<th>{{ $criteria->nama }}</th>
|
||||||
|
@endforeach
|
||||||
|
<th>Nilai Akhir</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@forelse ($extracuricullars as $extracuricullar)
|
||||||
|
<tr>
|
||||||
|
<td>{{ $loop->iteration }}</td>
|
||||||
|
<td>{{ $extracuricullar->nama }}</td>
|
||||||
|
@foreach ($criterias as $criteria)
|
||||||
|
<td>
|
||||||
|
@php
|
||||||
|
$akhir = $nilaiAkhir[$extracuricullar->id][$criteria->id] ?? null;
|
||||||
|
@endphp
|
||||||
|
{{ $akhir }}
|
||||||
|
</td>
|
||||||
|
@endforeach
|
||||||
|
<td>{{ $totalNilaiAkhir[$extracuricullar->id] }}</td>
|
||||||
|
@empty
|
||||||
|
<tr>
|
||||||
|
<td colspan="5" class="text-center">Tidak ada data.</td>
|
||||||
|
</tr>
|
||||||
|
@endforelse
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<div class="col-sm-12">
|
||||||
|
<div class="input-group mb-3 mx-auto">
|
||||||
|
<button type="submit" class="btn btn-primary btn-lg btn-block">Hasil Perangkingan</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="footer-wrap pd-20 mb-20 card-box">
|
||||||
|
<strong>Sistem Pendukung Keputusan Pemilihan Ekstrakurikuler Metode SMARTER</strong>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endsection
|
|
@ -35,7 +35,7 @@
|
||||||
<div class="pd-20">
|
<div class="pd-20">
|
||||||
<h4 class="text-blue h4 mb-0">Perhitungan Nilai Utility</h4>
|
<h4 class="text-blue h4 mb-0">Perhitungan Nilai Utility</h4>
|
||||||
</div>
|
</div>
|
||||||
<form method="POST" action="">
|
<form method="POST" action="{{ route('nilaiAkhir') }}">
|
||||||
@csrf
|
@csrf
|
||||||
<div class="pb-10">
|
<div class="pb-10">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
|
@ -62,6 +62,7 @@
|
||||||
{{ $utility }}
|
{{ $utility }}
|
||||||
</td>
|
</td>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
<td></td>
|
||||||
@empty
|
@empty
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="5" class="text-center">Tidak ada data.</td>
|
<td colspan="5" class="text-center">Tidak ada data.</td>
|
||||||
|
|
|
@ -105,6 +105,7 @@
|
||||||
Route::get('input-nilai', [PerhitunganController::class, 'penilaian'])->name(('penilaian.input-nilai'));
|
Route::get('input-nilai', [PerhitunganController::class, 'penilaian'])->name(('penilaian.input-nilai'));
|
||||||
Route::post('transformasi-nilai', [PerhitunganController::class, 'transformasiNilai'])->name('transformasiNilai');
|
Route::post('transformasi-nilai', [PerhitunganController::class, 'transformasiNilai'])->name('transformasiNilai');
|
||||||
Route::post('nilai-utility', [PerhitunganController::class, 'nilaiUtility'])->name('nilaiUtility');
|
Route::post('nilai-utility', [PerhitunganController::class, 'nilaiUtility'])->name('nilaiUtility');
|
||||||
|
Route::post('nilai-akhir', [PerhitunganController::class, 'nilaiAkhir'])->name('nilaiAkhir');
|
||||||
|
|
||||||
// Route::resource('input-nilai', PenilaianController::class);
|
// Route::resource('input-nilai', PenilaianController::class);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue