Skip to content

Commit

Permalink
Generate Models, Resource... #13
Browse files Browse the repository at this point in the history
  • Loading branch information
3x1io committed Jun 22, 2024
1 parent 7f212c1 commit 696e158
Show file tree
Hide file tree
Showing 9 changed files with 52 additions and 52 deletions.
2 changes: 1 addition & 1 deletion src/Services/Concerns/GenerateCasts.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ trait GenerateCasts
private function generateCasts()
{
$this->injectString(
$this->moduleName ? module_path($this->moduleName) ."/App/Models/{$this->modelName}.php" : app_path("Models/{$this->modelName}.php"),
$this->moduleName ? module_path($this->moduleName) ."/app/Models/{$this->modelName}.php" : app_path("Models/{$this->modelName}.php"),
'protected $fillable =',
$this->stubPath . "casts.stub",
[
Expand Down
42 changes: 21 additions & 21 deletions src/Services/Concerns/GenerateController.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,29 +9,29 @@ trait GenerateController
{
private function generateController(bool $isForce = false)
{
$filePath = $this->moduleName ? module_path($this->moduleName) ."/App/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php");
$filePath = $this->moduleName ? module_path($this->moduleName) ."/app/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php");
if($isForce){
if(File::exists($filePath)){
File::delete($filePath);
}
}
$this->generateStubs(
$this->stubPath . "controller.stub",
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php"),
[
"name" => "{$this->modelName}Controller",
"model" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Models\\".$this->modelName : "\\App\\Models\\".$this->modelName,
"model" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Models\\".$this->modelName : "\\App\\Models\\".$this->modelName,
"title" => $this->modelName,
"table" => str_replace('_', '-', $this->tableName),
"validation" => $this->generateRules(),
"validationEdit" => $this->generateRules(true),
"requestNamespace" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Http\\Requests\\{$this->modelName}\\" : "\\App\\Http\\Requests\\Admin\\{$this->modelName}\\",
"tableClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Tables\\".$this->modelName."Table" : "\\App\\Tables\\".$this->modelName."Table",
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\App\\Http\\Controllers": "App\\Http\\Controllers\\Admin",
"requestNamespace" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Http\\Requests\\{$this->modelName}\\" : "\\App\\Http\\Requests\\Admin\\{$this->modelName}\\",
"tableClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Tables\\".$this->modelName."Table" : "\\App\\Tables\\".$this->modelName."Table",
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\Http\\Controllers": "App\\Http\\Controllers\\Admin",
"modulePath" => $this->moduleName ? Str::replace('_', '-', Str::lower($this->moduleName))."::" : "admin."
],
[
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Controllers/" : app_path("Http/Controllers/Admin")
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Controllers/" : app_path("Http/Controllers/Admin")
]
);
}
Expand All @@ -40,19 +40,19 @@ private function generateControllerForRequest()
{
$this->generateStubs(
$this->stubPath . "controller-request.stub",
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php"),
[
"name" => "{$this->modelName}Controller",
"model" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Models\\".$this->modelName : "\\App\\Models\\".$this->modelName,
"model" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Models\\".$this->modelName : "\\App\\Models\\".$this->modelName,
"title" => $this->modelName,
"table" => str_replace('_', '-', $this->tableName),
"requestNamespace" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Http\\Requests\\{$this->modelName}\\" : "\\App\\Http\\Requests\\Admin\\{$this->modelName}\\",
"tableClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Tables\\".$this->modelName."Table" : "\\App\\Tables\\".$this->modelName."Table",
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\App\\Http\\Controllers": "App\\Http\\Controllers\\Admin",
"requestNamespace" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Http\\Requests\\{$this->modelName}\\" : "\\App\\Http\\Requests\\Admin\\{$this->modelName}\\",
"tableClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Tables\\".$this->modelName."Table" : "\\App\\Tables\\".$this->modelName."Table",
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\Http\\Controllers": "App\\Http\\Controllers\\Admin",
"modulePath" => $this->moduleName ? Str::replace('_', '-', Str::lower($this->moduleName))."::" : "admin."
],
[
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Controllers/" : app_path("Http/Controllers/Admin")
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Controllers/" : app_path("Http/Controllers/Admin")
]
);
}
Expand All @@ -61,23 +61,23 @@ private function generateControllerForBuilder()
{
$this->generateStubs(
$this->stubPath ."FormBuilder/BuilderController.stub",
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Controllers/{$this->modelName}Controller.php" : app_path("Http/Controllers/Admin/{$this->modelName}Controller.php"),
[
"name" => "{$this->modelName}Controller",
"model" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Models\\".$this->modelName : "\\App\\Models\\".$this->modelName,
"model" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Models\\".$this->modelName : "\\App\\Models\\".$this->modelName,
"title" => $this->modelName,
"table" => str_replace('_', '-', $this->tableName),
"validation" => $this->generateRules(),
"validationEdit" => $this->generateRules(true),
"formClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Forms\\{$this->modelName}Form" : "\\App\\Forms\\{$this->modelName}Form",
"requestNamespace" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Http\\Requests\\{$this->modelName}\\" : "\\App\\Http\\Requests\\Admin\\{$this->modelName}\\",
"FormNamespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\App\\Forms\\{$this->modelName}Form" : "App\\Forms\\{$this->modelName}Form",
"tableClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Tables\\".$this->modelName."Table" : "\\App\\Tables\\".$this->modelName."Table",
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\App\\Http\\Controllers": "App\\Http\\Controllers\\Admin",
"formClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Forms\\{$this->modelName}Form" : "\\App\\Forms\\{$this->modelName}Form",
"requestNamespace" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Http\\Requests\\{$this->modelName}\\" : "\\App\\Http\\Requests\\Admin\\{$this->modelName}\\",
"FormNamespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\Forms\\{$this->modelName}Form" : "App\\Forms\\{$this->modelName}Form",
"tableClass" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Tables\\".$this->modelName."Table" : "\\App\\Tables\\".$this->modelName."Table",
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\Http\\Controllers": "App\\Http\\Controllers\\Admin",
"modulePath" => $this->moduleName ? Str::replace('_', '-', Str::lower($this->moduleName))."::" : "admin."
],
[
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Controllers/" : app_path("Http/Controllers/Admin")
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Controllers/" : app_path("Http/Controllers/Admin")
]
);
}
Expand Down
14 changes: 7 additions & 7 deletions src/Services/Concerns/GenerateFolders.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@ private function generateFolders(): void
{
if($this->moduleName){
$folders = [
module_path($this->moduleName) ."/App/Http/Controllers/",
module_path($this->moduleName) ."/App/resources/",
module_path($this->moduleName) ."/App/Http/Requests/",
module_path($this->moduleName) ."/App/Http/Requests/{$this->modelName}",
module_path($this->moduleName) ."/App/Models/",
module_path($this->moduleName) ."/app/Http/Controllers/",
module_path($this->moduleName) ."/app/resources/",
module_path($this->moduleName) ."/app/Http/Requests/",
module_path($this->moduleName) ."/app/Http/Requests/{$this->modelName}",
module_path($this->moduleName) ."/app/Models/",
module_path($this->moduleName) . "/resources/views/" . str_replace('_', '-', $this->tableName),
module_path($this->moduleName) . "/routes",
module_path($this->moduleName)."/App/Tables",
module_path($this->moduleName)."/App/Forms",
module_path($this->moduleName)."/app/Tables",
module_path($this->moduleName)."/app/Forms",
];
}
else {
Expand Down
6 changes: 3 additions & 3 deletions src/Services/Concerns/GenerateFormView.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,15 @@ private function generateFormBuilderClass()
{
$this->generateStubs(
$this->stubPath ."FormBuilder/FormClass.stub",
$this->moduleName ? module_path($this->moduleName) . "/App/Forms/{$this->modelName}Form.php" : app_path("Forms/{$this->modelName}Form.php"),
$this->moduleName ? module_path($this->moduleName) . "/app/Forms/{$this->modelName}Form.php" : app_path("Forms/{$this->modelName}Form.php"),
[
"name" => "{$this->modelName}Form",
"route" => str_replace('_', '-', $this->tableName),
"cols" => $this->generateFormElements(),
"namespace" => $this->moduleName ? "Modules\\" . $this->moduleName . "\\App\\Forms" : "App\\Forms",
"namespace" => $this->moduleName ? "Modules\\" . $this->moduleName . "\\Forms" : "App\\Forms",
],
[
$this->moduleName ? module_path($this->moduleName) . "/App/Forms" : app_path("Forms")
$this->moduleName ? module_path($this->moduleName) . "/app/Forms" : app_path("Forms")
]
);
}
Expand Down
6 changes: 3 additions & 3 deletions src/Services/Concerns/GenerateJsonResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,17 @@ private function generateJsonResource(): void
$folders = [];
$resourceName = Str::of($this->tableName)->replace('_', ' ')->camel()->ucfirst()->toString() . 'Resource';
if($this->moduleName){
$folders[] = module_path($this->moduleName) . "/App/resources";
$folders[] = module_path($this->moduleName) . "/app/Http/Resources";
}
else {
$folders[] = app_path("Http/Resources");
}

$this->generateStubs(
$this->stubPath . "json.stub",
$this->moduleName ? module_path($this->moduleName) . "/App/resources/" . $resourceName . '.php' : app_path("Http/Resources/" . $resourceName . '.php'),
$this->moduleName ? module_path($this->moduleName) . "/app/resources/" . $resourceName . '.php' : app_path("Http/Resources/" . $resourceName . '.php'),
[
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\App\\resources" : "App\\Http\\Resources",
"namespace" => $this->moduleName ? "Modules\\".$this->moduleName."\\Http\\Resources" : "App\\Http\\Resources",
"name" => $resourceName,
"fields" => $this->generateFields(),
"table" => str_replace('_', '-', $this->tableName),
Expand Down
2 changes: 1 addition & 1 deletion src/Services/Concerns/GenerateMenus.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ trait GenerateMenus
private function generateMenus()
{
$this->injectString(
$this->moduleName ? module_path($this->moduleName) ."/App/Providers/{$this->moduleName}ServiceProvider.php" : app_path("Providers/AppServiceProvider.php"),
$this->moduleName ? module_path($this->moduleName) ."/app/Providers/{$this->moduleName}ServiceProvider.php" : app_path("Providers/AppServiceProvider.php"),
$this->moduleName ? '$this->loadMigrationsFrom(module_path($this->moduleName, \'Database/migrations\'));' : 'public function boot(): void',
$this->stubPath . "menu.stub",
[
Expand Down
16 changes: 8 additions & 8 deletions src/Services/Concerns/GenerateRequest.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,31 +12,31 @@ private function generateRequest(): void
{
$this->generateStubs(
$this->stubPath . "request.stub",
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Requests/{$this->modelName}/{$this->modelName}StoreRequest.php" : app_path("Http/Requests/Admin/{$this->modelName}/{$this->modelName}StoreRequest.php"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Requests/{$this->modelName}/{$this->modelName}StoreRequest.php" : app_path("Http/Requests/Admin/{$this->modelName}/{$this->modelName}StoreRequest.php"),
[
"name" => "{$this->modelName}StoreRequest",
"model" => $this->modelName,
"validation" => $this->generateRules(),
"namespace" => $this->moduleName ? "Modules\\{$this->moduleName}\\App\\Http\\Requests\\{$this->modelName}" : "App\\Http\\Requests\\Admin\\{$this->modelName}",
"namespace" => $this->moduleName ? "Modules\\{$this->moduleName}\\Http\\Requests\\{$this->modelName}" : "App\\Http\\Requests\\Admin\\{$this->modelName}",
],
[
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Requests": app_path("Http/Requests/Admin"),
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Requests/{$this->modelName}": app_path("Http/Requests/Admin/{$this->modelName}"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Requests": app_path("Http/Requests/Admin"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Requests/{$this->modelName}": app_path("Http/Requests/Admin/{$this->modelName}"),
]
);

$this->generateStubs(
$this->stubPath . "request.stub",
$this->moduleName ? module_path($this->moduleName)."/App/Http/Requests/{$this->modelName}/{$this->modelName}UpdateRequest.php" : app_path("Http/Requests/Admin/{$this->modelName}/{$this->modelName}UpdateRequest.php"),
$this->moduleName ? module_path($this->moduleName)."/app/Http/Requests/{$this->modelName}/{$this->modelName}UpdateRequest.php" : app_path("Http/Requests/Admin/{$this->modelName}/{$this->modelName}UpdateRequest.php"),
[
"name" => "{$this->modelName}UpdateRequest",
"model" => $this->modelName,
"validation" => $this->generateRules(true),
"namespace" => $this->moduleName ? "Modules\\{$this->moduleName}\\App\\Http\\Requests\\{$this->modelName}" : "App\\Http\\Requests\\Admin\\{$this->modelName}",
"namespace" => $this->moduleName ? "Modules\\{$this->moduleName}\\Http\\Requests\\{$this->modelName}" : "App\\Http\\Requests\\Admin\\{$this->modelName}",
],
[
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Requests": app_path("Http/Requests/Admin"),
$this->moduleName ? module_path($this->moduleName) ."/App/Http/Requests/{$this->modelName}": app_path("Http/Requests/Admin/{$this->modelName}"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Requests": app_path("Http/Requests/Admin"),
$this->moduleName ? module_path($this->moduleName) ."/app/Http/Requests/{$this->modelName}": app_path("Http/Requests/Admin/{$this->modelName}"),
]
);
}
Expand Down
8 changes: 4 additions & 4 deletions src/Services/Concerns/GenerateRoutes.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ private function generateRoutes()
$this->stubPath . "route.stub",
$this->moduleName ? module_path($this->moduleName) . "/routes/web.php" : base_path("routes/web.php"),
[
"name" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Http\\Controllers\\{$this->modelName}Controller" : "App\\Http\\Controllers\\Admin\\{$this->modelName}Controller",
"name" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Http\\Controllers\\{$this->modelName}Controller" : "App\\Http\\Controllers\\Admin\\{$this->modelName}Controller",
"table" => str_replace('_', '-', $this->tableName)
],
[
$this->moduleName ? module_path($this->moduleName) . "/Routes" : base_path("routes")
$this->moduleName ? module_path($this->moduleName) . "/routes" : base_path("routes")
],
true
);
Expand All @@ -26,11 +26,11 @@ private function generateRoutes()
$this->stubPath . "api-route.stub",
$this->moduleName ? module_path($this->moduleName) . "/routes/api.php" : base_path("routes/api.php"),
[
"name" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\App\\Http\\Controllers\\{$this->modelName}Controller" : "App\\Http\\Controllers\\Admin\\{$this->modelName}Controller",
"name" => $this->moduleName ? "\\Modules\\".$this->moduleName."\\Http\\Controllers\\{$this->modelName}Controller" : "App\\Http\\Controllers\\Admin\\{$this->modelName}Controller",
"table" => str_replace('_', '-', $this->tableName)
],
[
$this->moduleName ? module_path($this->moduleName) . "/Routes" : base_path("routes")
$this->moduleName ? module_path($this->moduleName) . "/routes" : base_path("routes")
],
true
);
Expand Down
Loading

0 comments on commit 696e158

Please sign in to comment.