Lae/app/Console/Commands/Admin/Delete.php

64 lines
1.4 KiB
PHP
Raw Permalink Normal View History

2022-11-17 11:52:23 +00:00
<?php
namespace App\Console\Commands\Admin;
use App\Models\Admin;
use Illuminate\Console\Command;
2023-01-10 13:42:27 +00:00
use Symfony\Component\Console\Command\Command as CommandAlias;
2022-11-17 11:52:23 +00:00
class Delete extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'admin:delete';
/**
* The console command description.
*
* @var string
*/
2023-02-19 16:09:53 +00:00
protected $description = '删除一个管理员。';
2022-11-17 11:52:23 +00:00
/**
* Execute the console command.
*/
2023-01-10 13:42:27 +00:00
public function handle(): int
2022-11-17 11:52:23 +00:00
{
// 获取管理员ID
2023-02-19 16:09:53 +00:00
$id = $this->ask('请输入管理员 ID');
// 搜索
$admin = Admin::find($id);
if (is_null($admin)) {
$this->error('管理员不存在。');
return CommandAlias::FAILURE;
}
// 输出信息
$this->table(['ID', '名称', '邮箱'], [
[
'id' => $admin->id,
'name' => $admin->name,
'email' => $admin->email,
],
]);
// 确认
if (! $this->confirm('确认删除管理员吗?')) {
return CommandAlias::FAILURE;
}
2022-11-17 11:52:23 +00:00
// 删除管理员
Admin::destroy($id);
// 输出信息
$this->info('管理员删除成功。');
2023-01-30 16:14:07 +00:00
2023-01-10 13:42:27 +00:00
return CommandAlias::SUCCESS;
2022-11-17 11:52:23 +00:00
}
}