I Try Made Crud Can't defined aktivitas.destroy
index.blade.php
<div class="bs-bars pull-left">
<a href="{{ route('pegawai.create') }}"class="btn btn-primary btn-md">
Tambah
</a>
<a href="{{ url('pegawai-pdf') }}" class="btn btn-success btn-md">
<i class="fas fa-file-pdf"></i> Data Aktivitas
</a>
</div>
@foreach($ar_judul as $jdl)
<th>{{ $jdl }}</th>
@endforeach
</tr>
</thead>
<tbody>
@foreach ($ar_aktivitas as $akt)
<tr>
<td>{{ $no++ }}</td>
<td>{{ $akt->nama_jenis_anggaran }}</td>
<td>{{ $akt->jenis_anggaran }}</td>
<td>{{ $akt->unt }}</td>
<td>Rp. {{ number_format($akt->jumlah_anggaran,2,',','.') }}</td>
<td>{{ $akt->peg }}</td>
<td>{{ $akt->tgl_aktivitas }}</td>
<td>
@if(!empty($akt->foto))
<img src="{{asset('img')}}/{{ $akt->foto }}" width="70px" height="70px">
@else
<div class="icon text-black bg-violet">
<i class="fas fa-tired"></i>
</div>
@endif
</td>
<td>
<form method="POST" action="{{ route('aktivitas.destroy',$akt->id)}}">
<div class="icon">
<a href="{{ route('aktivitas.show',$akt->id) }}" >
<div class="icon bg-blue">
<i class="fas fa-eye"></i>
</div>
</a>
<a href="{{ route('aktivitas.edit',$akt->id) }}" class="">
<div class="icon bg-green">
<i class="fas fa-pen"></i>
</div>
</a>
@csrf
@method('DELETE')
<button type="submit"
class="btn-danger btn-circle btn-sm"
onclick="return confirm('Yakin diHapus?')">
<div class="icon bg-red">
<i class="fas circle fa-trash"></i>
</div>
</button>
AktivitasController.php Controller
class AktivitasController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$ar_aktivitas = DB::table('aktivitas')
->join('unit', 'unit.id', '=', 'aktivitas.unit_id')
->join('pegawai', 'pegawai.id', '=', 'aktivitas.pegawai_id')
->select('aktivitas.*', 'unit.nama AS unt', 'pegawai.nama AS peg')
->get();
return view('aktivitas.index', compact('ar_aktivitas'));
}
public function create()
{
//arahkan ke form input data baru
return view('aktivitas.form');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//validasi data
$validator = Validator::make(request()->all(),[
'nama_jenis_anggaran'=>'required',
'jenis_anggaran'=>'required',
'unit_id'=>'required',
'jumlah_anggaran'=>'required',
'pegawai_id'=>'required',
'tgl_aktivitas'=>'required',
'keterangan'=>'image|mimes:jpg,jpeg,png,gif|max:2048',
],[
'nama_jenis_anggaran.required'=>'Nama Jenis Anggaran Wajib untuk diisi',
'jenis_anggaran.required'=>'Jenis Anggaran Wajib untuk dipilih',
'unit_id.required'=>'Unit Wajib untuk dipilih',
'jumlah_anggaran.required'=>'Jumlah Anggaran Wajib untuk dipilih',
'pegawai.required'=>'Pegawai Wajib untuk diisi',
'tgl_aktivitas.required'=>'Tanggal Wajib untuk diisi',
'keterangan.image'=>'Ektensi File Foto Hanya Boleh .jpg, .png, .gif',
'keterangan.max' =>'File Foto Melebihi 2048 KB',
])->validate();
//2. proses upload,dicek pas input ada upload file/tidak
if(!empty($request->foto)){
/*
$request->validate([
'foto' => 'image|mimes:jpg,jpeg,png,giff|max:2048',
]);
*/
//$fileName = $request->nip.'.'.$request->foto->extension();
$fileName = $request->nip.'.jpg';
$request->foto->move(public_path('img'), $fileName);
}else{
$fileName = '';
}
//1. tangkap request form
DB::table('aktivitas')->insert(
[
'pegawai_id'=>$request->pegawai_id,
'nama_jenis_anggaran'=>$request->nama_jenis_anggaran,
'jenis_anggaran'=>$request->jenis_anggaran,
'jumlah_anggaran'=>$request->jumlah_anggaran,
'tgl_aktivitas'=>$request->tgl_aktivitas,
'keterangan'=>$request->$fileName,
'unit_id'=>$request->unit_id,
]
);
//landing page
return redirect ('/aktivitas');
}
public function show($id)
{
$ar_aktivitas = DB::table('aktivitas')
->join('unit', 'unit.id', '=', 'aktivitas.unit_id')
->join('pegawai', 'pegawai.id', '=', 'aktivitas.pegawai_id')
->select('aktivitas.*', 'unit.nama AS unt', 'pegawai.nama AS peg')
->where('aktivitas.id','=',$id)
->get();
return view('aktivitas.index', compact('ar_aktivitas'));
}
public function edit($id)
{
//tampilkan form untuk menampilkan
//data lama yg mau diedit sebanyak 1 baris data
$data = DB::table('aktivitas')->where('id',$id)->get();
return view('aktivitas/form_edit',compact('data'));
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//1.proses ubah data
DB::table('aktivitas')->where('id',$id)->update(
[
'pegawai_id'=>$request->pegawai_id,
'nama_jenis_anggaran'=>$request->nama_jenis_anggaran,
'jenis_anggaran'=>$request->jenis_anggaran,
'jumlah_anggaran'=>$request->jumlah_anggaran,
'tgl_aktivitas'=>$request->tgl_aktivitas,
'keterangan'=>$request->keterangan,
'unit_id'=>$request->unit_id,
]
);
//landing page ke detail pemasukan
return redirect ('/activity'.'/'.$id);
}
public function destroy($id)
{
//ambil isi kolom foto lalu hapus file fotonya
//di folder img
//$foto = DB::table('aktivitas')->select('keterangan')->where('id','=',$id)->get();
//foreach($foto as $f){
// $namaFile = $f->foto;
//}
//File::delete(public_path('img/'.$namaFile));
///hapus data
DB::table('aktivitas')->where('id',$id)->delete();
//landing page ke hal pegawai / index.blade.php
return redirect ('/activity');
}
}