SPKNETLAB / app / Http / Controllers / KriteriaController.php
KriteriaController.php
Raw
<?php

namespace App\Http\Controllers;

use App\Models\Kriteria;
use App\Models\Penilaian;
use Illuminate\Http\Request;

class KriteriaController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $kriterias=Kriteria::all();
        return view ('dashboards.kriteria.index', [
            'kriterias'=>$kriterias,
        ]);
    }
     
    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        return view('dashboards.kriteria.create');
    }
    
    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    
    public function storedefaul(Kriteria $kritdef)
    {
        $kritdef = collect([
            ['kodekriteria' => 'C1', 'namakriteria' => 'Rerata Nilai Tugas', 'sifat' => 'Benefit', 'bobot' => '5'],
            ['kodekriteria' => 'C2', 'namakriteria' => 'Banyak Praktikan Rajin Hadir', 'sifat' => 'Benefit', 'bobot' => '5'],
            ['kodekriteria' => 'C3', 'namakriteria' => 'Banyak Praktikan Tidak Rajin Hadir', 'sifat' => 'Cost', 'bobot' => '3'],
            ['kodekriteria' => 'C4', 'namakriteria' => 'Banyak Praktikan Rajin Aktif', 'sifat' => 'Benefit', 'bobot' => '5'],
            ['kodekriteria' => 'C5', 'namakriteria' => 'Banyak Praktikan Tidak Rajin Aktif', 'sifat' => 'Cost', 'bobot' => '3'],
            ['kodekriteria' => 'C6', 'namakriteria' => 'Banyak Praktikan Mengumpulkan Laporan', 'sifat' => 'Benefit', 'bobot' => '5'],
            ['kodekriteria' => 'C7', 'namakriteria' => 'Banyak Praktikan Tidak Mengumpulkan Laporan', 'sifat' => 'Cost', 'bobot' => '4'],
        ]);

        foreach($kritdef as $item) {
    		$data[] =[
                'kodekriteria' => $item['kodekriteria'],
                'namakriteria' => $item['namakriteria'],
                'sifat' => $item['sifat'],
                'bobot' => $item['bobot'],
    		];
    	}
    	Kriteria::insert($data);

        return redirect()->route('adminIndexKriteria')
                        ->with('success','Data Telah Ditambahkan.');
    }
    
     public function store(Request $request)
    {
        $request->validate([
            'kodekriteria' => 'required',
            'namakriteria' => 'required',
            'sifat' => 'required',
            'bobot' => 'required'
        ]);
    
        Kriteria::create($request->all());

        // $idkriteria = Kriteria::where('name', $request->name)->first();

        // Penilaian::create([
        //     'id_kriteria' => $idkriteria->id,
        //     'nilai' => 0
        // ]);

        return redirect()->route('adminIndexKriteria')
                        ->with('success','Data Telah Ditambahkan.');
    }
     
    /**
     * Display the specified resource.
     *
     * @param  \App\Alternatif  $kriteria
     * @return \Illuminate\Http\Response
     */
    public function show(Kriteria $kriteria)
    {
        // return view('kriterias.show',compact('kriteria'));
    } 
     
    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Alternatif  $kriteria
     * @return \Illuminate\Http\Response
     */
    public function edit(Kriteria $datakriteria)
    {
        return view ('dashboards.kriteria.edit', ['datakriteria'=>$datakriteria]);
    }
    
    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Alternatif  $kriteria
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, Kriteria $datakriteria)
    {
        $request->validate([
            'kodekriteria' => 'required',
            'namakriteria' => 'required',
            'sifat' => 'required',
            'bobot' => 'required'
        ]);
    
        $datakriteria->update($request->all());
    
        return redirect()->route('adminIndexKriteria')
                        ->with('success','Data Telah Diperbaharui');
    }
    
    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Alternatif  $kriteria
     * @return \Illuminate\Http\Response
     */
    public function destroy(Kriteria $datakriteria)
    {
        // datakriteria->relasikriteriapenilaian('id_kriteria')->delete();
        $datakriteria->delete();
    
        return redirect()->route('adminIndexKriteria')
                        ->with('success','Data Telah Dihapus');
    }
}