Advertisement
Guest User

KaryawanController.php

a guest
May 27th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.40 KB | None | 0 0
  1. <?php
  2.  
  3. namespace App\Http\Controllers;
  4.  
  5. use Illuminate\Http\Request;
  6. use App\Karyawan;
  7. use Validator;
  8. use Storage;
  9. use App\Http\Requests\KaryawanRequest;
  10.  
  11. class KaryawanController extends Controller
  12. {
  13.    
  14.     public function index()
  15.     {
  16.         //$karyawan_list = Karyawan::all()->sortByDesc('id');//sortir data
  17.         $karyawan_list=Karyawan::orderBy('id','desc')
  18.         ->where('deleted','0')
  19.         ->paginate(3);
  20.         $jumlah_karyawan = $karyawan_list->count();//tampil jml data
  21.         return view('chap8.karyawan', compact('halaman', 'karyawan_list','jumlah_karyawan'));
  22.     }
  23.  
  24.    
  25.     public function create()
  26.     {
  27.         return view('chap8.create',compact('halaman'));
  28.     }
  29.  
  30.    
  31.     private function uploadFoto(KaryawanRequest $request){
  32.         $foto = $request->file('foto');
  33.         $ext = $foto->getClientOriginalExtension();
  34.  
  35.         if($request->file('foto')->isValid()){
  36.             $namaFoto = date('YmdHis').".$ext";
  37.             $upload_path = 'fotoupload';
  38.             $request->file('foto')->move($upload_path,$namaFoto);
  39.             return $namaFoto;
  40.         }
  41.         return false;
  42.     }
  43.     public function store(KaryawanRequest $request)
  44.     {
  45.         $input=$request->all();
  46.  
  47.         //upload foto
  48.         if($request->hasFile('foto')){
  49.             $input['foto']=$this->uploadFoto($request);
  50.         }
  51.         //insert data
  52.         $karyawan=Karyawan::create($input);
  53.         return redirect('karyawan');
  54.     }
  55.  
  56.     private function HapusFoto(Karyawan $karyawan){
  57.         $exist=Storage::disk('foto')->exists($karyawan->foto);
  58.  
  59.         if(isset($karyawan->foto)&&$exist){
  60.             $deleted = Storage::disk('foto')->delete($karyawan->foto);
  61.             if($deleted){
  62.                 return true;
  63.             }
  64.             return false;
  65.         }
  66.     }
  67.  
  68.    
  69.     public function show($id)
  70.     {
  71.         $karyawan=Karyawan::findOrFail($id);
  72.         return view('chap8.show',compact('halaman','karyawan'));
  73.     }
  74.  
  75.    
  76.     public function edit($id)
  77.     {
  78.         $karyawan=Karyawan::findOrFail($id);
  79.         return view('chap8.edit',compact('karyawan'));
  80.     }
  81.  
  82.    
  83.     public function update(KaryawanRequest $request,$id)
  84.     {
  85.       $karyawan=Karyawan::findOrFail($id);
  86.         $input = $request->all();
  87.         //cek ada foto apa ga?
  88.         if($request->hasFile('foto')){
  89.             //hapus foto lama
  90.             $this->HapusFoto($karyawan);
  91.             //upload foto baru
  92.             $input['foto']=$this->uploadFoto($request);
  93.         }
  94.         //$karyawan=Karyawan::findOrFail($id);
  95.         //$input=$request->all();
  96.  
  97.         $karyawan->update($input);
  98.         return redirect('karyawan');
  99.  
  100.     }
  101.  
  102.    
  103.     public function destroy($id)
  104.     {
  105.         $karyawan=Karyawan::findOrFail($id);
  106.         $karyawan->deleted = 1;
  107.         $karyawan->save();
  108.         // $this->HapusFoto($karyawan);
  109.         // $karyawan->delete();
  110.         return redirect('karyawan');
  111.     }
  112.  
  113.     public function search(Request $request){
  114.         $cari = $request->get('search');
  115.         $karyawan_list = Karyawan::where('nama','LIKE','%'.$cari.'%')->orWhere('nip','LIKE','%'.$cari.'%')->orderBy('id','desc')
  116.         ->where('deleted','0')
  117.         ->paginate(3);
  118.         $jumlah_karyawan = $karyawan_list->count();//tampil jumlah data
  119.         return view('chap8.karyawan', compact('halaman','karyawan_list','jumlah_karyawan'));
  120.     }
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement