From 4eca8c46c5e07ec2d1d928779f06536b7a0a0836 Mon Sep 17 00:00:00 2001 From: mzl Date: Tue, 22 Jul 2025 11:34:47 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=94=9F=E6=88=90=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/utils/scaffold/Generate.php | 36 ++++++++++++++++---------- app/controller/IndexController.php | 22 ++++++++-------- 2 files changed, 33 insertions(+), 25 deletions(-) diff --git a/app/common/utils/scaffold/Generate.php b/app/common/utils/scaffold/Generate.php index 7cf52ac..6735997 100644 --- a/app/common/utils/scaffold/Generate.php +++ b/app/common/utils/scaffold/Generate.php @@ -26,11 +26,11 @@ class Generate // 模板路径 $templateDir = __DIR__ . '/templates/'; - $controllerPath = __DIR__ . "/../../../{$this->options['controller']['module']}/controller/".ucfirst($this->options['controller']['name'])."Controller.php"; - $servicePath = __DIR__ . "/../../../{$this->options['service']['module']}/service/".ucfirst($this->options['service']['name'])."Service.php"; - $logicPath = __DIR__ . "/../../../{$this->options['logic']['module']}/logic/".ucfirst($this->options['logic']['name'])."Logic.php"; - $modelPath = __DIR__ . "/../../../{$this->options['model']['module']}/model/".ucfirst($this->options['model']['name']).".php"; - $validatePath = __DIR__ . "/../../../{$this->options['validate']['module']}/validate/".ucfirst($this->options['validate']['name'])."Validate.php"; + $controllerPath = __DIR__ . "/../../../{$this->options['controller']['module']}/controller/".$this->rName($this->options['controller']['name'])."Controller.php"; + $servicePath = __DIR__ . "/../../../{$this->options['service']['module']}/service/".$this->rName($this->options['service']['name'])."Service.php"; + $logicPath = __DIR__ . "/../../../{$this->options['logic']['module']}/logic/".$this->rName($this->options['logic']['name'])."Logic.php"; + $modelPath = __DIR__ . "/../../../{$this->options['model']['module']}/model/".$this->rName($this->options['model']['name']).".php"; + $validatePath = __DIR__ . "/../../../{$this->options['validate']['module']}/validate/".$this->rName($this->options['validate']['name'])."Validate.php"; // 创建目录(如果不存在) $fs->mkdir(__DIR__ . "/../../../{$this->options['controller']['module']}/controller"); @@ -86,32 +86,32 @@ class Generate case 'controller': $content = str_replace('{{controllerModule}}', $this->options['controller']['module'], $content); $content = str_replace('{{serviceModule}}', $this->options['service']['module'], $content); - $content = str_replace('{{serviceName}}', ucfirst($this->options['service']['name']), $content); - $content = str_replace('{{controllerName}}', ucfirst($this->options['controller']['name']), $content); + $content = str_replace('{{serviceName}}', $this->rName($this->options['service']['name']), $content); + $content = str_replace('{{controllerName}}', $this->rName($this->options['controller']['name']), $content); break; case 'service': $content = str_replace('{{serviceModule}}', $this->options['service']['module'], $content); $content = str_replace('{{validateModule}}', $this->options['validate']['module'], $content); - $content = str_replace('{{validateName}}', ucfirst($this->options['validate']['name']), $content); + $content = str_replace('{{validateName}}', $this->rName($this->options['validate']['name']), $content); $content = str_replace('{{modelModule}}', $this->options['model']['module'], $content); - $content = str_replace('{{modelName}}', ucfirst($this->options['model']['name']), $content); - $content = str_replace('{{serviceName}}', ucfirst($this->options['service']['name']), $content); + $content = str_replace('{{modelName}}', $this->rName($this->options['model']['name']), $content); + $content = str_replace('{{serviceName}}', $this->rName($this->options['service']['name']), $content); break; case 'logic': $content = str_replace('{{logicModule}}', $this->options['logic']['module'], $content); $content = str_replace('{{modelModule}}', $this->options['model']['module'], $content); - $content = str_replace('{{modelName}}', ucfirst($this->options['model']['name']), $content); - $content = str_replace('{{logicName}}', ucfirst($this->options['logic']['name']), $content); + $content = str_replace('{{modelName}}', $this->rName($this->options['model']['name']), $content); + $content = str_replace('{{logicName}}', $this->rName($this->options['logic']['name']), $content); break; case 'model': $content = str_replace('{{modelModule}}', $this->options['model']['module'], $content); - $content = str_replace('{{modelName}}', ucfirst($this->options['model']['name']), $content); + $content = str_replace('{{modelName}}', $this->rName($this->options['model']['name']), $content); $content = str_replace('{{table}}', $this->options['table'], $content); $content = str_replace('{{fillable}}', $this->fillableFields(), $content); break; case 'validate': $content = str_replace('{{validateModule}}', $this->options['validate']['module'], $content); - $content = str_replace('{{validateName}}', ucfirst($this->options['validate']['name']), $content); + $content = str_replace('{{validateName}}', $this->rName($this->options['validate']['name']), $content); break; } @@ -153,6 +153,14 @@ class Generate echo "删除已存在文件: {$path} \n"; } } + + /** + * 设置名称 + */ + public function rName($name = '') + { + return ucfirst(camelize($name)); + } } /** diff --git a/app/controller/IndexController.php b/app/controller/IndexController.php index 125ff1f..6ca6eae 100644 --- a/app/controller/IndexController.php +++ b/app/controller/IndexController.php @@ -71,26 +71,26 @@ class IndexController { $options = [ 'controller' => [ - 'module' => 'admin', - 'name' => 'systems' + 'module' => 'inquiry', + 'name' => 'inquiry_log' ], 'model' => [ - 'module' => 'common', - 'name' => 'systems' + 'module' => 'inquiry', + 'name' => 'inquiry_log' ], 'service' => [ - 'module' => 'admin', - 'name' => 'systems' + 'module' => 'inquiry', + 'name' => 'inquiry_log' ], 'logic' => [ - 'module' => 'common', - 'name' => 'systems' + 'module' => 'inquiry', + 'name' => 'inquiry_log' ], 'validate' => [ - 'module' => 'common', - 'name' => 'systems' + 'module' => 'inquiry', + 'name' => 'inquiry_log' ], - 'table' => 'systems' + 'table' => 'inquiry_log' ]; $result = (new Generate($options))->doGenerate();