salut j'ai un probleme avec l'authentification de mon site laravel, don voici le code , en fait la redirection envers le homecontroller est fait mais elle n'est pas attaqué par la route vendors/home, veuillez m'aidez
voici mon homecontroller : <?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

class HomeController extends Controller
{
public function __construct()
{
$this->middleware('auth');
}

public function index(Request $request)
{
    $user = Auth::user();

    // Si l'utilisateur a des rôles associés
    if ($user->roles && $user->roles->isNotEmpty()) {
        $roleId = $user->roles->first()->id;

        return $this->redirectToRoleDashboard($roleId);
    }

    // Aucun rôle trouvé
    Auth::logout();
    return redirect('/login')->with('status', 'Aucun rôle associé à ce compte.');
}

private function redirectToRoleDashboard(int $roleId)
{
    switch ($roleId) {
        case 1:
            return redirect('/dashboard')->with('status', 'Bienvenue sur le panel d\'administration.');
        case 2:
            return redirect('/home')->with('status', 'Bienvenue sur votre espace utilisateur.');
        case 3:
            return redirect('/vendors/home')->with('status', 'Bienvenue sur votre espace fournisseur d\'articles.');
        default:
            return redirect('/')->with('status', 'Rôle non reconnu.');
    }
}

}
et voici mon Logincontroller :<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;

class LoginController extends Controller
{
/* -------------------------------------------------------------------------- Login Controller This controller handles authenticating users for the application and redirecting them to your home screen. The controller uses a trait to conveniently provide its functionality to your applications.
*/

use AuthenticatesUsers;

/**
 * Where to redirect users after login.
 *
 * @var string
 */

// protected $redirectTo = RouteServiceProvider::HOME;
public function authenticated(Request $request)
{
$roleId = (int)$request->input('role_id');

$user=Auth::user();

dd($user);

// Sécurité : Vérifie que l'utilisateur a bien ce rôle
if ($user->roles->contains('id', $roleId)) {
    switch ($roleId) {
        case 1:
            return redirect('/dashboard')->with('status', 'Bienvenue sur le panel d\'administration.');
        break;
        case 2:
        return redirect('/home')->with('status', 'Bienvenue sur votre espace utilisateur.');
        break;
        case 3:
        return redirect('/vendors/home')->with('status', 'Bienvenue sur votre espace fournisseur.');
        default:
            return redirect('/')->with('status', 'Rôle non reconnu.');
    }
}

// L'utilisateur connecté n'a pas ce rôle, on déconnecte
Auth::logout();
return redirect('/login')->with('status', 'Vous n\'avez pas accès à ce rôle.');

}

/**
 * Create a new controller instance.
 *
 * @return void
 */
public function __construct()
{
    $this->middleware('guest')->except('logout');
}

}
et voici mon web.php : <?php

use App\Models\Post;
use App\Models\User;

use App\Http\Controllers\PaymentController;
use App\Models\Order;
use App\Models\Photo;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Admin\OrderController;
use App\Http\Controllers\Admin\ProductController;
use App\Http\Controllers\Frontend\CartController;
use App\Http\Controllers\Frontend\UserController;
use App\Http\Controllers\Admin\AdminUserController;
use App\Http\Controllers\Admin\CategoryController;
use App\Http\Controllers\Admin\DashboardController;
use App\Http\Controllers\Admin\UnitController;
use App\Http\Controllers\Frontend\CheckoutController;
use App\Http\Controllers\Frontend\FrontendController;
use App\Http\Controllers\Frontend\WishlistController;
use App\Http\Controllers\Admin\AuthorController;
use App\Http\Controllers\Admin\EditorController;
use App\Http\Controllers\Admin\CollectionController;
use App\Http\Controllers\Admin\BookController;
use App\Http\Controllers\Admin\SchoolSubjetController;
use App\Http\Controllers\Admin\LevelController;
use App\Http\Controllers\VendorController;

/*</div> -------------------------------------------------------------------------- Web Routes Here is where you can register web routes for your application. These routes are loaded by the RouteServiceProvider within a group which contains the "web" middleware group. Now create something great!

/
/

Route::get('/', function () {
return view('welcome');
});*/
Route::get('welcome', [FrontendController::class,'index']);
Route::get('/', [FrontendController::class,'index']);
Route::get('/category',[FrontendController::class,'category']);
Route::get('/view-category/{slug}',[FrontendController::class,'viewcategory']);
Route::get('category/{cate_slug}/{prod_slug}',[FrontendController::class,'viewproduct']);
Auth::routes();

Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');

Route::post('add-cart',[CartController::class,'add_cart']);
Route::post('/delete-cart-item',[CartController::class,'deleteCartItem']);
Route::post('update-cart-item',[CartController::class,'UpdateCartData']);
Route::post('delete-wishlist-item',[WishlistController::class,'deleteWishListItem']);
Route::post('place-order',[CheckoutController::class,'place_order']);
Route::post('add-to-wishlist',[WishlistController::class,'addToWishlist']);
Route::get('load-cart-data',[CartController::class,'load_cart_data']);
Route::get('load-wishlist-data',[WishlistController::class,'load_wishlist_data']);

Route::middleware(['auth'])->group(function(){
Route::get('cart',[CartController::class,'cart']);
Route::get('wishlist',[WishlistController::class,'index']);

Route::get('checkout',[CheckoutController::class,'index']);
Route::get('my-orders',[UserController::class,'index']);
Route::get('/view-order/{id}',[UserController::class,'view_order']);

});

/*Route::group(['middleware'=>['auth','isAdmin']],function(){

Route::get('/dashboard',function(){
     return view('admin.dashboard');
});

});*/

Aucune réponse