$criteria) { $sum = 0; // Iterasi untuk setiap nilai prioritas pada kriteria for ($i = $key; $i < $totalKriteria; $i++) { // Hitung nilai SMARTER $sum += 1 / ($i + 1); } // Hitung bobot kriteria menggunakan rumus SMARTER ROC $bobot = $sum / $totalKriteria; $bobotKriteria[$criteria->nama] = $bobot; $criteria->update(['bobot' => $bobot]); $criteria->save(); } return redirect()->route('kriteria.index')->with('success', 'Bobot Kriteria Berhasil Dihitung dan Disimpan.'); } public function calculateBobotSubKriteria() { $criterias = Criteria::all(); foreach ($criterias as $criteria) { // Ambil semua sub-kriteria untuk kriteria ini $subcriterias = SubCriteria::where('criteria_id', $criteria->id)->get(); $totalSubKriteria = $subcriterias->count(); $bobotSubKriteria = []; // Hitung bobot untuk setiap sub-kriteria foreach ($subcriterias as $key => $subcriteria) { $sum = 0; // Iterasi untuk setiap nilai prioritas pada kriteria for ($i = $key; $i < $totalSubKriteria; $i++) { // Hitung nilai SMARTER $sum += 1 / ($i + 1); } // Hitung bobot kriteria menggunakan rumus SMARTER ROC $bobot = $sum / $totalSubKriteria; $bobotSubKriteria[$subcriteria->nama] = $bobot; $subcriteria->update(['bobot' => $bobot]); $subcriteria->save(); } } return redirect()->route('subkriteria.index')->with('success', 'Bobot Sub Kriteria Berhasil Dihitung dan Disimpan.'); } public function penilaian() { $criterias = Criteria::all(); $extracuricullars = Extracuricullar ::all(); $subcriterias = Subcriteria::all(); return view('penilaian.input-nilai', compact('criterias','extracuricullars','subcriterias')); } 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'); // 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; } } Session::flash('success', 'Berhasil Transformasi Nilai.'); // 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 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() { // } /** * 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) { // } }