HARI KE-21 PRAKERIN #21

 

4/7/2024

Assalamualaikum 

Pagi Apel

Meneruskan membuat CRUD tabel prakerin

1.Controoler 

  public function index()
    {
        $siswa = Siswa::all();
        $Gurupem = Gurupem::all();
        $kelas = Kelas::all();
        $tempatPrakerin = tempatPrakerin::all();
        $prakerin = Prakerin::all();
        return view('prakerin.index',compact('prakerin','siswa','Gurupem','kelas','tempatPrakerin'));
    }
public function create()
    {
       
        $siswa = Siswa::all();
        $gurupem = Gurupem::all();
        $kelas = Kelas::all();
        $tempatPrakerin = tempatPrakerin::all();
        return view('prakerin.create',compact('siswa','gurupem','kelas','tempatPrakerin'));
    }

//ajax
// AJAX
    public function getSiswaGuru(Request $request){
        $gurupem_id = $request->input('gurupem_id');
        $siswa = Siswa::whereHas('gurupem', function ($query) use ($gurupem_id) {
            $query->where('id', $gurupem_id);
        })->get();

        $options = "<option value=''>--Pilih Siswa--</option>";
        foreach ($siswa as $siswas) {
            $options .= "<option value='$siswas->id'>$siswas->nama_siswa</option>";
        }
        return response()->json(['options' => $options]);
    }

    public function getDetailSiswa(Request $request){
        $siswa_id = $request->input('siswa_id');
        $siswa = Siswa::find($siswa_id);
        $kelas = $siswa->kelas;
        return response()->json([
            'nis_siswa' => $siswa->nis_siswa,
            'kelas_jurusan_siswa' => $kelas->kelas_jurusan_siswa,
            'kelas_id' => $kelas->id
        ]);
    }

   
    public function getPimpinan(Request $request){
       
    $id_tempatPrakerin = $request->input('id_tempatPrakerin');
    $tempatPrakerin = TempatPrakerin::find($id_tempatPrakerin);

    if ($tempatPrakerin) {
        return response()->json([
            'nama_pimpinan' => $tempatPrakerin->nama_pimpinan,
            'alamat_dudi' => $tempatPrakerin->alamat_dudi,
        ]);
    } else {
        return response()->json(['error' => 'Tempat Prakerin tidak ditemukan'], 404);
    }
    }
   
public function store(Request $request)
    {
        $request->validate([
            'gurupem_id' => 'required',
            'siswa_id' => 'required',
            'kelas_id' => 'required',
            'nis_siswa' => 'required',
            'tempatPrakerin_id' => 'required',
           
            'nama_pimpinan' => 'required',
            'alamat_dudi' => 'required',
        ]);

        $prakerin = new Prakerin;
        $prakerin->gurupem_id = $request->gurupem_id;
        $prakerin->siswa_id = $request->siswa_id;
        $prakerin->tempatPrakerin_id = $request->tempatPrakerin_id;
        $prakerin->nama_pimpinan = $request->nama_pimpinan;
        $prakerin->alamat_dudi = $request->alamat_dudi;
        $prakerin->nis_siswa = $request->nis_siswa;
        $prakerin->kelas_id = $request->kelas_id;
        $prakerin->save();

        return to_route('prakerin.index')->with('success','Data Berhasil Ditambahkan');
    }
 public function edit($id)
    {
        $siswa = Siswa::all();
        $gurupem = Gurupem::all();
        $kelas = Kelas::all();
        $tempatPrakerin = tempatPrakerin::all();
        $prakerin = Prakerin::findOrFail($id);
        return view('prakerin.edit',compact('siswa','gurupem','prakerin','kelas','tempatPrakerin'));
    }
public function update(Request $request, $id)
    {
        $request->validate([
            'gurupem_id' => 'required|exists:gurupem,id',
            'siswa_id' => 'required|exists:siswa,id',
            'kelas_id' => 'required|exists:kelas,id',
            'nis_siswa' => 'required',
            'tempatPrakerin_id' => 'required|exists:tempatPrakerin,id',
           
            'nama_pimpinan' => 'required',
            'alamat_dudi' => 'required',
        ]);

        $prakerin = Prakerin::find($id);
        $prakerin->gurupem_id = $request->gurupem_id;
        $prakerin->siswa_id = $request->siswa_id;
        $prakerin->tempatPrakerin_id = $request->tempatPrakerin_id;
        $prakerin->nama_pimpinan = $request->nama_pimpinan;
        $prakerin->alamat_dudi = $request->alamat_dudi;
        $prakerin->nis_siswa = $request->nis_siswa;
        $prakerin->kelas_id = $request->kelas_id;
        $prakerin->update();

        return to_route('prakerin.index')->with('success','Data Berhasil Diupdate');
    }
public function destroy($id)
    {
       
        $prakerin = Prakerin::find($id);
        if($prakerin){
            $prakerin->delete();
            return response()->json(['success' => 'Data Berhasil Dihapus']);
        }else{
            return response()->json(['error' => 'Data Tidak Ditemukan'],404);
        }

2.Route

Route::post('getSiswaGuru',[prakerinController::class,'getSiswaGuru'])->name('getSiswaGuru');
Route::post('getDetailSiswa',[prakerinController::class,'getDetailSiswa'])->name('getDetailSiswa');

Route::resource('prakerin',prakerinController::class);





Waalaikumsalam

Komentar

Postingan populer dari blog ini

HARI KE-13 PRAKERIN #13

PRAKERIN HARI KE 54-58