- Complete GGZ Ecademy Laravel backend application - RESTful API for learning products, members, filters - Authentication and authorization system - Database migrations and seeders - Custom CRUD generator commands - Email notification system - Integration with frontend applications
This commit is contained in:
44
stubs/custom/Controller.stub
Normal file
44
stubs/custom/Controller.stub
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Http\Requests\{{modelName}}Request;
|
||||
use App\Services\{{modelName}}Service;
|
||||
|
||||
class {{modelName}}Controller extends Controller
|
||||
{
|
||||
|
||||
private ${{modelNameSingularLowerCase}}Service;
|
||||
|
||||
public function __construct({{modelName}}Service ${{modelNameSingularLowerCase}}Service)
|
||||
{
|
||||
$this->{{modelNameSingularLowerCase}}Service = ${{modelNameSingularLowerCase}}Service;
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
${{modelNamePluralLowerCase}} = $this->{{modelNameSingularLowerCase}}Service->getAll();
|
||||
|
||||
return response()->json(${{modelNamePluralLowerCase}}, 201);
|
||||
}
|
||||
|
||||
public function store({{modelName}}Request $request)
|
||||
{
|
||||
${{modelNameSingularLowerCase}} = $this->{{modelNameSingularLowerCase}}Service->save($request->all());
|
||||
|
||||
return response()->json(${{modelNameSingularLowerCase}}, 201);
|
||||
}
|
||||
|
||||
public function show($id)
|
||||
{
|
||||
${{modelNameSingularLowerCase}} = $this->{{modelNameSingularLowerCase}}Service->get($id);
|
||||
|
||||
return response()->json(${{modelNameSingularLowerCase}});
|
||||
}
|
||||
|
||||
public function destroy($id)
|
||||
{
|
||||
$this->{{modelNameSingularLowerCase}}Service->delete($id);
|
||||
return response()->json(null, 204);
|
||||
}
|
||||
}
|
||||
16
stubs/custom/Model.stub
Normal file
16
stubs/custom/Model.stub
Normal file
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
|
||||
namespace App\Repositories;
|
||||
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class {{modelName}} extends Model
|
||||
{
|
||||
|
||||
use SoftDeletes;
|
||||
|
||||
protected $dates = ['deleted_at'];
|
||||
|
||||
protected $guarded = ['id'];
|
||||
}
|
||||
18
stubs/custom/Request.stub
Normal file
18
stubs/custom/Request.stub
Normal file
@@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class {{modelName}}Request extends FormRequest
|
||||
{
|
||||
public function authorize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public function rules()
|
||||
{
|
||||
return [];
|
||||
}
|
||||
}
|
||||
53
stubs/custom/Service.stub
Normal file
53
stubs/custom/Service.stub
Normal file
@@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
namespace App\Services;
|
||||
|
||||
use App\Repositories\{{modelName}};
|
||||
|
||||
class {{modelName}}Service
|
||||
{
|
||||
private ${{modelNameSingularLowerCase}}Repository;
|
||||
|
||||
public function __construct({{modelName}} ${{modelNameSingularLowerCase}}Repository)
|
||||
{
|
||||
$this->{{modelNameSingularLowerCase}}Repository = ${{modelNameSingularLowerCase}}Repository;
|
||||
}
|
||||
|
||||
public function save(array $data)
|
||||
{
|
||||
if (isset($data['id'])) {
|
||||
${{modelNameSingularLowerCase}} = $this->{{modelNameSingularLowerCase}}Repository->findOrFail($data['id']);
|
||||
${{modelNameSingularLowerCase}}->update($data);
|
||||
} else {
|
||||
${{modelNameSingularLowerCase}} = $this->{{modelNameSingularLowerCase}}Repository->create($data);
|
||||
}
|
||||
|
||||
return ${{modelNameSingularLowerCase}};
|
||||
}
|
||||
|
||||
public function delete($id)
|
||||
{
|
||||
${{modelNameSingularLowerCase}} = $this->{{modelNameSingularLowerCase}}Repository->findOrFail($id);
|
||||
${{modelNameSingularLowerCase}}->delete();
|
||||
}
|
||||
|
||||
public function get($id)
|
||||
{
|
||||
return $this->{{modelNameSingularLowerCase}}Repository->findOrFail($id);
|
||||
}
|
||||
|
||||
public function getAll()
|
||||
{
|
||||
return $this->{{modelNameSingularLowerCase}}Repository->all();
|
||||
}
|
||||
|
||||
public function with(array $children)
|
||||
{
|
||||
return $this->{{modelNameSingularLowerCase}}Repository->with($children)->get();
|
||||
}
|
||||
|
||||
public function getOneWith($id, array $children)
|
||||
{
|
||||
return $this->{{modelNameSingularLowerCase}}Repository->with($children)->findOrFail($id);
|
||||
}
|
||||
}
|
||||
15
stubs/custom/Validator.stub
Normal file
15
stubs/custom/Validator.stub
Normal file
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
|
||||
namespace App\Validators;
|
||||
|
||||
class {{modelName}}Validator extends AbstractValidator
|
||||
{
|
||||
public function rules()
|
||||
{
|
||||
$this->rules = [
|
||||
|
||||
];
|
||||
|
||||
return $this->rules;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user