Sweet Alert Perhitungan

This commit is contained in:
Zakiaass 2024-03-16 11:40:14 +07:00
parent 4d24eabe7a
commit b7bd16c022
5 changed files with 133 additions and 109 deletions

View File

@ -1,72 +0,0 @@
<?php
namespace App\Http\Controllers;
use App\Models\Criteria;
use App\Models\Extracuricullar;
use App\Models\ExtracuricullarSubKriteria;
use App\Models\SubCriteria;
use Illuminate\Http\Request;
class PenilaianController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index()
{
// $criterias = Criteria::all();
// $extracuricullars = Extracuricullar ::all();
// $subcriterias = Subcriteria::all();
// return view('penilaian.input-nilai', compact('criterias','extracuricullars','subcriterias'));
}
/**
* Show the form for creating a new resource.
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*/
public function show(string $id)
{
//
}
/**
* Show the form for editing the specified resource.
*/
public function edit(string $id)
{
//
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, string $id)
{
//
}
/**
* Remove the specified resource from storage.
*/
public function destroy(string $id)
{
//
}
}

View File

@ -6,6 +6,7 @@
use App\Models\Criteria;
use App\Models\SubCriteria;
use App\Models\Extracuricullar;
use Illuminate\Support\Facades\Session;
use App\Models\ExtracuricullarSubKriteria;
use RealRashid\SweetAlert\Facades\Alert;
use Illuminate\Support\Facades\Validator;
@ -86,6 +87,17 @@ public function penilaian()
public function transformasiNilai(Request $request)
{
$validator = Validator::make($request->all(), [
'subcriteria.*.*' => 'required',
], [
'subcriteria.*.*.required' => 'Semua dropdown pada kriteria harus diisi.',
'subcriteria.*.*.exists' => 'Pilihan dropdown tidak valid.',
]);
if ($validator->fails()) {
return redirect()->back()->withErrors($validator)->withInput();
}
// Ambil data nilai dari subkriteria yang dipilih dari form
$subcriteriaData = $request->input('subcriteria');
@ -105,6 +117,7 @@ public function transformasiNilai(Request $request)
$transformedValues[$extracurricularId][$criteriaId] = $bobot;
}
}
Session::flash('success', 'Berhasil Transformasi Nilai.');
// Ambil semua kriteria dan ekstrakurikuler untuk ditampilkan di view
$criterias = Criteria::all();
@ -113,6 +126,35 @@ public function transformasiNilai(Request $request)
return view('perhitungan.transformasi-nilai', compact('criterias', 'extracuricullars', 'transformedValues'));
}
// public function transformasiNilai(Request $request)
// {
// // Ambil data nilai dari subkriteria yang dipilih dari form
// $subcriteriaData = $request->input('subcriteria');
// // Inisialisasi variabel untuk menyimpan nilai hasil transformasi
// $transformedValues = [];
// // Lakukan transformasi nilai berdasarkan bobot subkriteria
// foreach ($subcriteriaData as $extracurricularId => $criteriaData) {
// foreach ($criteriaData as $criteriaId => $subcriteriaId) {
// // Ambil data sub-kriteria berdasarkan ID yang dipilih dari form
// $subcriteria = SubCriteria::findOrFail($subcriteriaId);
// // Ambil bobot dari subkriteria yang dipilih
// $bobot = $subcriteria->bobot;
// // Simpan hasil transformasi nilai ke dalam array
// $transformedValues[$extracurricularId][$criteriaId] = $bobot;
// }
// }
// // Ambil semua kriteria dan ekstrakurikuler untuk ditampilkan di view
// $criterias = Criteria::all();
// $extracuricullars = Extracuricullar::all();
// return view('perhitungan.transformasi-nilai', compact('criterias', 'extracuricullars', 'transformedValues'));
// }
public function index()
{
//

View File

@ -260,6 +260,28 @@ class="badge btn-danger" data-toggle="modal"
</div>
@endforeach
<script>
$(document).ready(function() {
// Event listener for the button click
$('#calculate-bobot').click(function() {
// Send AJAX request to trigger calculation
$.ajax({
type: 'POST',
url: '{{ route('kriteria.calculate') }}',
data: {
_token: '{{ csrf_token() }}'
},
success: function(response) {
swal("Sukses!", "Bobot Kriteria Berhasil Dihitung dan Disimpan.", "success")
},
error: function(xhr, status, error) {
console.error('Error:', error);
}
});
});
});
</script>
{{-- <script>
$(document).ready(function() {
// Event listener for the button click
$('#calculate-bobot').click(function() {
@ -280,5 +302,5 @@ class="badge btn-danger" data-toggle="modal"
});
});
});
</script>
</script> --}}
@endsection

View File

@ -56,12 +56,20 @@
<td>{{ $extracuricullar->nama }}</td>
@foreach ($criterias as $criteria)
<td>
<select class="form-control" name="subcriteria[{{ $extracuricullar->id }}][{{ $criteria->id }}]">
<option value="" selected disabled>Pilih Sub Kriteria</option>
<select class="form-control"
name="subcriteria[{{ $extracuricullar->id }}][{{ $criteria->id }}]"
required>
<option value="" selected disabled>Pilih Sub Kriteria
</option>
@foreach ($criteria->subCriteria as $subCriteria)
<option value="{{ $subCriteria->id }}">{{ $subCriteria->prioritas }} ({{ $subCriteria->nama }})</option>
<option value="{{ $subCriteria->id }}">
{{ $subCriteria->prioritas }}
({{ $subCriteria->nama }})</option>
@endforeach
</select>
@error("subcriteria.{$extracuricullar->id}.{$criteria->id}")
<span class="text-danger">{{ $message }}</span>
@enderror
</td>
@endforeach
@empty
@ -73,7 +81,8 @@
</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">Transformasi Nilai</button>
<button type="submit" class="btn btn-primary btn-lg btn-block">Transformasi
Nilai</button>
</div>
</div>
</div>
@ -88,7 +97,7 @@
</div>
@if(session('success'))
<script>
alert('{{ session('success') }}');
swal("{{ session('success') }}", "success");
</script>
@endif
@endsection

View File

@ -330,6 +330,29 @@ class="badge btn-danger" data-toggle="modal"
</div>
@endforeach
<script>
$(document).ready(function() {
// Event listener for the button click
$('#calculate-bobot').click(function() {
// Send AJAX request to trigger calculation
$.ajax({
type: 'POST',
url: '{{ route('subkriteria.calculate') }}',
data: {
_token: '{{ csrf_token() }}'
},
success: function(response) {
swal("Sukses!", "Bobot Sub Kriteria Berhasil Dihitung dan Disimpan.", "success")
},
error: function(xhr, status, error) {
console.error('Error:', error);
}
});
});
});
</script>
{{-- <script>
$(document).ready(function() {
// Event listener for the button click
$('#calculate-bobot').click(function() {
@ -350,5 +373,5 @@ class="badge btn-danger" data-toggle="modal"
});
});
});
</script>
</script> --}}
@endsection