Files
kiri-core/Gii/Command.php
T
2021-02-22 11:50:28 +08:00

54 lines
1.2 KiB
PHP

<?php
declare(strict_types=1);
namespace Gii;
use Exception;
use Snowflake\Abstracts\Config;
use Snowflake\Abstracts\Input;
use Snowflake\Exception\ConfigException;
use Snowflake\Snowflake;
/**
* Class Command
* @package HttpServer
*/
class Command extends \Console\Command
{
public string $command = 'sw:gii';
public string $description = './snowflake sw:gii make=model table=xxxx databases=xxx' . "\v\f\t" .
'./snowflake sw:gii make=controller table=xxxx databases=xxx' . "\v\f\t" .
'./snowflake sw:gii make=task name=xxxx' . "\v\f\t" .
'./snowflake sw:gii make=interceptor name=xxxx' . "\v\f\t" .
'./snowflake sw:gii make=limits name=xxxx' . "\v\f\t" .
'./snowflake sw:gii make=middleware name=xxxx' . "\v\f\t";
/**
* @param Input $dtl
* @return array
* @throws Exception
*/
public function onHandler(Input $dtl): array
{
/** @var Gii $gii */
$gii = Snowflake::app()->get('gii');
$connections = Snowflake::app()->db;
if ($dtl->exists('databases')) {
return $gii->run($connections->get($dtl->get('databases')), $dtl);
}
$array = [];
foreach (Config::get('databases') as $key => $connection) {
$array[$key] = $gii->run($connections->get($key), $dtl);
}
return $array;
}
}