Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers;
- use Illuminate\Http\Request;
- use App\karyawan;
- use Validator;
- use Storage;
- use App\Http\Requests\KaryawanRequest;
- class KaryawanController extends Controller
- {
- /**
- * Display a listing of the resource.
- *
- * @return \Illuminate\Http\Response
- */
- public function index()
- {
- //$karyawan_list = Karyawan::all()->sortBy('id');//sortir data
- $karyawan_list=Karyawan::orderBy('id','desc')
- ->where('deleted','0')
- ->paginate(3);
- $jumlah_karyawan = $karyawan_list->count();//tampil jml data
- return view('chap8.karyawan', compact('halaman','karyawan_list','jumlah_karyawan'));
- }
- /**
- * Show the form for creating a new resource.
- *
- * @return \Illuminate\Http\Response
- */
- public function create()
- {
- return view('chap8.create', compact('halaman'));
- }
- /**
- * Store a newly created resource in storage.
- *
- * @param \Illuminate\Http\Request $request
- * @return \Illuminate\Http\Response
- */
- public function uploadFoto(KaryawanRequest $request){
- $foto = $request->file('foto');
- $ext = $foto->getClientOriginalExtension();
- if($request->file('foto')->isValid()){
- $namaFoto = date('YmdHis').".".$ext;
- $upload_path = 'fotoupload';
- $request->file('foto')->move($upload_path,$namaFoto);
- return $namaFoto;
- }
- return false;
- }
- public function store(KaryawanRequest $request)
- {
- /*$karyawan = $request->all();
- $karyawan=new \App\Karyawan;
- $karyawan->nip= $request->nip;
- $karyawan->nama= $request->nama;
- $karyawan->tgl_lahir= $request->tgl_lahir;
- $karyawan->gender= $request->gender;
- $karyawan->save();
- return redirect('karyawan');*/
- $input=$request->all();
- //upload foto
- if ($request->hasFile('foto')){
- $input['foto']=$this->uploadFoto($request);
- }
- /*$validator=Validator::make($input,[
- 'nip'=>'required|numeric|unique:employees,nip',
- 'nama'=>'required|string|max:35',
- 'tgl_lahir'=>'required|date',
- 'gender'=>'required|in:L,P',
- ]);
- if($validator->fails()){
- return redirect('karyawan/create')
- ->withInput()
- ->withErrors($validator);
- }*/
- //insert data
- $input['deleted']= 0;
- Karyawan::create($input);
- return redirect('karyawan');
- }
- /**
- * Display the specified resource.Z
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function show($id)
- {
- $karyawan=Karyawan::findOrFail($id);
- return view('chap8.show',compact('halaman','karyawan'));
- }
- /**
- * Show the form for editing the specified resource.
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function edit($id)
- {
- $karyawan=Karyawan::findOrFail($id);
- return view('chap8.edit', compact('karyawan'));
- }
- /**
- * Update the specified resource in storage.
- *
- * @param \Illuminate\Http\Request $request
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function search(Request $request)
- {
- $cari = $request['cari'];
- $hasil_nama = Karyawan::where('nama','like','%'.$cari.'%')->orWhere('nip','like','%'.$cari.'%')->paginate(3);
- $t_nama = $hasil_nama->count();
- $jumlah_karyawan = $t_nama;
- $karyawan_list = $hasil_nama;
- return view('chap8.karyawan',compact('halaman','karyawan_list','jumlah_karyawan'));
- }
- private function HapusFoto(Karyawan $karyawan)
- {
- $exist=Storage::disk('foto')->exists($karyawan->foto);
- if (isset($karyawan->foto)&&$exists){
- $deleted = Storage::disk('foto')->delete($karyawan->foto);
- if ($deleted){
- return true;
- }
- return false;
- }
- }
- public function update(Karyawan $karyawan, Request $request)
- {
- /* $karyawan=Karyawan::findOrFail($id);
- $karyawan->update($request->all());
- return redirect('karyawan'); */
- $input=$request->all();
- $validation = Validator::make($input,['nip'=>'required|string|size:5',
- 'nama'=>'required|string|max:35|min:5',
- 'tgl_lahir'=>'required|date',
- 'gender'=>'required|in:L,P',
- 'foto'=>'sometimes|image|max:300|mimes:jpg,jpeg,bmp,png,JPG,JPEG,PNG',]);
- if ($validation->passes())
- {
- //cek ada foto apa ga?
- if ($request->hasFile('foto')) {
- //hapus foto lama
- $this->HapusFoto($karyawan);
- $ext = $request['foto']->getClientOriginalExtension();
- $namaFoto = date('YmdHis').".".$ext;
- $upload_path = 'fotoupload';
- $request->file('foto')->move($upload_path,$namaFoto);
- $input['foto'] = $namaFoto;
- }
- $update = Karyawan::find($input['id']);
- $update->update($input);
- return redirect('karyawan');
- //upload foto baru
- //$input['foto']=$this->uploadFoto($request);
- }
- /*$validation = Validator::make($input,[
- 'nip'=>'required|string|size:5|unique:employees,nip',
- 'nama'=>'required|string|max:35',
- 'tgl_lahir'=>'required|date',
- 'gender'=>'required|in:L,P',
- ]);
- if($validation->passes())
- {
- $karyawan = Karyawan::find($id);*/
- //$karyawan->update($input);
- //return redirect('karyawan');
- /*}
- return back()
- ->withInput()
- ->withErrors($validation);*/
- return back()->withInput()->withErrors($validation);
- }
- /**
- * Remove the specified resource from storage.
- *
- * @param int $id
- * @return \Illuminate\Http\Response
- */
- public function destroy(Karyawan $karyawan)
- {
- //$karyawan=Karyawan::findOrFail($id);
- //$this->HapusFoto($karyawan);
- $user = Karyawan::find($karyawan->id);
- $user->delete();
- return redirect('karyawan');
- }
- /*public function search(Request $request)
- {
- $cari = $request->get('search');
- $karyawan_list = Karyawan::where('nama','LIKE','%'.$cari.'%')-> orWhere ('nip','LIKE','%'.$cari.'%')->paginate(1);
- $jumlah_karyawan = $karyawan_list->count();
- return view('chap8.karyawan', compact('halaman','karyawan_list','jumlah_karyawan'));
- }*/
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement