Ruta 'sesion' cambiada por ruta para obtener grupo de compra de usuario logeado

This commit is contained in:
Alejandro Tasistro 2025-05-18 21:44:21 -03:00
parent 61e4c341f3
commit e2c716f576
2 changed files with 20 additions and 25 deletions

View file

@ -3,7 +3,7 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\GrupoDeCompra; use App\GrupoDeCompra;
use App\Http\Resources\GrupoDeCompraReducidoResource; use App\Http\Resources\GrupoDeCompraReducido;
use App\Http\Resources\GrupoDeCompraResource; use App\Http\Resources\GrupoDeCompraResource;
use App\UserRole; use App\UserRole;
use Illuminate\Http\Request; use Illuminate\Http\Request;
@ -11,30 +11,23 @@ use Illuminate\Support\Facades\Auth;
class UserController extends Controller class UserController extends Controller
{ {
public function session(Request $request) public function grupoDeCompra(Request $request)
{ {
if (Auth::check()) { $user = Auth::user();
$user = Auth::user(); $result = [ 'grupo_de_compra' => null, ];
$grupo_de_compra = GrupoDeCompra::find($user->grupo_de_compra_id); $grupo_de_compra = GrupoDeCompra::find($user->grupo_de_compra_id);
$result = [ switch (UserRole::find($user->role_id)->nombre ?? 'error') {
'is_authenticated' => true, case 'barrio':
'role_id' => $user->role_id, $result['grupo_de_compra'] = new GrupoDeCompraReducido($grupo_de_compra);
'grupo_de_compra' => null, break;
]; case 'admin_barrio':
switch (UserRole::find($user->role_id)->nombre ?? 'error') { $result['grupo_de_compra'] = new GrupoDeCompraResource($grupo_de_compra);
case 'barrio': break;
$result['grupo_de_compra'] = new GrupoDeCompraReducidoResource($grupo_de_compra); case 'comision':
break; break;
case 'admin_barrio': default:
$result['grupo_de_compra'] = new GrupoDeCompraResource($grupo_de_compra); abort(400, 'Rol invalido.');
break;
case 'comision':
break;
default:
abort(400, 'Rol invalido');
}
return $result;
} }
return ['is_authenticated' => false]; return $result;
} }
} }

View file

@ -24,7 +24,9 @@ Auth::routes(['register' => false]);
Route::get('/', 'RouteController@home')->name('home'); Route::get('/', 'RouteController@home')->name('home');
Route::get('/session', 'UserController@session')->name('session'); Route::middleware(['auth'])->group(function () {
Route::get('/user/grupo_de_compra', 'UserController@grupoDeCompra');
});
Route::middleware(['auth', 'role:barrio'])->group( function() { Route::middleware(['auth', 'role:barrio'])->group( function() {
Route::get('/productos', 'ProductoController@index')->name('productos.index'); Route::get('/productos', 'ProductoController@index')->name('productos.index');