Quitado auth middleware de la ruta, ahora devuelve booleano con dato sobre estado de auth + actualizado para guardar el grupo de compra entero y no solo la id
This commit is contained in:
parent
a485994a72
commit
61e4c341f3
3 changed files with 31 additions and 32 deletions
|
@ -8,32 +8,33 @@ use App\Http\Resources\GrupoDeCompraResource;
|
||||||
use App\UserRole;
|
use App\UserRole;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use App\User;
|
|
||||||
use Illuminate\Support\Facades\Log;
|
|
||||||
|
|
||||||
class UserController extends Controller
|
class UserController extends Controller
|
||||||
{
|
{
|
||||||
public function session(Request $request)
|
public function session(Request $request)
|
||||||
{
|
{
|
||||||
$user = Auth::user();
|
if (Auth::check()) {
|
||||||
$role = UserRole::find($user->role_id);
|
$user = Auth::user();
|
||||||
$grupo_de_compra = GrupoDeCompra::find($user->grupo_de_compra_id);
|
$grupo_de_compra = GrupoDeCompra::find($user->grupo_de_compra_id);
|
||||||
$result = [
|
$result = [
|
||||||
'role_id' => $user->role_id,
|
'is_authenticated' => true,
|
||||||
'grupo_de_compra' => null,
|
'role_id' => $user->role_id,
|
||||||
];
|
'grupo_de_compra' => null,
|
||||||
switch ($role->nombre ?? 'error') {
|
];
|
||||||
case 'barrio':
|
switch (UserRole::find($user->role_id)->nombre ?? 'error') {
|
||||||
$result['grupo_de_compra'] = new GrupoDeCompraReducidoResource($grupo_de_compra);
|
case 'barrio':
|
||||||
break;
|
$result['grupo_de_compra'] = new GrupoDeCompraReducidoResource($grupo_de_compra);
|
||||||
case 'admin_barrio':
|
break;
|
||||||
$result['grupo_de_compra'] = new GrupoDeCompraResource($grupo_de_compra);
|
case 'admin_barrio':
|
||||||
break;
|
$result['grupo_de_compra'] = new GrupoDeCompraResource($grupo_de_compra);
|
||||||
case 'comision':
|
break;
|
||||||
break;
|
case 'comision':
|
||||||
default:
|
break;
|
||||||
abort(400, 'Rol invalido');
|
default:
|
||||||
|
abort(400, 'Rol invalido');
|
||||||
|
}
|
||||||
|
return $result;
|
||||||
}
|
}
|
||||||
return $result;
|
return ['is_authenticated' => false];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
16
resources/js/store/modules/session.js
vendored
16
resources/js/store/modules/session.js
vendored
|
@ -1,23 +1,23 @@
|
||||||
const state = {
|
const state = {
|
||||||
|
isAuthenticated: false,
|
||||||
role_id: null,
|
role_id: null,
|
||||||
grupo_de_compra_id: null,
|
grupo_de_compra: null,
|
||||||
};
|
};
|
||||||
|
|
||||||
const mutations = {
|
const mutations = {
|
||||||
SET_SESSION(state, { role_id, grupo_de_compra_id }) {
|
SET_SESSION(state, { role_id, grupo_de_compra, is_authenticated }) {
|
||||||
|
state.isAuthenticated = is_authenticated;
|
||||||
state.role_id = role_id;
|
state.role_id = role_id;
|
||||||
state.grupo_de_compra_id = grupo_de_compra_id;
|
state.grupo_de_compra = grupo_de_compra;
|
||||||
|
|
||||||
|
console.log(state);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const actions = {
|
const actions = {
|
||||||
async fetchSession({ commit }) {
|
async fetchSession({ commit }) {
|
||||||
const response = await axios.get('/session');
|
const response = await axios.get('/session');
|
||||||
console.log(response.data);
|
commit('SET_SESSION', response.data);
|
||||||
commit('SET_SESSION', {
|
|
||||||
role_id: response.data.role_id,
|
|
||||||
grupo_de_compra_id: response.data.grupo_de_compra_id,
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -24,9 +24,7 @@ Auth::routes(['register' => false]);
|
||||||
|
|
||||||
Route::get('/', 'RouteController@home')->name('home');
|
Route::get('/', 'RouteController@home')->name('home');
|
||||||
|
|
||||||
Route::middleware('auth')->group(function () {
|
Route::get('/session', 'UserController@session')->name('session');
|
||||||
Route::get('/session', 'UserController@session')->name('session');
|
|
||||||
});
|
|
||||||
|
|
||||||
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');
|
||||||
|
|
Loading…
Add table
Reference in a new issue