Christian Dacid Sullca Puma 2022-11-04 01:13:09 -05:00
commit 7de36a3d96
4 changed files with 43 additions and 6 deletions

View File

@ -38,7 +38,7 @@ class LoginController extends Controller
return response()->json(['error' => 'Credenciales de google invalidas.'], 422); return response()->json(['error' => 'Credenciales de google invalidas.'], 422);
} }
$user = $user = User::where("email", "=", $userProvider->email)->first(); $user = $user = User::where("email", "=", $userProvider->email)->where("estado",true)->first();
if (isset($user)) { if (isset($user)) {
$userCreated = User::updateOrCreate( $userCreated = User::updateOrCreate(
@ -74,7 +74,7 @@ class LoginController extends Controller
} else { } else {
return response()->json([ return response()->json([
"status" => 0, "status" => 0,
"message" => "Usuario no registrado en el sistema", "message" => "Usuario no registrado o deshabilitado",
], 404); ], 404);
} }
} }

View File

@ -47,7 +47,7 @@ class UserController extends Controller
"password" => "required" "password" => "required"
]); ]);
$user = User::where("email", "=", $request->email)->first(); $user = User::where("email", "=", $request->email)->where("estado",true)->first();
if (isset($user->id)) { if (isset($user->id)) {
if (Hash::check($request->password, $user->password)) { if (Hash::check($request->password, $user->password)) {
@ -66,7 +66,7 @@ class UserController extends Controller
} else { } else {
return response()->json([ return response()->json([
"status" => 0, "status" => 0,
"message" => "Usuario no registrado", "message" => "Usuario no registrado o deshabilitado",
], 404); ], 404);
} }
} }
@ -92,6 +92,18 @@ class UserController extends Controller
]); ]);
} }
public function listUserHabilitados(){
$users = User::whereNotNull("name")->where("estado",true)->get();
foreach ($users as $user) {
$user->rol=User::find($user->id)->roles[0]->name;
}
return response([
"status" => 1,
"msg" => "!Lista de usuarios no nulos y habilitados",
"data" => $users,
]);
}
public function logout() public function logout()
{ {
auth()->user()->tokens()->delete(); auth()->user()->tokens()->delete();
@ -99,4 +111,27 @@ class UserController extends Controller
"message" => "Sesion cerrada" "message" => "Sesion cerrada"
]); ]);
} }
public function updateRoleEstado(Request $request){
$request->validate([
"id"=>"exists:users",
"role" => "present|nullable|numeric|min:1|max:2",
"estado" => "present|nullable|boolean"
]);
if(auth()->user()->isAdmin()){
$user = User::find($request->id);
$user->update(['estado' =>$request->estado]);
$user->roles()->sync([$request->role]);
return response([
"status" => 1,
"msg" => "!Update user",
"data" => $user,
]);
}
else{
return response()->json([
"status" => 0,
"message" => "No eres administrador",
], 404);
}
}
} }

View File

@ -20,6 +20,7 @@ class User extends Authenticatable
'lastname', 'lastname',
'email', 'email',
'password', 'password',
'estado',
]; ];
public $timestamps = false; public $timestamps = false;

View File

@ -38,14 +38,15 @@ Route::get('estandares', [EstandarController::class, 'listEstandarValores']);
//CAMBIAR ESTO //CAMBIAR ESTO
Route::get('user', [UserController::class, 'listUser']); //Route::get('user', [UserController::class, 'listUser']);
Route::get('user', [UserController::class, 'listUserHabilitados']);
Route::get('plan/export/{id}', [PlanController::class, 'exportPlan'])->where('id', '[0-9]+'); Route::get('plan/export/{id}', [PlanController::class, 'exportPlan'])->where('id', '[0-9]+');
Route::middleware("auth:sanctum")->group(function () { Route::middleware("auth:sanctum")->group(function () {
//rutas auth //rutas auth
Route::get('user-profile', [UserController::class, 'userProfile']); Route::get('user-profile', [UserController::class, 'userProfile']);
Route::get('update', [UserController::class, 'updateRoleEstado']);
Route::get('logout', [UserController::class, 'logout']); Route::get('logout', [UserController::class, 'logout']);
Route::post('register', [UserController::class, 'register']); Route::post('register', [UserController::class, 'register']);