argument('email');
$password = $this->argument('password');
// 1. Поиск пользователя
$user = User::where('email', $email)->first();
if (!$user) {
$this->error("Пользователь с email {$email} не найден.");
return Command::FAILURE;
}
// 2. Генерация или использование переданного пароля
if (!$password) {
$password = Str::random(12); // Случайный пароль из 12 символов
}
// 3. Обновление пароля в базе данных
$user->password = Hash::make($password);
$user->save();
// 4. Отзыв старых токенов (опционально, для безопасности)
$user->tokens()->delete();
// 5. Создание нового токена Sanctum
$token = $user->createToken('console_auth_token')->plainTextToken;
// 6. Вывод результата в консоль
$this->info("Пароль для пользователя {$email} успешно изменен!");
$this->line("Новый пароль: {$password}");
$this->line("Новый Sanctum токен: {$token}");
return Command::SUCCESS;
}
}