Bismillah Fix
This commit is contained in:
parent
28bea58fe7
commit
7df4353875
|
@ -35,7 +35,7 @@ public function login(Request $request)
|
||||||
$userCount = User::where('username', $request->username)->count();
|
$userCount = User::where('username', $request->username)->count();
|
||||||
|
|
||||||
if ($validator->fails() || $userCount == 0) {
|
if ($validator->fails() || $userCount == 0) {
|
||||||
// Tambahkan pesan error khusus jika username tidak terdaftar
|
// jika username tidak terdaftar
|
||||||
$validator->errors()->add('username', 'Akun tidak terdaftar.');
|
$validator->errors()->add('username', 'Akun tidak terdaftar.');
|
||||||
|
|
||||||
return redirect('/login')
|
return redirect('/login')
|
||||||
|
@ -43,7 +43,7 @@ public function login(Request $request)
|
||||||
->withInput();
|
->withInput();
|
||||||
}
|
}
|
||||||
|
|
||||||
$remember = true; // Sesuaikan dengan kebutuhan Anda
|
$remember = true;
|
||||||
|
|
||||||
if (Auth::attempt(['username' => $request->username, 'password' => $request->password], $remember)) {
|
if (Auth::attempt(['username' => $request->username, 'password' => $request->password], $remember)) {
|
||||||
$user = Auth::user();
|
$user = Auth::user();
|
||||||
|
|
|
@ -12,33 +12,6 @@ class CriteriaController extends Controller
|
||||||
* Display a listing of the resource.
|
* Display a listing of the resource.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// public function calculateBobotKriteria()
|
|
||||||
// {
|
|
||||||
// $criterias = Criteria::all();
|
|
||||||
|
|
||||||
// $totalKriteria = count($criterias);
|
|
||||||
|
|
||||||
// $bobotKriteria = [];
|
|
||||||
|
|
||||||
// foreach ($criterias as $key => $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 index(Request $request)
|
public function index(Request $request)
|
||||||
{
|
{
|
||||||
if ($request->has('search')) {
|
if ($request->has('search')) {
|
||||||
|
@ -104,11 +77,6 @@ public function edit(string $id)
|
||||||
*/
|
*/
|
||||||
public function update(Request $request, string $id)
|
public function update(Request $request, string $id)
|
||||||
{
|
{
|
||||||
// $kriteria = Criteria::findorfail($id);
|
|
||||||
// $kriteria->update($request->all());
|
|
||||||
|
|
||||||
// return redirect('kriteria')->with('success', 'Data Kriteria Berhasil Diperbarui!');
|
|
||||||
|
|
||||||
$validatedData = $request->validate([
|
$validatedData = $request->validate([
|
||||||
'nama' => 'required|string',
|
'nama' => 'required|string',
|
||||||
'prioritas' => 'required|integer',
|
'prioritas' => 'required|integer',
|
||||||
|
|
|
@ -109,11 +109,6 @@ public function edit(string $id)
|
||||||
*/
|
*/
|
||||||
public function update(Request $request, string $id)
|
public function update(Request $request, string $id)
|
||||||
{
|
{
|
||||||
// $user = User::findorfail($id);
|
|
||||||
// $user->update($request->all());
|
|
||||||
|
|
||||||
// return redirect('user')->with('success', 'Data User Berhasil Diperbarui!');
|
|
||||||
|
|
||||||
$validatedData = $request->validate([
|
$validatedData = $request->validate([
|
||||||
'name' => 'required',
|
'name' => 'required',
|
||||||
'username' => 'required',
|
'username' => 'required',
|
||||||
|
|
|
@ -27,14 +27,18 @@ public function calculateBobotKriteria()
|
||||||
|
|
||||||
$bobotKriteria = [];
|
$bobotKriteria = [];
|
||||||
|
|
||||||
foreach ($criterias as $key => $criteria) {
|
foreach ($criterias as $criteria) {
|
||||||
$sum = 0;
|
$sum = 0;
|
||||||
|
|
||||||
|
$prioritas = $criteria->prioritas;
|
||||||
|
$i = $prioritas - 1; // Karena indeks array dimulai dari 0, sedangkan prioritas dimulai dari 1
|
||||||
|
|
||||||
// Iterasi untuk setiap nilai prioritas pada kriteria
|
// Iterasi untuk setiap nilai prioritas pada kriteria
|
||||||
for ($i = $key; $i < $totalKriteria; $i++) {
|
for (; $i < $totalKriteria; $i++) {
|
||||||
// Hitung nilai SMARTER
|
// Hitung nilai SMARTER
|
||||||
$sum += 1 / ($i + 1);
|
$sum += 1 / ($i + 1);
|
||||||
}
|
}
|
||||||
// Hitung bobot kriteria menggunakan rumus SMARTER ROC
|
|
||||||
$bobot = $sum / $totalKriteria;
|
$bobot = $sum / $totalKriteria;
|
||||||
|
|
||||||
$bobotKriteria[$criteria->nama] = $bobot;
|
$bobotKriteria[$criteria->nama] = $bobot;
|
||||||
|
@ -54,15 +58,18 @@ public function calculateBobotSubKriteria()
|
||||||
// Ambil semua sub-kriteria untuk kriteria ini
|
// Ambil semua sub-kriteria untuk kriteria ini
|
||||||
$subcriterias = SubCriteria::where('criteria_id', $criteria->id)->get();
|
$subcriterias = SubCriteria::where('criteria_id', $criteria->id)->get();
|
||||||
|
|
||||||
$totalSubKriteria = $subcriterias->count();
|
$totalSubKriteria = count($subcriterias);
|
||||||
|
|
||||||
$bobotSubKriteria = [];
|
$bobotSubKriteria = [];
|
||||||
|
|
||||||
// Hitung bobot untuk setiap sub-kriteria
|
foreach ($subcriterias as $subcriteria) {
|
||||||
foreach ($subcriterias as $key => $subcriteria) {
|
|
||||||
$sum = 0;
|
$sum = 0;
|
||||||
|
|
||||||
|
$prioritas = $subcriteria->prioritas;
|
||||||
|
$i = $prioritas - 1;
|
||||||
|
|
||||||
// Iterasi untuk setiap nilai prioritas pada kriteria
|
// Iterasi untuk setiap nilai prioritas pada kriteria
|
||||||
for ($i = $key; $i < $totalSubKriteria; $i++) {
|
for (; $i < $totalSubKriteria; $i++) {
|
||||||
// Hitung nilai SMARTER
|
// Hitung nilai SMARTER
|
||||||
$sum += 1 / ($i + 1);
|
$sum += 1 / ($i + 1);
|
||||||
}
|
}
|
||||||
|
@ -90,7 +97,7 @@ public function penilaian()
|
||||||
|
|
||||||
public function transformasiNilai(Request $request)
|
public function transformasiNilai(Request $request)
|
||||||
{
|
{
|
||||||
// Ambil data nilai dari subkriteria yang dipilih dari form
|
// Ambil data nilai dari subkriteria yang dipilih dari form penilaian
|
||||||
$subcriteriaData = $request->input('subcriteria');
|
$subcriteriaData = $request->input('subcriteria');
|
||||||
|
|
||||||
// Inisialisasi variabel untuk menyimpan nilai hasil transformasi
|
// Inisialisasi variabel untuk menyimpan nilai hasil transformasi
|
||||||
|
@ -137,10 +144,10 @@ public function nilaiUtility(Request $request)
|
||||||
// Periksa apakah penyebut bernilai nol
|
// Periksa apakah penyebut bernilai nol
|
||||||
$denominator = $maxBobot - $minBobot;
|
$denominator = $maxBobot - $minBobot;
|
||||||
if ($denominator == 0) {
|
if ($denominator == 0) {
|
||||||
// Tangani jika penyebut bernilai nol
|
// Jika penyebut bernilai nol
|
||||||
$nilaiUtility[$extracurricularId][$criteriaId] = 0; // Atau nilai lainnya sesuai kebutuhan
|
$nilaiUtility[$extracurricularId][$criteriaId] = 0;
|
||||||
} else {
|
} else {
|
||||||
// Lakukan perhitungan nilai utility
|
// Perhitungan nilai utility
|
||||||
$utility = (($bobot - $minBobot) / $denominator);
|
$utility = (($bobot - $minBobot) / $denominator);
|
||||||
$nilaiUtility[$extracurricularId][$criteriaId] = number_format($utility, 2, '.', '');
|
$nilaiUtility[$extracurricularId][$criteriaId] = number_format($utility, 2, '.', '');
|
||||||
}
|
}
|
||||||
|
@ -184,13 +191,13 @@ public function nilaiAkhir(Request $request)
|
||||||
$totalNilaiAkhir[$extracurricularId] = number_format($totalNilai, 2, '.', '');
|
$totalNilaiAkhir[$extracurricularId] = number_format($totalNilai, 2, '.', '');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Membuat koleksi dari nilai akhir yang bersifat multidimenasi menjadi satu dimensi
|
||||||
$totalAkhir = collect($nilaiAkhir)->flatten()->sum();
|
$totalAkhir = collect($nilaiAkhir)->flatten()->sum();
|
||||||
|
|
||||||
// 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();
|
||||||
|
|
||||||
// Tampilkan hasil perhitungan nilai akhir ke dalam view
|
|
||||||
return view('perhitungan.nilai-akhir', compact('criterias', 'extracuricullars', 'nilaiAkhir', 'totalNilaiAkhir'));
|
return view('perhitungan.nilai-akhir', compact('criterias', 'extracuricullars', 'nilaiAkhir', 'totalNilaiAkhir'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -231,7 +238,7 @@ public function perangkingan(Request $request)
|
||||||
$totalNilaiAkhir[$extracurricularId] = number_format($totalNilai, 2, '.', '');
|
$totalNilaiAkhir[$extracurricularId] = number_format($totalNilai, 2, '.', '');
|
||||||
|
|
||||||
// Hitung persentase total nilai akhir
|
// Hitung persentase total nilai akhir
|
||||||
$totalPersen = ($totalNilai ) * 100; // di sini 100 adalah jumlah maksimum bobot
|
$totalPersen = ($totalNilai ) * 100;
|
||||||
$totalNilaiAkhirPersen[$extracurricularId] = number_format($totalPersen, 0, '.', '');
|
$totalNilaiAkhirPersen[$extracurricularId] = number_format($totalPersen, 0, '.', '');
|
||||||
|
|
||||||
// Simpan peringkat
|
// Simpan peringkat
|
||||||
|
|
|
@ -13,40 +13,6 @@ class SubCriteriaController extends Controller
|
||||||
* Display a listing of the resource.
|
* Display a listing of the resource.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// 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 index(Request $request)
|
public function index(Request $request)
|
||||||
{
|
{
|
||||||
if ($request->has('search')) {
|
if ($request->has('search')) {
|
||||||
|
|
|
@ -79,22 +79,20 @@ public function updateProfilePicture(Request $request)
|
||||||
'profile_picture' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
|
'profile_picture' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// Process the uploaded file and update the user's profile picture
|
|
||||||
$user = Auth::user();
|
$user = Auth::user();
|
||||||
|
|
||||||
// Hapus gambar lama jika ada
|
// menghapus foto profil lama jika ada
|
||||||
if ($user->profile_picture) {
|
if ($user->profile_picture) {
|
||||||
Storage::disk('public')->delete($user->profile_picture);
|
Storage::disk('public')->delete($user->profile_picture);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Store the uploaded file and update the user's profile picture
|
// Menyimpan file gambar yang diunggah oleh pengguna dan memperbarui gambar profil
|
||||||
if ($request->hasFile('profile_picture')) {
|
if ($request->hasFile('profile_picture')) {
|
||||||
$imagePath = $request->file('profile_picture')->store('profile_pictures', 'public');
|
$imagePath = $request->file('profile_picture')->store('profile_pictures', 'public');
|
||||||
$user->profile_picture = $imagePath;
|
$user->profile_picture = $imagePath;
|
||||||
$user->save();
|
$user->save();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Redirect back or return a response
|
|
||||||
return redirect()->route('user-profile')->with('success', 'Foto Profile Berhasil Diperbarui!');
|
return redirect()->route('user-profile')->with('success', 'Foto Profile Berhasil Diperbarui!');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -63,8 +63,8 @@
|
||||||
</option>
|
</option>
|
||||||
@foreach ($criteria->subCriteria as $subCriteria)
|
@foreach ($criteria->subCriteria as $subCriteria)
|
||||||
<option value="{{ $subCriteria->id }}">
|
<option value="{{ $subCriteria->id }}">
|
||||||
{{ $subCriteria->prioritas }}
|
{{ $subCriteria->nama }}
|
||||||
({{ $subCriteria->nama }})</option>
|
({{ $subCriteria->deskripsi }})</option>
|
||||||
@endforeach
|
@endforeach
|
||||||
</select>
|
</select>
|
||||||
@error("subcriteria.{$extracuricullar->id}.{$criteria->id}")
|
@error("subcriteria.{$extracuricullar->id}.{$criteria->id}")
|
||||||
|
|
Loading…
Reference in New Issue