%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/apache/htdocs/app/Http/Controllers/
Upload File :
Create Path :
Current File : //usr/local/apache/htdocs/app/Http/Controllers/CommercialController.php

<?php

namespace App\Http\Controllers;

use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\MessageBag;

class CommercialController extends Controller
{
    public function index(Request $request){
        
        $commercials = User::role('commercial')->paginate(100);
        return view('Employees.Commercials.index', compact('commercials'));
    }

    public function store(Request $request, $id = 0){
        
        $errors = new MessageBag();

        $validator = Validator::make($request->all(), [
          
            'phone' => 'required|unique:users,phone,'.$id,
            'email' => 'required|unique:users,email,'.$id,
            'cin' => 'required',
        ]);

        if ($validator->fails()) {
            return redirect(url()->previous())
                ->withErrors($validator)
                ->withInput();
        }

        $Commercial = new User;

        if( $id ) {
            
            $Commercial = User::find($id);
        }

        $validated = $request->only(['name', 'email', 'phone']);

        $validated['password'] = Hash::make($request->password);

        $meta = $request->only(['cin']);

        $Commercial->fill($validated);

        if ($Commercial->save()) {
            $Commercial->assignRole('commercial');
            $Commercial->saveMeta($meta);
            
            return redirect()->route('commercials')->with('message', __('vous avez ajouter avec succès'));
        
        } else {
            
            $errors->add('unknown_error', __('errors.unknown_error'));
            
            return redirect(url()->previous())
                ->withErrors($errors)
                ->withInput();
        }


    }

    public function destroy(Request $request)
    {
        $data = User::role('commercial')->find($request->id);

        if (!$data || !$data->exists()) {

            return redirect()->route('commercials')->with('error', 'N\'existe pas');
        
        } else if (!$data->delete()) {

            return redirect()->route('commercials')->with('error', 'Vous ne pouvez pas supprimer !');
        }

        return redirect()->route('commercials')->with('status', 'vous avez supprimer avec succès');
    }

    public function deleteAll(Request $request)
    {

        $ids = explode(',', $request->allids);

        if (!User::whereIn('id', $ids)->delete()) {

            return  redirect()->route('commercials')->with('error', 'Erreur ');
        
        } else {

            return  redirect()->route('commercials')->with('status', 'vous avez supprimer toutes les commercials avec succès');
        }
    }
}

Zerion Mini Shell 1.0