Advertisement
sandytesar

KaryawanController.php

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