From 5f1b597ac2324f275fa026154fff2f78ea50f64c Mon Sep 17 00:00:00 2001 From: Madandola Hammed Date: Tue, 15 Oct 2019 08:12:38 +0100 Subject: [PATCH 1/3] Update GeneratorBuilderController.php Added generateFromDatabase() method --- .../GeneratorBuilderController.php | 31 ++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/src/Controllers/GeneratorBuilderController.php b/src/Controllers/GeneratorBuilderController.php index b187a89..2ec9d74 100644 --- a/src/Controllers/GeneratorBuilderController.php +++ b/src/Controllers/GeneratorBuilderController.php @@ -94,6 +94,35 @@ public function generateFromFile() return Response::json(['message' => 'Files created successfully'], 200); } + /* Crud generator for generating from DB + */ + public function generateFromDatabase() + { + $data = Request::all(); + + $prefix = $data['prefix']; + $tables = $data['tables']; + + $skipfields = $data['skipfields']; + $input = [ + '--fromTable' => ' ', + ]; + if(!empty($prefix)) + $input['--prefix'] = $prefix; + if(!empty($skipfields)) + $input['--ignoreFields'] = $skipfields; + + foreach ($tables as $key=>$table) { + # code... + $input['model'] = $table; + $input['--tableName'] = $table; + + Artisan::call($data['commandType'], $input); + //var_dump(Artisan::output()); + } + + return Response::json(['message' => 'Files created successfully'], 200); + } private function validateFields($fields) { @@ -203,4 +232,4 @@ private function prepareForeignKeyData($fields) // // return Response::json(json_decode(File::get($filePath))); // } -} \ No newline at end of file +} From 10f2a97c7653ce4f63fca3fd433676c8dc9a00c3 Mon Sep 17 00:00:00 2001 From: Ajay Makwana <30411745+ajayinfyom@users.noreply.github.com> Date: Sat, 7 Dec 2019 17:07:59 +0530 Subject: [PATCH 2/3] fix: prepare model name from database name --- .../GeneratorBuilderController.php | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/Controllers/GeneratorBuilderController.php b/src/Controllers/GeneratorBuilderController.php index 2ec9d74..1db3653 100644 --- a/src/Controllers/GeneratorBuilderController.php +++ b/src/Controllers/GeneratorBuilderController.php @@ -94,8 +94,10 @@ public function generateFromFile() return Response::json(['message' => 'Files created successfully'], 200); } - /* Crud generator for generating from DB - */ + + /** + * Crud generator for generating from DB + */ public function generateFromDatabase() { $data = Request::all(); @@ -104,21 +106,22 @@ public function generateFromDatabase() $tables = $data['tables']; $skipfields = $data['skipfields']; - $input = [ + $input = [ '--fromTable' => ' ', - ]; - if(!empty($prefix)) + ]; + if (!empty($prefix)) { $input['--prefix'] = $prefix; - if(!empty($skipfields)) + } + if (!empty($skipfields)) { $input['--ignoreFields'] = $skipfields; + } foreach ($tables as $key=>$table) { - # code... - $input['model'] = $table; + $modelName = str_replace(' ', '', Str::title(str_replace('_', ' ', Str::singular($table)))); + $input['model'] = $modelName; $input['--tableName'] = $table; Artisan::call($data['commandType'], $input); - //var_dump(Artisan::output()); } return Response::json(['message' => 'Files created successfully'], 200); From f87831a441fcf4be20a9e5826a07fe84d79d9f6d Mon Sep 17 00:00:00 2001 From: Ajay Makwana <30411745+ajayinfyom@users.noreply.github.com> Date: Sat, 7 Dec 2019 18:41:27 +0530 Subject: [PATCH 3/3] fix: import `Str` class --- src/Controllers/GeneratorBuilderController.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Controllers/GeneratorBuilderController.php b/src/Controllers/GeneratorBuilderController.php index 1db3653..bc3420a 100644 --- a/src/Controllers/GeneratorBuilderController.php +++ b/src/Controllers/GeneratorBuilderController.php @@ -10,6 +10,7 @@ use InfyOm\GeneratorBuilder\Requests\BuilderGenerateRequest; use Request; use Response; +use Illuminate\Support\Str; class GeneratorBuilderController extends Controller { @@ -116,7 +117,7 @@ public function generateFromDatabase() $input['--ignoreFields'] = $skipfields; } - foreach ($tables as $key=>$table) { + foreach ($tables as $key => $table) { $modelName = str_replace(' ', '', Str::title(str_replace('_', ' ', Str::singular($table)))); $input['model'] = $modelName; $input['--tableName'] = $table;