write crud for rahdaran
This commit is contained in:
@@ -2,7 +2,10 @@
|
|||||||
|
|
||||||
namespace App\Http\Controllers\V3;
|
namespace App\Http\Controllers\V3;
|
||||||
|
|
||||||
|
use App\Facades\DataTable\DataTableFacade;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Http\Requests\V3\Rahdaran\StoreRequest;
|
||||||
|
use App\Http\Requests\V3\Rahdaran\UpdateRequest;
|
||||||
use App\Http\Traits\ApiResponse;
|
use App\Http\Traits\ApiResponse;
|
||||||
use App\Models\Rahdaran;
|
use App\Models\Rahdaran;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
@@ -11,6 +14,48 @@ use Illuminate\Http\Request;
|
|||||||
class RahdaranController extends Controller
|
class RahdaranController extends Controller
|
||||||
{
|
{
|
||||||
use ApiResponse;
|
use ApiResponse;
|
||||||
|
public function index(Request $request): JsonResponse
|
||||||
|
{
|
||||||
|
$allowedFilters = ['*'];
|
||||||
|
$allowedSortings = ['*'];
|
||||||
|
|
||||||
|
$query = Rahdaran::query();
|
||||||
|
$data = DataTableFacade::run(
|
||||||
|
$query,
|
||||||
|
$request,
|
||||||
|
allowedFilters: $allowedFilters,
|
||||||
|
allowedSortings: $allowedSortings);
|
||||||
|
return response()->json($data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function store(StoreRequest $request): JsonResponse
|
||||||
|
{
|
||||||
|
Rahdaran::query()->create([
|
||||||
|
'name' =>$request->name,
|
||||||
|
'code' =>$request->code,
|
||||||
|
]);
|
||||||
|
return $this->successResponse();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function show(Rahdaran $rahdaran): JsonResponse
|
||||||
|
{
|
||||||
|
return $this->successResponse($rahdaran);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function update(UpdateRequest $request, Rahdaran $rahdaran): JsonResponse
|
||||||
|
{
|
||||||
|
$rahdaran->update([
|
||||||
|
'name' =>$request->name,
|
||||||
|
'code' =>$request->code,
|
||||||
|
]);
|
||||||
|
return $this->successResponse();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function destroy(Rahdaran $rahdaran): JsonResponse
|
||||||
|
{
|
||||||
|
$rahdaran->delete();
|
||||||
|
return $this->successResponse();
|
||||||
|
}
|
||||||
|
|
||||||
public function list(): JsonResponse
|
public function list(): JsonResponse
|
||||||
{
|
{
|
||||||
|
|||||||
29
app/Http/Requests/V3/Rahdaran/StoreRequest.php
Normal file
29
app/Http/Requests/V3/Rahdaran/StoreRequest.php
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests\V3\Rahdaran;
|
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
|
class StoreRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'name' => 'required|string|max:255',
|
||||||
|
'code' => 'required|string|max:255',
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
29
app/Http/Requests/V3/Rahdaran/UpdateRequest.php
Normal file
29
app/Http/Requests/V3/Rahdaran/UpdateRequest.php
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests\V3\Rahdaran;
|
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
|
class UpdateRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'name' => 'required|string|max:255',
|
||||||
|
'code' => 'required|string|max:255',
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -179,6 +179,11 @@ Route::prefix('rahdaran')
|
|||||||
->name('rahdaran.')
|
->name('rahdaran.')
|
||||||
->controller(RahdaranController::class)
|
->controller(RahdaranController::class)
|
||||||
->group(function () {
|
->group(function () {
|
||||||
|
Route::get('/', 'index')->name('index');
|
||||||
|
Route::post('/store', 'store')->name('store');
|
||||||
|
Route::get('/{roadItemsProject}', 'show')->name('show');
|
||||||
|
Route::post('/{roadItemsProject}', 'update')->name('update');
|
||||||
|
Route::post('/delete/{roadItemsProject}', 'destroy')->name('destroy');
|
||||||
Route::get('/list', 'list')->name('list');
|
Route::get('/list', 'list')->name('list');
|
||||||
Route::get('/search', 'search')->name('search');
|
Route::get('/search', 'search')->name('search');
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user