%PDF- %PDF-
Direktori : /proc/self/root/usr/local/apache/htdocs/app/Http/Controllers/ |
Current File : //proc/self/root/usr/local/apache/htdocs/app/Http/Controllers/FournisseurController.php |
<?php namespace App\Http\Controllers; use App\Models\User; use Illuminate\Http\Request; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Validator; use Illuminate\Support\MessageBag; class FournisseurController extends Controller { public function index() { $Fournisseurs = User::role('fournisseur')->with('meta')->paginate(20); return view('Fournisseurs.index', compact('Fournisseurs')); } public function store(Request $request, $id=0) { $errors = new MessageBag(); $validator = Validator::make($request->all(), [ 'nbdossierf' => 'required', 'manager' => 'required', 'phone' => 'required|unique:users,phone,'.$id, 'email' => 'required|unique:users,email,'.$id, 'adress' => 'required', 'ville' => 'required', 'date_j' => 'required', 'cin' => 'required', 'ice' =>'required', 'rc' => 'required', 'upload' => 'required|file', ]); if ($validator->fails()) { return redirect(url()->previous()) ->withErrors($validator) ->withInput(); } if( User::hasMeta('nbdossierf', $request->nbdossierf)->role('fournisseur')->exists()) { $errors->add('nbdossier_exists', 'Le nombre de dossier est exists'); return redirect(url()->previous()) ->withErrors($errors) ->withInput(); } $Fournisseur = new User; if( $id ) { $Fournisseur = User::find($id); } if( $request->hasFile('upload') ) $upload = asset(Storage::url( $request->file('upload')->store('public') )); else $upload = @$request->upload; if( !$upload ) { $errors->add('failed_upload_file', __('errors.failed_upload_file')); return redirect(url()->previous()) ->withErrors($errors) ->withInput(); } $validated = $request->only(['name', 'email', 'phone']); $validated['password'] = Hash::make($request->phone); $meta = $request->only(['nbdossierf', 'manager', 'adress', 'ville','date_j', 'website','rc','ice','cin','remarques']); $meta['upload'] = $upload; $Fournisseur->fill($validated); if ($Fournisseur->save()) { $Fournisseur->assignRole('fournisseur'); $Fournisseur->saveMeta($meta); return redirect()->route('Fournisseurs')->with('message', __('messages.client_updated_success')); } else { $errors->add('unknown_error', __('errors.unknown_error')); return redirect(url()->previous()) ->withErrors($errors) ->withInput(); } return view('edit fournisseurs', ['fournisseur' => $Fournisseur]); } public function destroy(Request $request) { $data = User::role('fournisseur')->find($request->id); if (!$data || !$data->exists()) { return redirect()->route('Fournisseurs')->with('error', 'Le fournisseur n\'existe pas'); } else if (!$data->delete()) { return redirect()->route('Fournisseurs')->with('error', 'Vous ne pouvez pas supprimer le fournisseur'); } return redirect()->route('Fournisseurs')->with('status', 'Le fournisseur à été supprimer avec succès'); } public function deleteAll(Request $request) { $ids = explode(',', $request->allids); if (!User::whereIn('id', $ids)->delete()) { return redirect()->route('Fournisseurs')->with('error', 'Erreur '); } else { return redirect()->route('Fournisseurs')->with('status', 'vous avez supprimer les fournisseurs avec succès'); } } }